mysql – 检查IP是否在子网中
发布时间:2020-12-11 23:34:39 所属栏目:MySql教程 来源:网络整理
导读:我有一个表A,其中IP地址(ipNumeric)存储为无符号整数,表B包含子网(subnetNumeric): INET_NTOA(ipNumeric) = 192.168.0.1INET_NTOA(subnetNumeric) = 192.168.0.0 我想检查一下这个IP是否是子网的成员. 子网是A,B和C类. 这是否可以在MySQL中的合理时间内进行
我有一个表A,其中IP地址(ipNumeric)存储为无符号整数,表B包含子网(subnetNumeric):
我想检查一下这个IP是否是子网的成员. 子网是A,B和C类. 这是否可以在MySQL中的合理时间内进行,或者子网范围是否应该预先计算? 最佳答案 当然,这是可行的.我们的想法是,我们通过将最高有效位设置为1来计运算符网掩码,这与子网类所规定的一样多.对于C类,那就是
然后,用你拥有的IP地址和子网掩码;如果IP在子网内,结果应该等于子网地址 – 标准网络内容.所以我们最终得到:
更新:是的,有必要知道网络类或子网掩码(这是等效信息).如果您没有此信息,请考虑如何处理子网为X.Y.0.0的情况.这是X.Y.0.0 / 16还是X.Y.0.0 / 8,其中第三个八位字节恰好是0?没办法知道. 如果您确实知道子网掩码,则可以将查询写为
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |