Estoy haciendo un script para que lea las IP de un fichero y muestre en un fichero las IP que responden a un ping. Lo que ocurre es que aunque el PC al que hago ping esté encendido, el script me dice que no responde al ping. ¿Sabéis cómo solucionarlo?
Using perl Syntax Highlighting
- #!/usr/bin/perl
- use Net::Ping;
- open(INFILE, "<", "servers") or die("cannot open infile: $!");
- my @ip_array = <INFILE>;
- close(INFILE);
- open(OUTFILE, ">", "ping_output") or die("unable to write output: $!");
- $i=0;
- chomp(@ip_array);
- $p = Net::Ping->new();
- foreach(@ip_array)
- {
- if($_ =~ /\d+.\d+.\d+.\d+/)
- {
- if($p->ping($&))
- {
- print OUTFILE ("$ip_array[$i] is responding to ping.\n");
- }
- else
- {
- print OUTFILE ("$ip_array[$i] is NOT responding to ping.\n");
- }
- }
- $i=$i+1;
- }
- close(OUTFILE);
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4