Net::Route(3pm)

Net::Route3pm

Portable interface to the routing table

Usage

    use Net::Route::Table;
    my $table_ref = Net::Route::Table->from_system();
    my $route_ref = $table_ref->default_route();
    print "Default gateway: ", $route_ref->gateway(), "\n";

Version

Version 0.02, $Revision: 372 $

Overview

The Net::Route Module

Every OS provides its custom interface to the routing table: Linux' "route" utility is different from BSD's "route show", from Windows' "route print", etc. Parsing all these different output styles in an (otherwise portable) script can quickly become inconvenient.

Net::Route abstracts the system specifics and provides a single, portable interface.

The Net::Route Class

Net::Route objects represent single entries from a Net::Route::Table.

Interface

This documents Net::Route as a class. To know how to use the module, refer to the synopsis or Net::Route::Table (the entry point from a user perspective).

Object Methods

destination()

gateway()

metric()

interface()

is_active()

is_dynamic()

Installing dependencies on sun solaris systems with GCC

The perl interpreter shipped with Solaris was compiled with Sun's proprietary C compiler, and therefore attempts to compile XS modules with the same tool and options. However, Solaris comes by default with the GNU C Compiler ("gcc") only, which has its own set of incompatible command-line arguments. Mixing these two to compile "XS" Perl modules doesn't work.

Therefore, when you need to install CPAN modules (such as Net::Route's dependencies) which make use of "XS" (C code) on a system without the Sun C Compiler, you have to use the wrapper script provided by Sun which will invoke "gcc" correctly (replace "Module" as needed):

  /usr/perl5/bin/perlgcc -MCPAN -e 'install Module'.

Status and roadmap

Please refer to the Changes file for a detailed history.

0.01 - First Public Release

Net::Route meets our goals for a first public release:

•

It can list all routes

•

It can get the default route

•

It can provide the most common characteristics of routes

•

It is portable on Linux, Solaris and Windows

Net::Route is used in other Straton IT (<http://en.straton-it.fr/>) software, such as Cancerbero 0.7 (<http://en.straton-it.fr/open-source/cancerbero-07>) and Confdump/Sys (<http://confdump.sourceforge.net/>).

0.xx - Community Releases

These releases will include features and bugfixes suggested, reported and/or contributed by the community. For example:

•

Differentiating between "Net::Route"-as-a-class and "Net::Route"-as-a-module

•

Support for more operating systems

•

Getting rid of CPAN dependencies that are troublesome to install on some platforms.

•

Your idea (<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Net-Route>) here...

The API might change somewhat, if necessary.

1.0 - API Freeze

When appropriate (according to the user reports), we will freeze the interface and release version 1.0.

Support

You can find documentation for this module with the perldoc command.

    perldoc Net::Route

You can also look for information at:

•

RT: CPAN's request tracker

<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Net-Route>

•

AnnoCPAN: Annotated CPAN documentation

<http://annocpan.org/dist/Net-Route>

•

CPAN Ratings

<http://cpanratings.perl.org/d/Net-Route>

•

Search CPAN

<http://search.cpan.org/dist/Net-Route>

Releases

5 releases since Debian 9 (Stretch); the text changed 2 times.

  1. 9–11
  2. 12
  3. 13

Bugs

Please report any bugs or feature requests to "bug-net-route at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-Route>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

Author

Created by Alexandre Storoz, "<[email protected]>"

Maintained by Thomas Equeter, "<[email protected]>"

From libnet-route-perl 0.02-4 in Debian 13 (Trixie). Parsed by carta from the page's man source.