Verificando a inclusão de endereço IP em uma sub-rede CIDR
Para determinar se um endereço IPv4 se enquadra em uma sub-rede CIDR especificada, um método simples envolve o seguintes etapas:
Conversão para números inteiros longos:
Derivação da máscara de sub-rede:
Comparação bit a bit:
Implementação:
A seguinte função PHP encapsula esta lógica:
function cidr_match($ip, $range)
{
list ($subnet, $bits) = explode('/', $range);
if ($bits === null) {
$bits = 32;
}
$ip = ip2long($ip);
$subnet = ip2long($subnet);
$mask = -1
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3