debian man page for net::subnets

Query: net::subnets

OS: debian

Section: 3pm

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

Net::Subnets(3pm)					User Contributed Perl Documentation					 Net::Subnets(3pm)

NAME
Net::Subnets - Computing Subnets In Large Scale Networks
SYNOPSIS
use Net::Subnets; my $sn = Net::Subnets->new; $sn->subnets(@subnets); if (my $subnetref = $sn->check($address)) { ... } my ($lowipref, highipref) = $sn->range($subnet); my $listref = $sn->list(($lowipref, $highipref));
DESCRIPTION
Very fast matches large lists of IP addresses against many CIDR subnets and calculates IP address ranges. This is a simple and efficient example for subnet matching: use Net::Subnets; my @subnets = qw(10.0.0.0/24 10.0.1.0/24); my @addresses = qw/10.0.0.1 10.0.1.2 10.0.3.1/; my $sn = Net::Subnets->new; $sn->subnets(@subnets); my $results; foreach my $address (@addresses) { if (my $subnetref = $sn->check($address)) { $results .= "$address: $$subnetref "; } else { $results .= "$address: not found "; } } print($results); This is a simple example for range calculation: use Net::Subnets; my @subnets = qw(10.0.0.0/24 10.0.1.0/24); my $sn = Net::Subnets->new; my $results; foreach my $subnet (@subnets) { my ($lowipref, $highipref) = $sn->range($subnet); $results .= "$subnet: $$lowipref - $$highipref "; } print( $results ); This is a simple example for list generation: use Net::Subnets; my $lowip = '192.168.0.1'; my $highip = '192.168.0.100'; my $sn = Net::Subnets->new; my $listref = $sn->list(($lowip, $highip)); foreach my $address (@$listref) { # do something cool }
METHODS
"new" my $subnets = Net::Subnets->new; Creates an "Net::Subnets" object. "subnets" $subnets->subnets([qw(10.0.0.0/24 10.0.1.0/24)]); The C<subnets> method lets you prepare a list of CIDR subnets. "check" my $match = $subnets->check($address); The C<check> method lets you check an IP address against the previously prepared subnets. "range" my ($lowest, $highest) = $subnets->range($subnet) The C<range> method lets you calculate the IP address range of a subnet. "list" my $list = $subnets->list($lowest, $highest); The C<list> method lets you calculate a list containing all IP addresses in a given range.
AUTHOR
Sebastian Riedel (sri@cpan.org), Juergen Peters (juergen.peters@taulmarill.de)
COPYRIGHT AND LICENSE
Copyright (C) 2003-2009, Sebastian Riedel. This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0. perl v5.10.1 2009-12-18 Net::Subnets(3pm)
Related Man Pages
ipsec_samesubnet(3) - debian
ipsec_samesubnettype(3) - debian
ipsec_addrcmp(3) - centos
ipsec_addrinsubnet(3) - centos
ipsec_sameaddrtype(3) - centos
Similar Topics in the Unix Linux Community
HACMP subnetmasks
awk, print all ip's in subnet
Solaris box as BGB
NIM master with multiple client subnets
Bash cript to calculate summarize address