NAME

SNMP::Info::Layer3::Juniper - SNMP Interface to L3 Juniper Devices

AUTHOR

Bill Fenner

SYNOPSIS

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

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

DESCRIPTION

Subclass for Juniper Devices running JUNOS

Inherited Classes

SNMP::Info::Layer3

Required MIBs

JUNIPER-VLAN-MIB dated "200901090000Z" or later.
JUNIPER-CHASSIS-DEFINES-MIB
JUNIPER-MIB
JUNIPER-VIRTUALCHASSIS-MIB
JUNIPER-L2ALD-MIB

Inherited Classes' MIBs

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

GLOBALS

These are methods that return scalar value from SNMP

$juniper->vendor()

Returns 'juniper'

$juniper->os()

Returns 'junos'

$juniper->layers()

Checks forwarding table for Layer 2 support since some routers with switches do not report layers properly.

$juniper->os_ver()

Returns the software version extracted first from sysDescr or lldpLocSysDesc if not available in sysDescr.

$juniper->model()

Returns the model from sysObjectID, with jnxProductName removed from the beginning.

$juniper->serial()

Returns serial number

(jnxBoxSerialNo)

$juniper->mac()

Returns the MAC address used by this bridge when it must be referred to in a unique fashion.

(dot1dBaseBridgeAddress)

$juniper->box_descr()

The name, model, or detailed description of the device.

(jnxBoxDescr)

$juniper->version()

(jnxVirtualChassisMemberSWVersion)

$juniper->vc_model()

(jnxVirtualChassisMemberModel)

Globals imported from SNMP::Info::Layer3

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

TABLE METHODS

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

$juniper->qb_fdb_index()

Returns reference to hash: key = FDB ID, value = VLAN ID.

$juniper->v_index()

Returns (jnxL2aldVlanTag) or (jnxExVlanTag) depending upon switch software version

$juniper->v_name()

Returns (jnxL2aldVlanName) or (jnxExVlanName) depending upon switch software version

$juniper->v_type()

Returns (jnxL2aldVlanType) or (jnxExVlanType) depending upon switch software version

$juniper->i_trunk()

(jnxExVlanPortAccessMode)

$juniper->i_vlan()

Returns a mapping between ifIndex and the PVID or default VLAN.

$juniper->i_vlan_membership()

Returns reference to hash of arrays: key = ifIndex, value = array of VLAN IDs. These are the VLANs which are members of the egress list for the port.

$juniper->i_vlan_membership_untagged()

Returns reference to hash of arrays: key = ifIndex, value = array of VLAN IDs. These are the VLANs which are members of the untagged egress list for the port.

$juniper->peth_port_ifindex()

Returns reference to a hash: key= PowerEthernet MIB interface number, value = ifIndex. As Juniper does not provide a mapping function, this does it manually. For example, ge-0/0/1 registers as PowerEthernet interface '1.2'

Pseudo ENTITY-MIB information

These methods emulate ENTITY-MIB Physical Table methods using JUNIPER-MIB and JUNIPER-VIRTUALCHASSIS-MIB.

$juniper->e_index()

Returns reference to hash. Key: IID, Value: Integer, Indices are combined into a eight digit integer, each index is two digits padded with leading zero if required.

$juniper->e_class()

Returns reference to hash. Key: IID, Value: General hardware type.

$juniper->e_descr()

Returns reference to hash. Key: IID, Value: Human friendly name

$juniper->e_hwver()

Returns reference to hash. Key: IID, Value: Hardware version

$juniper->e_vendor()

Returns reference to hash. Key: IID, Value: juniper

$juniper->e_serial()

Returns reference to hash. Key: IID, Value: Serial number

$juniper->e_pos()

Returns reference to hash. Key: IID, Value: The relative position among all entities sharing the same parent.

$juniper->e_type()

Returns reference to hash. Key: IID, Value: Type of component/sub-component as defined in JUNIPER-CHASSIS-DEFINES-MIB.

$juniper->e_parent()

Returns reference to hash. Key: IID, Value: The value of e_index() for the entity which 'contains' this entity. A value of zero indicates this entity is not contained in any other entity.

$entity->e_fru()

BOOLEAN. Is a Field Replaceable unit?

(entPhysicalFRU)

Table Methods imported from SNMP::Info::Layer3

See documentation in "TABLE METHODS" in SNMP::Info::Layer3 for details.