NAME
Net::SNMP::Mixin::IfInfo - mixin class for interface related infos
VERSION
Version 0.04
SYNOPSIS
use Net::SNMP;
use Net::SNMP::Mixin;
my $session = Net::SNMP->session( -hostname => 'foo.bar.com' );
$session->mixer('Net::SNMP::Mixin::IfInfo');
$session->init_mixins;
snmp_dispatcher();
die $session->errors if $session->errors;
my $if_entries = $session->get_if_entries;
foreach my $if_index ( sort { $a <=> $b } keys %$if_entries ) {
my $ifAdminStatus = $if_entries->{$if_index}->{ifAdminStatus} || 0;
my $ifOperStatus = $if_entries->{$if_index}->{ifOperStatus} || 0;
my $ifType = $if_entries->{$if_index}->{ifType} || 0;
my $ifName = $if_entries->{$if_index}->{ifName} || '';
my $ifDescr = $if_entries->{$if_index}->{ifDescr} || '';
my $ifAlias = $if_entries->{$if_index}->{ifAlias} || '';
printf "%5d %1d/%1d %-10.10s %-25.25s %-26.26s\n",
$if_index, $ifAdminStatus, $ifOperStatus,
$ifName, $ifDescr, $ifAlias;
}
DESCRIPTION
A mixin class for basic interface related infos from the ifTable and
ifXTable.
This mixin supports the quasi static information from both tables
together in one hash, see below.
MIXIN METHODS
OBJ->get_if_entries
Returns parts ot the ifTable and ifXTable as a hash reference. The key
is the common ifIndex into the ifTable and ifXtable:
{
INTEGER => { # ifIndex as key
ifName => DisplayString, # an ifXTable entry
ifAlias => DisplayString, # an ifXTable entry
ifDescr => DisplayString, # an ifTable entry
ifType => IANAifType, # an ifTable entry
ifAdminStatus => INTEGER, # an ifTable entry
ifOperStatus => INTEGER, # an ifTable entry
}
... ,
}
INITIALIZATION
OBJ->_init($reload)
Fetch basic interface related snmp values from the host. Don't call this
method direct!
PRIVATE METHODS
Only for developers or maintainers.
_fetch_if_table_entries($session)
Get some MIB values from the ifTable needed by all other modules.
_if_table_entries_cb($session)
The callback for _fetch_if_table_entries
_fetch_if_x_table_entries($session)
Get some MIB values from the ifXTable needed by all other modules.
_if_x_table_entries_cb($session)
The callback for _fetch_if_x_table_entries
SEE ALSO
Net::SNMP::Mixin::Dot1dBase for a mapping between ifIndexes and
dot1dBasePorts.
REQUIREMENTS
Net::SNMP, Net::SNMP::Mixin
BUGS, PATCHES & FIXES
There are no known bugs at the time of this release. However, if you
spot a bug or are experiencing difficulties that are not explained
within the POD documentation, please submit a bug to the RT system (see
link below). However, it would help greatly if you are able to pinpoint
problems or even supply a patch.
Fixes are dependant upon their severity and my availablity. Should a fix
not be forthcoming, please feel free to (politely) remind me by sending
an email to
[email protected] .
RT:
http://rt.cpan.org/Public/Dist/Display.html?Name=Net-SNMP-Mixin-IfInfo
AUTHOR
Karl Gaissmaier <karl.gaissmaier at uni-ulm.de>
COPYRIGHT & LICENSE
Copyright 2008 Karl Gaissmaier, all rights reserved.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.