NAME
SNMP::Info::Layer3 - Perl5 Interface to network devices serving Layer3 or Layers 2 & 3
AUTHOR
Max Baker (max@warped.org
)
SYNOPSIS
# Let SNMP::Info determine the correct subclass for you.
my $l3 = new SNMP::Info(
AutoSpecify => 1,
Debug => 1,
# These arguments are passed directly on to SNMP::Session
DestHost => 'myswitch',
Community => 'public',
Version => 2
)
or die "Can't connect to DestHost.\n";
my $class = $l3->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";
# Let's get some basic Port information
my $interfaces = $l3->interfaces();
my $i_up = $l3->i_up();
my $i_speed = $l3->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";
}
DESCRIPTION
This class is usually used as a superclass for more specific device classes listed under SNMP::Info::Layer3::* Please read all docs under SNMP::Info first.
Provides generic methods for accessing SNMP data for Layer 3 network devices. Includes support for Layer2+3 devices.
For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above.
my $l3 = new SNMP::Info::Layer3(...);
Inherited Classes
Required MIBs
- CISCO-PRODUCTS-MIB
- ENTITY-MIB
- OSPF-MIB
- Inherited Classes
-
MIBs required by the inherited classes listed above.
MIBs can be found at ftp://ftp.cisco.com/pub/mibs/v2/v2.tar.gz
GLOBALS
These are methods that return scalar value from SNMP
- $l3->chassis()
-
Returns Chassis type (model).
(entPhysicalDescr.1)
- $l3->mac()
-
Returns root port mac address
(ifPhysAddress.1)
- $l3->router_ip()
-
(ospfRouterId.0)
Overrides
- $l3->model()
-
Trys to reference $l3->id() to one of the product MIBs listed above
Removes 'cisco' from cisco devices for readability.
- $l3->serial()
-
Trys to cull a serial number from $l3->chassis()
- $l3->vendor()
-
Trys to cull a Vendor name from sysDescr
Globals imported from SNMP::Info
See documentation in SNMP::Info for details.
Globals imported from SNMP::Info::Bridge
See documentation in SNMP::Info::Bridge for details.
Globals imported from SNMP::Info::CDP
See documentation in SNMP::Info::CDP for details.
Globals imported from SNMP::Info::CiscoStats
See documentation in SNMP::Info::CiscoStats for details.
Globals imported from SNMP::Info::EtherLike
See documentation in SNMP::Info::EtherLike for details.
TABLE ENTRIES
These are methods that return tables of information in the form of a reference to a hash.
Overrides
- $l3->interfaces()
-
Returns the map between SNMP Interface Identifier (iid) and physical port name.
Only returns those iids that have a description listed in $l3->i_description()
- $l3->i_ignore()
-
Returns reference to hash. Creates a key for each IID that should be ignored.
Currently looks for tunnel,loopback,lo,null from $l3->interfaces()
- $l3->i_name()
-
Returns reference to hash of iid to human set name.
Defaults to ifName, but checks for an ifAlias
- $l3->i_duplex()
-
Returns reference to hash of iid to current link duplex setting.
Maps $l3->el_index() to $l3->el_duplex, then culls out full,half, or auto and sets the map to that value.
see SNMP::Info::Etherlike for the el_index() and el_duplex() methods.
ARP Cache Entries
- $l3->at_index()
-
Returns reference to map of IID to Arp Cache Entry
(atIfIndex)
- $l3->at_paddr()
-
Returns reference to hash of Arp Cache Entries to MAC address
(atPhysAddress)
- $l3->at_netaddr()
-
Returns reference to hash of Arp Cache Entries to IP Address
(atNetAddress)
Table Methods imported from SNMP::Info
See documentation in SNMP::Info for details.
Table Methods imported from SNMP::Info::Bridge
See documentation in SNMP::Info::Bridge for details.
Table Methods imported from SNMP::Info::CDP
See documentation in SNMP::Info::CDP for details.
Table Methods imported from SNMP::Info::CiscoStats
See documentation in SNMP::Info::CiscoStats for details.
Table Methods imported from SNMP::Info::EtherLike
See documentation in SNMP::Info::EtherLike for details.