Validar máscara e IP inicial da rede com PHP

Publicado por Anderson J. de Souza em 22/09/2008

[ Hits: 8.855 ]

Blog: http://anderjs.blogspot.com/

 


Validar máscara e IP inicial da rede com PHP



Três funções em PHP simples que verificam se o IP passado é um IP de início da rede ou não. Particularmente eu aconselho criar uma classe para trabalhar com isto!

function fill0($x){
   return str_pad($x,8,'0',STR_PAD_LEFT);
}
function ip2bin($x){
   preg_match_all("/[0-9]{1,3}/","$x",$a);
   $b=array_map("decbin",$a[0]);
   $c=array_map("fill0",$b);
   return ("$c[0]$c[1]$c[2]$c[3]");
}
function checkNet($ip,$mask){
   $b=ip2bin($mask);
   if (!preg_match("/^1*0*$/",$b)) return "Máscara inválida";
   $a=ip2bin($ip);
   if (($a | $b) !== $b) return "Ip de rede inválido";
}

// Executando //
$x=checkNet($a="128.0.0.0",$b="128.0.1.0");
echo ($x?$x:"Rede Válida")."\n";

A função checkNet retorna string de erro ou nada para tudo válido.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Monitorando portas de hosts com PHP e MySQL

[Resolvido] Monitoramento CACTI com SPINE

Liberando acesso ao Moodle para a rede externa

Executar um script remotamente via ssh

Exportando lista de MSN

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts