Quiero un script en Perl que pueda verificar si mi Internet es estable, no estable o no tengo conexión a Internet.
yo sueloRed::Pingscript pero la respuesta es " You are connected to the internet.
", no verifica la conexión a Internet en 30 segundos si es estable, no estable o no hay conexión a Internet. Simplemente responda " You are connected to the internet.
". Pero la verdad mi conexión a internet es inestable. Cada 3 segundos conectar - desconectar.
Este es el guión
$ping = Net::Ping->new("icmp");
$ping->port_number("80");
if ( $ping->ping( 'www.google.com', '10' ) ) {
print "You are connected to the internet.\n";
}
else {
print "You are not connected to the internet.\n";
}
$ping->close();
Quiero usarlo wget
como probador, pero no sé cómo escribirlo en Perl. Mi proyecto está escrito en Perl.
Respuesta1
Su guión parece bastante cerca de funcionar. Esto es lo que obtuve después de algunos ajustes:
#!/usr/bin/perl
use warnings;
use strict;
use Net::Ping;
my $ping = Net::Ping->new("tcp");
$ping->port_number("80");
if ( $ping->ping( 'www.google.com', '10' ) ) {
print "You are connected to the internet.\n";
} else {
print "You are not connected to the internet.\n";
}
$ping->close();
Notas:
- icmp ping requiere privilegios de root y podría ser bloqueado por Google o alguien intermedio algún día, así que quédese con tcp ping. Nadie va a bloquear eso.
use strict
yuse warnings
son buenos hábitos de Perl para tener- necesitas
use
el modulo