Acceso a routers CISCO
Publicado: 2006-08-11 09:19 @430
Yo tuve que hacer eso muchas veces estos años pasados. Lo solución fue ejecutar el comando ping al servidor y ver si ha respondido al paquete. Eso, con los backticks o con qx() puedes ejecutar el comando ping y obtener el resultado. Luego ver si ha respondido o no.
Vamos, básicamente sería algo así:
siendo:
* -W 4 indica que esperamos un máximo de 4 segundos
* -c 1, que enviamos un solo paquete ICMP
* la ip indicada es la de nuestro servidor
El resultado de ejecutar el comando ping será:
* ==0: El servidor ha respondido
* <>0: No ha respondido
En CPAN tienes el módulo Net::Ping, que hace justo eso:
Vamos, básicamente sería algo así:
- Código: Seleccionar todo
$ping = system("ping -q -W 4 -c 1 217.127.89.51 > /dev/null");
print $ping;
siendo:
* -W 4 indica que esperamos un máximo de 4 segundos
* -c 1, que enviamos un solo paquete ICMP
* la ip indicada es la de nuestro servidor
El resultado de ejecutar el comando ping será:
* ==0: El servidor ha respondido
* <>0: No ha respondido
En CPAN tienes el módulo Net::Ping, que hace justo eso:
- Código: Seleccionar todo
use Net::Ping;
$servidor = "271.127.89.50";
$p = Net::Ping->new();
print "$servidor está vivo.\n" if $p->ping($servidor);
$p->close();