SNMP::Info::Layer1 - Perl5 Interface to network devices serving Layer1 only.
Max Baker (max@warped.org)
# Let SNMP::Info determine the correct subclass for you.
my $l1 = new SNMP::Info(
AutoSpecify => 1,
Debug => 1,
# These arguments are passed directly on to SNMP::Session
DestHost => 'myswitch',
Community => 'public',
Version => 1
)
or die "Can't connect to DestHost.\n";
my $class = $l1->class(); print "SNMP::Info determined this device to fall under subclass : $class\n";
# Let's get some basic Port information my $interfaces = $l1->interfaces(); my $i_up = $l1->i_up(); my $i_speed = $l1->i_speed();
foreach my $iid (keys %$interfaces) {
my $port = $interfaces->{$iid};
my $up = $i_up->{$iid};
my $speed = $i_speed->{$iid}
print "Port $port is $up. Port runs at $speed.\n";
}
This class is usually used as a superclass for more specific device classes listed under SNMP::Info::Layer1::* Please read all docs under SNMP::Info first.
Provides abstraction to the configuration information obtainable from a Layer1 device through SNMP. Information is stored in a number of MIBs.
For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above.
my $l1 = new SNMP::Info::Layer1(...);
SNMP-REPEATER-MIB needs to be extracted from ftp://ftp.cisco.com/pub/mibs/v1/v1.tar.gz
These are methods that return scalar value from SNMP
ports_managed()(ifNumber)
vendor()model() and $l1->vendor()
ports()rptr_ports() and ports_managed()
slots()(rptrGroupCapacity)
See documentation in SNMP::Info for details.
These are methods that return tables of information in the form of a reference to a hash.
interfaces()i_up()i_up_admin()
rptr_ports()(rptrGroupPortCapacity)
rptr_port()(rptrPortIndex)
rptr_slot()(rptrPortGroupIndex)
rptr_up_admin()rptr_up()
See documentation in SNMP::Info for details.