如何快速判断两个ip地址是否属于同一子网
能够口算,或者简单的运算,而不是用IP和子网掩码进行完全运算来判断,或者有简单的法则也好。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
能够口算,或者简单的运算,而不是用IP和子网掩码进行完全运算来判断,或者有简单的法则也好。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
这应该口算不了. 同一子网是按二进制的前n位1来判断, 这个咋口算?
这个必须结合ip地址和掩码来计算的。
不过可以定义简单的工具来比较,因为子网比较,其实用二进制位比较是最快的,对于IPV4来说,IP是一个32bit无符号整数,2个IP同一子网意味着,两个IP高N掩码位相等。
注意对于2个
IP/mark
,是存在A是B同子网,B与A不同子网的。比如
A=192.168.0.1/24 ,对应子网有效IP是 192.168.0.1-192.168.0.254
B=192.168.0.129/25 对应子网有效IP是 192.168.0.129-192.168.0.254
对A来说,B属于它所在子网,对B来说,A不属于它所在的子网。