Info::Layer3::Nexus(3)

NAME
SNMP::Info::Layer3::Nexus - SNMP Interface to Cisco Nexus Switches running NX-OS

AUTHOR
Eric Miller

SYNOPSIS
 # Let SNMP::Info determine the correct subclass for you.
 my $nexus = 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      = $nexus->class();
 print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION
Abstraction subclass for Cisco Nexus Switches running NX-OS.

For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above.

 my $nexus = new SNMP::Info::Layer3::Nexus(...);

  Inherited Classes

SNMP::Info::Layer3
SNMP::Info::CiscoVTP
SNMP::Info::CDP
SNMP::Info::CiscoImage
SNMP::Info::CiscoPortSecurity
SNMP::Info::CiscoConfig
SNMP::Info::CiscoPower
SNMP::Info::CiscoStpExtensions
SNMP::Info::LLDP

  Required MIBs

CISCO-ENTITY-VENDORTYPE-OID-MIB
Inherited Classes' MIBs
    See "Required MIBs" in SNMP::Info::Layer3 for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoVTP for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CDP for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoImage for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoPortSecurity for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoConfig for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoPower for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::CiscoStpExtensions for its own MIB requirements.

    See "Required MIBs" in SNMP::Info::LLDP for its own MIB requirements.

GLOBALS
These are methods that return a scalar value from SNMP

$nexus->vendor()
    Returns 'cisco'

$nexus->os()
    Returns 'nx-os'

$nexus->os_ver()
    Returns operating system version extracted fron "sysDescr".

$nexus->serial()
    Returns the serial number of the chassis from ENTITY-MIB.

$nexus->model()
    Tries to reference $nexus->id() to CISCO-ENTITY-VENDORTYPE-OID-MIB

    Removes 'cevChassis' for readability.

$nexus->mac()
    "dot1dBaseBridgeAddress"

$nexus->cisco_comm_indexing()
    Returns 1. Use vlan indexing.

  Globals imported from SNMP::Info::Layer3
See documentation in "GLOBALS" in SNMP::Info::Layer3 for details.

  Global Methods imported from SNMP::Info::CiscoVTP
See documentation in "GLOBALS" in SNMP::Info::CiscoVTP for details.

  Globals imported from SNMP::Info::CDP
See documentation in "GLOBALS" in SNMP::Info::CDP for details.

  Globals imported from SNMP::Info::CiscoImage
See documentation in "GLOBALS" in SNMP::Info::CiscoImage for details.

  Globals imported from SNMP::Info::CiscoPortSecurity
See documentation in "GLOBALS" in SNMP::Info::CiscoPortSecurity for details.

  Globals imported from SNMP::Info::CiscoConfig
See documentation in "GLOBALS" in SNMP::Info::CiscoConfig for details.

  Globals imported from SNMP::Info::CiscoPower
See documentation in "GLOBALS" in SNMP::Info::CiscoPower for details.

  Globals imported from SNMP::Info::CiscoStpExtensions
See documentation in "GLOBALS" in SNMP::Info::CiscoStpExtensions for details.

  Globals imported from SNMP::Info::LLDP
See documentation in "GLOBALS" in SNMP::Info::LLDP for details.

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

  Topology information
Based upon the firmware version Cisco devices may support Link Layer Discover Protocol (LLDP) in addition to the Cisco-proprietary CDP. These methods will query both and return the combination of all information. As a result, there may be identical topology information returned from the two protocols causing duplicate entries. It is the calling program's responsibility to identify any duplicate entries and remove duplicates if necessary.

$nexus->hasCDP()
    Returns true if the device is running either CDP or LLDP.

$nexus->c_if()
    Returns reference to hash. Key: iid Value: local device port (interfaces)

$nexus->c_ip()
    Returns reference to hash. Key: iid Value: remote IPv4 address

    If multiple entries exist with the same local port, c_if(), with the same IPv4 address, c_ip(), it may be a duplicate entry.

    If multiple entries exist with the same local port, c_if(), with different IPv4 addresses, c_ip(), there is either a non-CDP/LLDP device in between two or more devices or multiple devices which are not directly connected.

    Use the data from the Layer2 Topology Table below to dig deeper.

$nexus->c_port()
    Returns reference to hash. Key: iid Value: remote port (interfaces)

$nexus->c_id()
    Returns reference to hash. Key: iid Value: string value used to identify the chassis component associated with the remote system.

$nexus->c_platform()
    Returns reference to hash. Key: iid Value: Remote Device Type

  Table Methods imported from SNMP::Info::Layer3
See documentation in "TABLE METHODS" in SNMP::Info::Layer3 for details.

  Table Methods imported from SNMP::Info::CiscoVTP
See documentation in "TABLE METHODS" in SNMP::Info::CiscoVTP for details.

  Table Methods imported from SNMP::Info::CDP
See documentation in "TABLE METHODS" in SNMP::Info::CDP for details.

  Table Methods imported from SNMP::Info::CiscoStats
See documentation in "TABLE METHODS" in SNMP::Info::CiscoStats for details.

  Table Methods imported from SNMP::Info::CiscoImage
See documentation in "TABLE METHODS" in SNMP::Info::CiscoImage for details.

  Table Methods imported from SNMP::Info::CiscoPortSecurity
See documentation in "TABLE METHODS" in SNMP::Info::CiscoPortSecurity for details.

  Table Methods imported from SNMP::Info::CiscoConfig
See documentation in "TABLE METHODS" in SNMP::Info::CiscoConfig for details.

  Table Methods imported from SNMP::Info::CiscoPower
See documentation in "TABLE METHODS" in SNMP::Info::CiscoPower for details.

  Table Methods imported from SNMP::Info::CiscoStpExtensions
See documentation in "TABLE METHODS" in SNMP::Info::CiscoStpExtensions for details.

  Table Methods imported from SNMP::Info::LLDP
See documentation in "TABLE METHODS" in SNMP::Info::LLDP for details.