NAME
Devel::REPL::Plugin::NAS - Add Perl to your network devices' command line interfaces
VERSION
This document refers to version 0.0001_01 of Devel::REPL::Plugin::NAS
WARNING
This is an ALPHA RELEASE. I'd really appreciate any bug reports; you can use the CPAN RT bug tracking system, or email me directly at the address at the bottom of this page.
You probably also want to download the latest Devel::REPL
code from its subversion repository, as it contains many updates to the version on CPAN.
PURPOSE
Whilst running an automated interactive session on a network device (e.g. a router) using Net::Appliance::Session, the device may throw an error. You can be dropped into a 'shell' on the device, for manual debugging, but the shell also has Perl bells and whistles.
Alternatively, if used standalone, this module makes it seem like your network device manufacturer embedded Perl in their device's CLI. That's pretty cool.
SYNOPSIS
my $repl = Devel::REPL->new;
$repl->load_plugin('NAS');
$repl->run;
You're now at a Devel::REPL shell.
re.pl:001:0> 3+3
6
re.pl:002:0> #nas_connect hostname.example username password
$Net_Appliance_Session1 = Net::Appliance::Session=GLOB(0x92165ac);
You're now conected via SSH to the device and at its CLI.
TEST_3750# show int status | incl 15
Fa1/0/15 OWL visitor notconnect 97 auto auto 10/100BaseTX
TEST_3750# conf t
Enter configuration commands, one per line. End with CNTL/Z.
TEST_3750(config)# exit
Run a one-off perl command:
TEST_3750# #perl 3+6
9
Switch to Perl mode:
TEST_3750# #nas_perl
Switched into Perl mode.
re.pl:008:0> 3+9
12
Run a one-off command on the device:
re.pl:009:0> #nas show int status | incl 14
Fa1/0/14 OWL VPN notconnect 98 auto auto 10/100BaseTX
Use a Quoted Command operator to run device comands from within Perl code:
re.pl:010:0> my @output = qc{ show int status };
Switch back to device command mode:
re.pl:011:0> #nas_cli
Switched into NAS CLI mode.
TEST_3750#
Press control+d
to cleanly disconnect, from Perl or NAS CLI mode.
DESCRIPTION
USAGE
CAVEATS
TODO
REQUIREMENTS
Other than the standard contents of the Perl distribution, you will need:
AUTHOR
Oliver Gorwits <oliver.gorwits@oucs.ox.ac.uk>
ACKNOWLEDGEMENTS
All the helpful people in #moose
on IRC.
COPYRIGHT & LICENSE
Copyright (c) Oliver Gorwits 2008. All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA