我有这样一个IP:12.12.12.12
我正在遍历不同的 IP 范围(12.12.12.0/24(示例))格式,并尝试查看 IP 是否在该范围内。
我尝试了各种方法,例如 inet_addr 和比较,但我似乎无法获取它。
是否有捷径可寻?我正在使用 Windows。
最佳答案
只是测试是否:
(ip & netmask) == (range & netmask)
您可以通过 CIDR 参数 range/netbits
确定网络掩码,如下所示:
uint32_t netmask = ~(~uint32_t(0) >> netbits);
关于c++ - IP 属于 CIDR 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7559803/