Scroll to navigation

SNMP::Info::Layer3::Extreme(3pm) User Contributed Perl Documentation SNMP::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     => 2
                        )
    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.

Inherited Classes

Required 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 "xos" or "extremeware" depending on description()
$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::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->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.
$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")

Spanning Tree Instance Globals

$extreme->stp_i_mac()
Returns the MAC extracted from ("extremeStpDomainBridgeId").
$extreme->stp_i_id()
Returns the unique identifier of the STP domain.

("extremeStpDomainStpdInstance")

$extreme->stp_i_time()
Returns time since last topology change detected. (100ths/second)

("extremeStpDomainTimeSinceTopologyChange")

$extreme->stp_i_time()
Returns time since last topology change detected. (100ths/second)

("extremeStpDomainTimeSinceTopologyChange")

$extreme->stp_i_time()
Returns the total number of topology changes detected.

("extremeStpDomainTopChanges")

$extreme->stp_i_root()
Returns root of STP.

("extremeStpDomainDesignatedRoot")

$extreme->stp_i_root_port()
Returns the port number of the port that offers the lowest cost path to the root bridge.

("extremeStpDomainRootPortIfIndex")

$extreme->stp_i_priority()
Returns the port number of the port that offers the lowest cost path to the root bridge.

("extremeStpDomainBridgePriority")

Spanning Tree Protocol Port Table

$extreme->stp_p_id()
("extremeStpPortPortIfIndex")
$extreme->stp_p_stg_id()
("extremeStpDomainStpdInstance")
$extreme->stp_p_priority()
("extremeStpPortPortPriority")
$extreme->stp_p_state()
("extremeStpPortPortState")
$extreme->stp_p_cost()
("extremeStpPortPathCost")
$extreme->stp_p_root()
("extremeStpPortDesignatedRoot")
$extreme->stp_p_bridge()
("extremeStpPortDesignatedBridge")
$extreme->stp_p_port()
("extremeStpPortDesignatedPort")

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::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".
2023-09-30 perl v5.36.0