Scroll to navigation

Info::Layer3::Extreme(3pm) User Contributed Perl Documentation Info::Layer3::Extreme(3pm)
 

NAME

SNMP::Info::Layer3::Extreme - Perl5 Interface to Extreme Network Devices

AUTHOR

Eric Miller, Bill Fenner

SYNOPSIS

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

DESCRIPTION

Provides abstraction to the configuration information obtainable from an Extreme 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 $extreme = new SNMP::Info::Layer3::Extreme(...);

Inherited Classes

SNMP::Info::Layer3
SNMP::Info::MAU
SNMP::Info::LLDP
SNMP::Info::EDP

Required MIBs

EXTREME-BASE-MIB
EXTREME-SYSTEM-MIB
EXTREME-FDB-MIB
EXTREME-VLAN-MIB
EXTREME-POE-MIB
Inherited Classes' MIBs
See classes listed above for their required MIBs.

GLOBALS

These are methods that return scalar value from SNMP
$extreme->model()
Returns model type. Checks $extreme->id() against the EXTREME-BASE-MIB.
$extreme->vendor()
Returns extreme
$extreme->os()
Returns extreme
$extreme->os_ver()
Parses device operating system version from description()
$extreme->serial()
Returns serial number
("extremeSystemID")
$extreme->temp()
Returns system temperature
("extremeCurrentTemperature")
$extreme->ps1_status()
Returns status of power supply 1
("extremePowerSupplyStatus.1")
$extreme->ps2_status()
Returns status of power supply 2
("extremePowerSupplyStatus.2")
$extreme->fan()
Returns fan status
("extremeFanOperational.1")
$extreme->mac()
Returns base mac
("dot1dBaseBridgeAddress")

Globals imported from SNMP::Info::Layer3

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

Globals imported from SNMP::Info::MAU

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

Globals imported from SNMP::Info::LLDP

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

Globals imported from SNMP::Info::EDP

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

TABLE METHODS

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

Overrides

$extreme->interfaces()
Returns a mapping between the Interface Table Index (iid) and the physical port name.
$extreme->i_duplex()
Parses mau_index and mau_link to return the duplex information for interfaces.
$extreme->i_duplex_admin()
Parses "mac_index","mau_autostat","mau_type_admin" in order to find the admin duplex setting for all the interfaces.
Returns either (auto,full,half).
$extreme->i_ignore()
Returns reference to hash. Increments value of IID if port is to be ignored.
Ignores VLAN meta interfaces and loopback
$extreme->fw_mac()
("extremeFdbMacFdbMacAddress")
$extreme->fw_port()
("extremeFdbMacFdbPortIfIndex")
$extreme->fw_status()
("extremeFdbMacFdbStatus")
$extreme->lldp_if()
Returns the mapping to the SNMP Interface Table. Extreme LLDP uses the bridge index rather than ifIndex.
$extreme->i_vlan()
Returns a mapping between "ifIndex" and the VLAN.
$extreme->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.
  Example:
  my $interfaces = $extreme->interfaces();
  my $vlans      = $extreme->i_vlan_membership();
  
  foreach my $iid (sort keys %$interfaces) {
    my $port = $interfaces->{$iid};
    my $vlan = join(',', sort(@{$vlans->{$iid}}));
    print "Port: $port VLAN: $vlan\n";
  }
    
$extreme->v_index()
Returns VLAN IDs
$extreme->v_name()
Returns VLAN names
("extremeVlanIfDescr")
$extreme->bp_index()
Returns reference to hash of bridge port table entries map back to interface identifier (iid)
Returns ("ifIndex") for both key and value since we're using EXTREME-FDB-MIB rather than BRIDGE-MIB.
$extreme->peth_port_power()
Power supplied by PoE ports, in milliwatts
("extremePethPortMeasuredPower")
$extreme->peth_power_watts()
The configured maximum amount of in-line power available to the slot.
("extremePethSlotPowerLimit")

Table Methods imported from SNMP::Info::Layer3

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

Table Methods imported from SNMP::Info::MAU

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

Table Methods imported from SNMP::Info::LLDP

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

Table Methods imported from SNMP::Info::EDP

See documentation in "TABLE METHODS" in SNMP::Info::EDP 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.
$extreme->set_i_vlan ( vlan, ifIndex )
Changes an access (untagged) port VLAN, must be supplied with the numeric VLAN ID and port "ifIndex". This method should only be used on end station (non-trunk) ports.
  Example:
  my %if_map = reverse %{$extreme->interfaces()};
  $extreme->set_i_vlan('2', $if_map{'FastEthernet0/1'}) 
    or die "Couldn't change port VLAN. ",$extreme->error(1);
    
$extreme->set_i_pvid ( pvid, ifIndex )
Sets port default VLAN, must be supplied with the numeric VLAN ID and port "ifIndex". This method should only be used on trunk ports.
  Example:
  my %if_map = reverse %{$extreme->interfaces()};
  $extreme->set_i_pvid('2', $if_map{'FastEthernet0/1'}) 
    or die "Couldn't change port default VLAN. ",$extreme->error(1);
    
$extreme->set_add_i_vlan_tagged ( vlan, ifIndex )
Adds the VLAN to the enabled VLANs list of the port, must be supplied with the numeric VLAN ID and port "ifIndex".
  Example:
  my %if_map = reverse %{$extreme->interfaces()};
  $extreme->set_add_i_vlan_tagged('2', $if_map{'FastEthernet0/1'}) 
    or die "Couldn't add port to egress list. ",$extreme->error(1);
    
$extreme->set_remove_i_vlan_tagged ( vlan, ifIndex )
Removes the VLAN from the enabled VLANs list of the port, must be supplied with the numeric VLAN ID and port "ifIndex".
  Example:
  my %if_map = reverse %{$extreme->interfaces()};
  $extreme->set_remove_i_vlan_tagged('2', $if_map{'FastEthernet0/1'}) 
    or die "Couldn't add port to egress list. ",$extreme->error(1);
    

Data Munging Callback Subroutines

$extreme->munge_power_stat()
Removes 'present' and changes 'not' to 'Not' in the front of a string.
$extreme->munge_true_ok()
Replaces 'true' with "OK" and 'false' with "Not OK".
2014-09-08 perl v5.20.0