Nov. 5th, 2009

vlad_rulez: (Default)
У меня на Укртелекоме загадочный глюк - раз в 2-3 часа на стороне модемного пула в ДСЛ-соединении отваливается гейт и днс сервер, что приводит к потере доступа в интернет.  При этом само DSL соединение между модемом и пулом продолжает работать как ни в чем не бывало и модем не пытается соединится вновь.
Меня не очень устроило то, что я не могу оставить закачку или торрент и пойти по своим делам, поэтому я написал небольшой скрипт на PERL который заходит на модем телнетом, пингует сервер 4.2.2.4 и ребутит модем, если это надо.

#!/usr/bin/perl
use Net::Telnet;
my @array = ();
my $nonet = 0;
$telnet = new Net::Telnet ( Timeout=>50,
 Errmode=>'die',
 Prompt => '/[\$%#E<gt>] $/');
 $telnet->open('МОЙ_IP');
 $telnet->login('admin', 'МОЙ_ПАРОЛЬ');
 @array = $telnet->cmd(String =>'ping -c 10 4.2.2.4');
 $nonet = $#array;
if ( $nonet != 14 )
  {
    print "rebooting modem \n";
    $telnet->cmd('reboot');
    $telnet->close;
  }
 my $string = "100% packet loss";
 $nonet = index($array[$#array-1], $string, 1);
if ( $nonet > 0 )
  {
    print "rebooting modem \n";
    $telnet->cmd('reboot');
    $telnet->close;
  }
$telnet->close;

Profile

vlad_rulez: (Default)
vlad_rulez

January 2017

S M T W T F S
1 2345 6 7
8 9 1011 12 1314
15 1617 18192021
22232425262728
293031    

Style Credit

Expand Cut Tags

No cut tags
Page generated Oct. 5th, 2025 10:18 am
Powered by Dreamwidth Studios