LIB-ZC, 一个跨平台(Linux)平台通用C/C++扩展库, DNS/IP/MAC

LIB-ZC, 一个跨平台(Linux)平台通用C/C++扩展库, DNS/IP/MAC

DNS/IP相关的方法:

  • 主要是为了解决跨平台的问题
  • 其次对一些常见操作做了封装
  • 命名空间: zcc

获取域名/主机名的ip地址

// 获取域名/主机名的ip地址, 存储到addrs
int get_hostaddr(const char *host, std::vector<std::string> &addrs);
inline int get_hostaddr(const std::string &host, std::vector<std::string> &addrs);
// 获取本机ip地址
int get_localaddr(std::vector<std::string> &addrs);

IP地址转换

// ip 地址转 int
int get_ipint(const char *ipstr);
inline int get_ipint(const std::string &ipstr);
// 获得ip地址的网段地址
int get_network(int ip, int masklen);
// 获得ip地址的掩码
int get_netmask(int masklen);
// 获得ip地址的广播地址
int get_broadcast(int ip, int masklen);
// 指定掩码, 最小的ip
int get_ip_min(int ip, int masklen);
// 指定掩码, 最大的ip
int get_ip_max(int ip, int masklen);
// 是不是 ip
bool is_ip(const char *ip);
inline bool is_ip(const std::string &ip);
// 是否保留地址
int is_intranet(int ip);
int is_intranet2(const char *ip);
// ip 转字符串
char *get_ipstring(int ip, char *ipstr);
std::string get_ipstring(int ip);

获取本机mac地址

int get_mac_address(std::vector<std::string> &mac_list);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值