|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Vladimir Gerasimenko 2:5074/6 18 Feb 2003 10:36:30 To : All Subject : статистика модемов на Cisco -------------------------------------------------------------------------------- Имеется Cisco 2600, tac+ia 0.96pre9.3 под FreeBSD, модемы IDC 2814. Хотелось бы снимать статистику и АОH. из конфига tacacs запускается внешний скрипт по приходу stop записи: === tac_plus.conf === group=users { maxsess=1 acct_stop "/path/scripts/get_stat.pl" === Cut === это сам скрипт: === get_stat.pl === #!/usr/bin/perl $username = "user"; $passwd = "password"; $stat_command = "at%s"; $logfile="/path/modems.log"; $date=`/bin/date +'%Y/%m/%d %T'`; chomp($date); $i=0; while (<>) { $acct{$i}=$_; chomp($acct{$i}); $i++; } $tty=$acct{2}; ($async) = $tty =~ /(\d+)/; $port_rt=2000+$async; $user=$acct{0}; $host=$acct{1}; ($ip) = $acct{9} =~ /addr=(\S+)/; system("/bin/echo '$date $user $ip $tty' >> $logfile"); #$port_rt = "2033"; $err = "return"; use Net::Telnet (); $cisco = new Net::Telnet (Telnetmode => 1, Errmode => $err); while ($n < 6) { ++$n; sleep(1); $ok = $cisco->open(Host => $host, Port => $port_rt); last if ( $ok == 1 ); } exit(256) if ( $ok != 1 ); sleep(1); $cisco->print($username); $cisco->print($passwd); sleep(2); $cisco->print($stat_command); sleep(2); $stat = $cisco->get; open (LOG,">> ".$logfile) || die "Can't open log file ".$logfile; print LOG $stat; close (LOG); exit; === Cut === Происходит следующее: Если указать явно в скрипте конкретный порт на _свободный_ модем, то он работает. Если же это происходит сразу после stop записи, то user и password на cisco проходит без проблем, а статистики никакой в логах нет. Подскажите, Pls что это может быть? Или может у кого есть готовое решение этой проблемы? Vladimir --- GoldED+/BSD 1.1.4.7 * Origin: ... (2:5074/6) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/14483e51d4b5.html, оценка из 5, голосов 10
|