The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SNMP::Info::Layer3::Lenovo - SNMP Interface to Lenovo switches running CNOS.

AUTHORS

Nick Nauwelaerts

SYNOPSIS

 # Let SNMP::Info determine the correct subclass for you.
 use SNMP::Info;
 my $cnos = new SNMP::Info(
                          AutoSpecify => 1,
                          Debug       => 1,
                          DestHost    => 'myrouter',
                          Community   => 'public',
                          Version     => 2
                        )
    or die "Can't connect to DestHost.\n";
 my $class = $cnos->class();
 print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION

Subclass for Lenovo switches running CNOS.

Inherited Classes

SNMP::Info::IEEE802dot3ad
SNMP::Info::Layer3

Required MIBs

LENOVO-ENV-MIB
LENOVO-PRODUCTS-MIB

Inherited Classes' MIBs

See SNMP::Info::IEEE802dot3ad for its own MIB requirements.

See SNMP::Info::Layer3 for its own MIB requirements.

GLOBALS

These are methods that return scalar value from SNMP.

$cnos->mac()

Returns base mac based on dot1dBaseBridgeAddress.

$cnos->os_ver()

Returns the OS version extracted from entPhysicalSoftwareRev.1.

Overrides

$cnos->vendor()

Returns 'lenovo'.

$cnos->os()

Returns 'cnos'.

Globals imported from SNMP::Info::IEEE802dot3ad

See documentation in SNMP::Info::IEEE802dot3ad for details.

Globals imported from SNMP::Info::Layer3

See documentation in SNMP::Info::Layer3 for details.

TABLE ENTRIES

These are methods that return tables of information in the form of a reference to a hash.

$cnos->agg_ports_cnos()

placeholder function, will return agg_ports mapping once implemented.

Overrides

$cnos->i_description()

Uses ifName to match most other devices.

$cnos->i_name()

Uses ifDescr to match most other devices.

$cnos->i_speed()

CNOS does not set ifSpeed to 4294967295 for high speed links, return orig_if_speed_high() instead. SNMP::Info will handle this correctly.

$cnos->i_speed_raw()

If ifSpeedHigh > 2500 we overwrite i_speed_raw(), using the formula: ifSpeedHigh * 1_000_000.

Table Methods imported from SNMP::Info::IEEE802dot3ad

See documentation in SNMP::Info::IEEE802dot3ad for details.

Table Methods imported from SNMP::Info::Layer3

See documentation in SNMP::Info::Layer3 for details.