Экспресс-тестер сетевых проблем для Linux :)

Сен 14th, 2011 | Posted by | Filed under internet, Linux, PC, Software, Unix and BSD

Иногда включаешь комп, выходишь в инет… Вернее, пытаешься выйти, потому что ничего не работает. Специально для такого случая написал экспресс-тест сетевых проблем, который при старте системы пингует заданные хосты и формирует маленький html файл, открывающийся в одной из закладок браузера, показывая налицие линка до определённых хостов в сети.
Вот код:
———— начало ————
#!/usr/bin/perl
open (IN,»test.list»);
open (HTML,»>test.html»);
print HTML «<html><head><title>IP NET Statistics</title></head>\n»;
print HTML «<body>\n<center><b>IP NET Statistics</b>\n»;
print HTML «<table border=1>\n<tr><td><b>Server name</b></td><td><b>Server IP</b></td><td><b>Status</b></td></tr>\n»;
foreach $in(<IN>){
chomp $in;
($ip,$name) = split(/ /,$in,2);
$stat=`if ping -c 1 -s 1 -W 1 $ip 1>/dev/null; then echo UP; else echo DOWN; fi`;
chomp $stat;
print HTML «<tr><td>$name</td><td>$ip</td><td>$stat</td></tr>\n»;
}
print HTML «</table>(c)</center\n</body></html>\n»;
close (HTML);
close (IN);
exit 0;
———— конец ————
Программа читает файл ./test.list, имеющий следующий синтаксис:
ip_или_host_name{ПРОБЕЛ}ОПИСАНИЕ С ЛЮБЫМ ЧИСЛОМ ПРОБЕЛОВ
Например:
———— начало ————
1.2.3.4 DNS провайдера 1
5.6.7.8 DNS провайдера 1
9.10.11.12 IP шлюза
13.14.15.16 Ещё какой-нибудь адрес в интернете
8.8.8.8 Google DNS (внешний адрес)
———— конец ————
В результате в браузере мы увидим небольшую табличку с результатами проверки.

 

No comments yet.