Provided by: libio-interface-perl_1.06-1build2_amd64
NAME
IO::Interface::Simple - Perl extension for access to network card configuration information
SYNOPSIS
use IO::Interface::Simple; my $if1 = IO::Interface::Simple->new('eth0'); my $if2 = IO::Interface::Simple->new_from_address('127.0.0.1'); my $if3 = IO::Interface::Simple->new_from_index(1); my @interfaces = IO::Interface::Simple->interfaces; for my $if (@interfaces) { print "interface = $if\n"; print "addr = ",$if->address,"\n", "broadcast = ",$if->broadcast,"\n", "netmask = ",$if->netmask,"\n", "dstaddr = ",$if->dstaddr,"\n", "hwaddr = ",$if->hwaddr,"\n", "mtu = ",$if->mtu,"\n", "metric = ",$if->metric,"\n", "index = ",$if->index,"\n"; print "is running\n" if $if->is_running; print "is broadcast\n" if $if->is_broadcast; print "is p-to-p\n" if $if->is_pt2pt; print "is loopback\n" if $if->is_loopback; print "is promiscuous\n" if $if->is_promiscuous; print "is multicast\n" if $if->is_multicast; print "is notrailers\n" if $if->is_notrailers; print "is noarp\n" if $if->is_noarp; }
DESCRIPTION
IO::Interface::Simple allows you to interrogate and change network interfaces. It has overlapping functionality with Net::Interface, but might compile and run on more platforms. Class Methods $interface = IO::Interface::Simple->new('eth0') Given an interface name, new() creates an interface object. @iflist = IO::Interface::Simple->interfaces; Returns a list of active interface objects. $interface = IO::Interface::Simple->new_from_address('192.168.0.1') Returns the interface object corresponding to the given address. $interface = IO::Interface::Simple->new_from_index(2) Returns the interface object corresponding to the given numeric index. This is only supported on BSD-ish platforms. Object Methods $name = $interface->name Get the name of the interface. The interface object is also overloaded so that if you use it in a string context it is the same as calling name(). $index = $interface->index Get the index of the interface. This is only supported on BSD-like platforms. $addr = $interface->address([$newaddr]) Get or set the interface's address. $addr = $interface->broadcast([$newaddr]) Get or set the interface's broadcast address. $addr = $interface->netmask([$newmask]) Get or set the interface's netmask. $addr = $interface->hwaddr([$newaddr]) Get or set the interface's hardware address. $addr = $interface->mtu([$newmtu]) Get or set the interface's MTU. $addr = $interface->metric([$newmetric]) Get or set the interface's metric. $flags = $interface->flags([$newflags]) Get or set the interface's flags. These can be ANDed with the IFF constants exported by IO::Interface or Net::Interface in order to interrogate the state and capabilities of the interface. However, it is probably more convenient to use the broken-out methods listed below. $flag = $interface->is_running([$newflag]) $flag = $interface->is_broadcast([$newflag]) $flag = $interface->is_pt2pt([$newflag]) $flag = $interface->is_loopback([$newflag]) $flag = $interface->is_promiscuous([$newflag]) $flag = $interface->is_multicast([$newflag]) $flag = $interface->is_notrailers([$newflag]) $flag = $interface->is_noarp([$newflag]) Get or set the corresponding configuration parameters. Note that the operating system may not let you set some of these.
AUTHOR
Lincoln Stein <lstein@cshl.org> This module is distributed under the same license as Perl itself.
SEE ALSO
perl, IO::Socket, IO::Multicast), IO::Interface, Net::Interface