From Code to Community: Sponsoring The Perl and Raku Conference 2025 Learn more

NAME

Net::SNMP::Mixin::InetCidrRouteTable - mixin class for the inetCidrRouteTable

VERSION

Version 0.03

SYNOPSIS

#...
my $session = Net::SNMP->session( -hostname => 'foo.bar.com' );
$session->mixer('Net::SNMP::Mixin::InetCidrRouteTable');
$session->init_mixins;
snmp_dispatcher();
$session->init_ok();
die $session->errors if $session->errors;
my @routes = $session->get_inet_cidr_route_table();
foreach my $route (@routes) {
my $prefix = $route->{inetCidrRoutePrefix};
my $next_hop = $route->{inetCidrRouteNextHop};
my $if_index = $route->{inetCidrRouteIfIndex};
# ...
print "$prefix => $if_index/$next_hop\n";
}

DESCRIPTION

A Net::SNMP mixin class for inetCidrRouteTable.

The inetCidrRouteTable provides the ability to display IP version-independent multipath CIDR routes.

MIXIN METHODS

OBJ->get_inet_cidr_route_table()

Returns a sorted list of inetCidrRouteTable and cooked entries. Every list element (route entry) is a hashref with the following fields and values:

{
inetCidrRoutePrefix => CIDR String,
inetCidrRouteZone => InetAddress,
inetCidrRouteNextHop => InetAddress,
inetCidrRoutePolicy => OBJECT IDENTIFIER,
inetCidrRouteIfIndex => InterfaceIndexOrZero,
inetCidrRouteType => INTEGER,
inetCidrRouteTypeString => String, # resolved enum
inetCidrRouteProto => IANAipRouteProtocol,
inetCidrRouteProtoString => String, # resolved enum
inetCidrRouteAge => Gauge32,
inetCidrRouteNextHopAS => InetAutonomousSystemNumber,
inetCidrRouteMetric1 => Integer32,
inetCidrRouteMetric2 => Integer32,
inetCidrRouteMetric3 => Integer32,
inetCidrRouteMetric4 => Integer32,
inetCidrRouteMetric5 => Integer32,
inetCidrRouteStatus => RowStatus
inetCidrRouteStatusString => String, # resolved enum
}

INITIALIZATION

OBJ->_init($reload)

Fetch the inetCidrRouteTable from the host. Don't call this method direct!

PRIVATE METHODS

Only for developers or maintainers.

_fetch_inet_cidr_route_tbl($session)

Fetch the inetCidrRouteTable once during object initialization.

_inet_cidr_route_tbl_cb($session)

The callback for _fetch_inet_cidr_route_tbl().

SEE ALSO

Net::SNMP::Mixin

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 gaissmai@cpan.org .

AUTHOR

Karl Gaissmaier <karl.gaissmaier at uni-ulm.de>

COPYRIGHT & LICENSE

Copyright 2019 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.