[Cascavel-pm] Net::Telnet

Marco A P D´Andrade mda em embratel.net.br
Terça Maio 4 13:18:19 CDT 2004


Adriano,

Vc não seguiu a recomendação do log de depuração.

Em meu teste rápido de ontem eu percebi que a execução do "show conf" 
excedia o timeout, e percebi que estava utilizando a string de prompt 
incorreta.

Opcoes que recomendo que vc utilize para depurar:
    Dump_Log
    Errmode
       na opção return, em vez de die, vc recebe a parte dos dados 
finalizada.

Um dos problemas pode ser seu prompt recebido de forma diferente...


    new - create a new Net::Telnet object
             $obj = Net::Telnet->new([Binmode    => $mode,]
                                     [Cmd_remove_mode => $mode,]
                                     [Dump_Log   => $filename,]
                                     [Errmode    => $errmode,]
                                     [Fhopen     => $filehandle,]
                                     [Host       => $host,]
                                     [Input_log  => $file,]
                                     [Input_record_separator => $char,]
                                     [Option_log => $file,]
                                     [Output_log => $file,]
                                     [Output_record_separator => $char,]
                                     [Port       => $port,]
                                     [Prompt     => $matchop,]
                                     [Telnetmode => $mode,]
                                     [Timeout    => $secs,]);
                                                                                                    


Dentro da documentação do módulo, especificamente da função "cmd" vc ve 
os comentarios:

                                                                                                    

         Use "dump_log()" to debug when this method keeps
         timing-out and you don't think it should.
                                                                                                    

         Consider using a combination of "print()" and
         "waitfor()" as an alternative to this method when it
         doesn't do what you want, e.g. the command you run
         prompts for input.
                                          (que vc está usando) 
                                                               



Sds,
Marco Antonio


vivan em dim.fm.usp.br wrote:

>Oi,
>
>Fiz as seguintes mudancas:
>
>#!/usr/bin/perl
>use Net::Telnet ();
>
>########## LOGIN E SENHA ##############
>$login="burps";
>$password="bleargh";
>#######################################
>
>$t = new Net::Telnet (Timeout => 10,
>                      Prompt => '/rtb0101\>/');
>$t->open("10.22.4.15");
>
>$t->waitfor(/Username: /);
>$t->print ($login);
>$t->waitfor(/Password: /);
>$t->print ($password);
>
>@lines = $t->cmd("who");
>print @lines;
>$t->close;
>
>Com isso, consegui autenticar no router, mas nao consigo passar e executar
>o comando... Alguma sugestao? Para dar o sh conf preciso ser ena, mas para
>simplificar um pouco, estou tentando apenas um who.
>
>Tks.
>
>
>  
>
>>Adriano,
>>
>>Eu utilizei um script similar ao seu para efetuar um teste e meu unico
>>problema foi o timeout.
>>
>>Para depurar aconselho verificar as opções de log e dump no manual.
>>Outra coisa a corrigir é seu parametro de Prompt, pois vc nao necessita
>>de escape para a formacao usada (aspas simples).
>>
>>Sds,
>>Marco Antonio
>>
>>vivan em dim.fm.usp.br wrote:
>>
>>    
>>
>>>Oi,
>>>
>>>Alguem pode me dar um help no modulo Net::Telnet? Estou tentando
>>>utiliza-lo para acessar um router, mas sem sucesso... Onde estou errando?
>>>
>>>#!/usr/bin/perl
>>>use Net::Telnet ();
>>>
>>>########## LOGIN E SENHA ##############
>>>$login="burps";
>>>$password="bleargh";
>>>#######################################
>>>
>>>$t = new Net::Telnet (Timeout => 10,
>>>                     Prompt => '/rtb0101\>/');
>>>$t->open("10.22.4.15");
>>>
>>>$t->login($login, $passwd);
>>>@lines = $t->cmd("sh conf");
>>>print @lines;
>>>
>>>
>>>Tks,
>>>Adriano.
>>>
>>>--------------------------
>>>Esta mensagem foi verificada
>>>pelo sistema de antivírus DIM e
>>>acredita-se estar livre de Virus.
>>>Virus data file v4356 created May 02 2004
>>>
>>>_______________________________________________
>>>Cascavel-pm mailing list
>>>Cascavel-pm em mail.pm.org
>>>http://cascavel.pm.org/mailman/listinfo/cascavel-pm
>>>
>>>
>>>
>>>
>>>      
>>>
>>_______________________________________________
>>Cascavel-pm mailing list
>>Cascavel-pm em mail.pm.org
>>http://cascavel.pm.org/mailman/listinfo/cascavel-pm
>>
>>--------------------------
>>Esta mensagem foi verificada
>>pelo sistema de antivírus DIM e
>>acredita-se estar livre de Virus.
>>Virus data file v4356 created May 02 2004
>>
>>    
>>
>
>
>--------------------------
>Esta mensagem foi verificada
>pelo sistema de antivírus DIM e
>acredita-se estar livre de Virus.
>Virus data file v4356 created May 02 2004
>
>_______________________________________________
>Cascavel-pm mailing list
>Cascavel-pm em mail.pm.org
>http://cascavel.pm.org/mailman/listinfo/cascavel-pm
>
>
>  
>




Mais detalhes sobre a lista de discussão Cascavel-pm