验证 CIDR 子网中的 IP 地址是否包含
要确定 IPv4 地址是否属于指定的 CIDR 子网,一种简单的方法涉及以下步骤:
转换为长整数:
子网掩码派生:
按位比较:
实现:
下面的 PHP 函数封装了这个逻辑:
<code class="php">function cidr_match($ip, $range) { list ($subnet, $bits) = explode('/', $range); if ($bits === null) { $bits = 32; } $ip = ip2long($ip); $subnet = ip2long($subnet); $mask = -1 << (32 - $bits); $subnet &= $mask; return ($ip & $mask) == $subnet; }</code>
以上是如何验证 CIDR 子网中的 IP 地址是否包含?的详细内容。更多信息请关注PHP中文网其他相关文章!