NAME

SNMP::Info::Entity - SNMP Interface to data stored in ENTITY-MIB. RFC 2737

AUTHOR

Max Baker

SYNOPSIS

# Let SNMP::Info determine the correct subclass for you. 
my $entity = new SNMP::Info(
                         AutoSpecify => 1,
                         Debug       => 1,
                         DestHost    => 'myswitch',
                         Community   => 'public',
                         Version     => 2
                       ) 
   or die "Can't connect to DestHost.\n";

my $class      = $entity->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION

ENTITY-MIB is used by Layer 2 devices from Brocade, Cisco, HP, and more.

See RFC 2737 for full details.

Create or use a device subclass that inherit this class. Do not use directly.

For debugging purposes you can call this class directly as you would SNMP::Info

my $entity = new SNMP::Info::Entity (...);

Inherited Classes

none.

Required MIBs

ENTITY-MIB

MIBs can be found at ftp://ftp.cisco.com/pub/mibs/v2/v2.tar.gz

GLOBALS

none.

TABLE METHODS

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

$entity->entity_derived_serial()

Tries to determine the device serial number from the ENTITY-MIB. Only considers serial numbers for entries without a parent, or if they are of type chassis. Looks at entPhysicalSerialNum and then entPhysicalDescr for serial number.

$entity->entity_derived_os_ver()

Tries to determine the device OS version from the ENTITY-MIB. Only considers serial numbers for entries without a parent, or if they are of type chassis. Looks at entPhysicalSoftwareRev for the version.

Entity Table

$entity->e_index()

Index

(entPhysicalIndex)

$entity->e_alias()

Human entered, not usually used.

(entPhysicalAlias)

$entity->e_class()

Stack, Module, Container, Port ...

(entPhysicalClass)

$entity->e_descr()

Human Friendly

(entPhysicalClass)

$entity->e_fwver()

(entPhysicalFirmwareRev)

$entity->e_fru()

BOOLEAN. Is a Field Replaceable unit?

(entPhysicalFRU)

$entity->e_hwver()

(entPhysicalHardwareRev)

$entity->e_id()

This is human entered and not normally used.

(entPhysicalAssetID)

$entity->e_map()

See MIB.

(entAliasMappingIdentifier)

$entity->e_model()

Model Name of Entity.

(entPhysicalModelName)

$entity->e_name()

More computer friendly name of entity. Parse me.

(entPhysicalName)

$entity->e_parent()

0 if root.

(entPhysicalContainedIn)

$entity->e_port()

Maps Entity Table entries to the Interface Table (IfTable) using $entity->e_map()

$entity->e_pos()

The relative position among all entities sharing the same parent.

(entPhysicalParentRelPos)

$entity->e_serial()

(entPhysicalSerialNum)

$entity->e_swver()

(entPhysicalSoftwareRev)

$entity->e_type()

This is an OID, which gets munged into the object name if the right MIB is loaded.

(entPhysicalVendorType)

$entity->e_vendor()

Vendor of Module.

(entPhysicalMfgName)