Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Re: Telnet into Cisco switches

by primus (Scribe)
on Jul 11, 2003 at 15:32 UTC ( [id://273410]=note: print w/replies, xml ) Need Help??


in reply to Re: Telnet into Cisco switches
in thread Telnet into Cisco switches

thanks for the replies, but i am running into a login error... i tried to do $session->login(Password => $switch->{PASS1}); but doesnt login complaining about a bad password or something... when i do it by hand it works with that password, also there is no username, it just presents you with a password prompt.

does it make a difference if i do:
if ($session->login(Password => $switch->{PASS1})) {}
of just:
$session->login(Password => $switch->{PASS1});

Replies are listed 'Best First'.
Re: Re: Re: Telnet into Cisco switches
by blue_cowdawg (Monsignor) on Jul 11, 2003 at 15:53 UTC

    I am being lazy for the moment and not looking at the man page for Net::Telnet or Net::Telnet::Cisco.

    There is a way to get Net::Telnet to write an audit log of the conversation between your script and the device. If you invoke that you might get some idea of what is going wrong.


    Peter L. BergholdBrewer of Belgian Ales
    Peter@Berghold.Netwww.berghold.net
    Unix Professional
      Yes, look into the dump_log:
      dump_log - log all I/O in dump format $fh = $obj->dump_log; $fh = $obj->dump_log($fh); $fh = $obj->dump_log($filename);


      "Nothing is sure but death and taxes" I say combine the two and its death to all taxes!
Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 18:43 UTC
    okay all, i must appologize... but i hope you find this alittle humerous:

    turns out the system admin mistyped the password my script was using... silly error.

    sorry again
Re: Re: Re: Telnet into Cisco switches
by naChoZ (Curate) on Jul 11, 2003 at 15:34 UTC
    Are there any oddball chars you may need to escape?

    ~~
    naChoZ

      nope :(
        In that case, I'd probably do the obvious and have it print out the login and passwd first so that you know exactly what's being submitted.

        ~~
        naChoZ

Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 16:00 UTC
    here is my code, in case i am missing something obvious:
    my $session; $session = Net::Telnet::Cisco->new(Host => $switch->{IP}); $session->login(Password => $switch->{PASS1}); $session->close();

      Is the prompt from the switch what Net::Telnet::Cisco thinks it should be?


      Peter L. BergholdBrewer of Belgian Ales
      Peter@Berghold.Netwww.berghold.net
      Unix Professional
      Yes, you are.

      $session->login(Password => $switch->{PASS1});

      login needs both username and password.

      ~~
      naChoZ

      nachoz, i tried
      $session->login(undef,'password');
      because there is no username for the login, just a password, but that did not work. and the router has a prompt
      router> router# router$
      so is that okay?

        Sometime after I wrote my script, my boss in his infinite wisdom decided to hack the sh*t out of my code and render it unreconizable and unreadable. Otherwise I would have posted sniglets of it here.

        Here is what I remember of what I did when I wrote my login routine:

        • First off I did not use the login method supplied by Net::Telnet or Net::Telnet::Cisco.
        • Instead I used the print -- waitfor combination and decided what to do next based on ($match,$prematch)
        • Since there are multiple passwords in our environmet for the network elemenets on our network. To get around that issue I used my own form of try<->catch type of logic.


        Peter L. BergholdBrewer of Belgian Ales
        Peter@Berghold.Netwww.berghold.net
        Unix Professional
Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 16:46 UTC
    well, i think that the login routine they provide should work, i mean in the documentation they state, "All arguments are optional as of v1.05. Some routers don't ask for a username, they start the login conversation with a password request." so i mean i think it should work just supplying the password.
      Ah, ok, Didn't catch that. I haven't used it since approx 1.04. Did you try having it print the password to the screen 1st?

      ~~
      naChoZ

Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 17:43 UTC
    yea... it prints fine to the screen
      Sorry to beat this horse to death, but I just want to make sure of this, did you surround it so that you could make sure there weren't any extra spaces or chars in it? I usually do something like:

      print "-->$foo<--\n";

      So if there's a trailing space, for instance, it will output:

      -->bar <--

      ~~
      naChoZ

Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 18:04 UTC
    well, i suppose i could give it a shot, but the file it is being read from has not spaces, "ipaddress,password"

    and i chomp that when i read it in to get rid of the newline, also, i tried the password manually, $session->login(Password => 'password'); so i dont know how there could be a space...
Re: Re: Re: Telnet into Cisco switches
by primus (Scribe) on Jul 11, 2003 at 15:55 UTC
    well i tried even to hardcode the password in, and still no go...
    $session->login(Password => 'password');

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://273410]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (3)
As of 2024-03-29 04:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found