NAME
SNMP::Info::Layer2::C2900 - SNMP Interface to Cisco Catalyst 2900 Switches running IOS
AUTHOR
Max Baker
SYNOPSIS
# Let SNMP::Info determine the correct subclass for you. 
my $c2900 = new SNMP::Info(
                       AutoSpecify => 1,
                       Debug       => 1,
                       # These arguments are passed directly to SNMP::Session
                       DestHost    => 'myswitch',
                       Community   => 'public',
                       Version     => 2
                       ) 
   or die "Can't connect to DestHost.\n";
my $class = $c2900->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";DESCRIPTION
Provides abstraction to the configuration information obtainable from a C2900 device through SNMP.
For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above.
my $c2900 = new SNMP::Info::Layer2::C2900(...);Inherited Classes
Required MIBs
Inherited MIBs
See "Required MIBs" in SNMP::Info::Layer2::Cisco for its MIB requirements.
GLOBALS
These are methods that return scalar value from SNMP
Overrides
Globals imported from SNMP::Info::Layer2::Cisco
See "GLOBALS" in SNMP::Info::Layer2::Cisco for details.
TABLE METHODS
These are methods that return tables of information in the form of a reference to a hash.
Overrides
- $c2900->interfaces()
- 
Returns reference to the map between IID and physical Port. On the 2900 devices i_name isn't reliable, so we override to just the description. Next all dots are changed for forward slashes so that the physical port name is the same as the broad-casted CDP port name. (Ethernet0.1 -> Ethernet0/1) Also, any weird characters are removed, as I saw a few pop up. 
- $c2900->i_duplex()
- 
Returns reference to map of IIDs to current link duplex Crosses $c2900->c2900_p_index() with $c2900->c2900_p_duplex() 
- $c2900->i_duplex_admin()
- 
Returns reference to hash of IIDs to admin duplex setting Crosses $c2900->c2900_p_index() with $c2900->c2900_p_duplex_admin() 
- $c2900->i_speed_admin()
- 
Returns reference to hash of IIDs to admin speed setting. 
C2900-MIB Port Entry Table
- $c2900->c2900_p_index()
- 
Maps the Switch Port Table to the IID ( c2900PortIfIndex)
- $c2900->c2900_p_duplex()
- 
Gives Port Duplex Info ( c2900PortDuplexStatus)
- $c2900->c2900_p_duplex_admin()
- 
Gives admin setting for Duplex Info ( c2900PortDuplexState)
- $c2900->c2900_p_speed_admin()
- 
Gives Admin speed of port ( c2900PortAdminSpeed)
Table Methods imported from SNMP::Info::Layer2::Cisco
See "TABLE METHODS" in SNMP::Info::Layer2::Cisco for details.
SET METHODS
These are methods that provide SNMP set functionality for overridden methods or provide a simpler interface to complex set operations. See "SETTING DATA VIA SNMP" in SNMP::Info for general information on set operations.
- $c2900->set_i_speed_admin(speed, ifIndex)
- 
Sets port speed, must be supplied with speed and port ifIndexSpeed choices are 'auto', '10', '100' Crosses $c2900->c2900_p_index() with $c2900->c2900_p_speed_admin() to utilize port ifIndex.Example: my %if_map = reverse %{$c2900->interfaces()}; $c2900->set_i_speed_admin('auto', $if_map{'FastEthernet0/1'}) or die "Couldn't change port speed. ",$c2900->error(1);
- $c2900->set_i_duplex_admin(duplex, ifIndex)
- 
Sets port duplex, must be supplied with duplex and port ifIndexSpeed choices are 'auto', 'half', 'full' Crosses $c2900->c2900_p_index() with $c2900->c2900_p_duplex_admin() to utilize port ifIndex.Example: my %if_map = reverse %{$c2900->interfaces()}; $c2900->set_i_duplex_admin('auto', $if_map{'FastEthernet0/1'}) or die "Couldn't change port duplex. ",$c2900->error(1);