- or download this
use strict;
use Socket;
...
my $subnet_ip = Socket::inet_ntoa pack "N", $subnet_ipn;
printf "%-20s %s %x %s\n","$ip/$len",$ipn,$maskn,$subnet_ip;
}
- or download this
IP IPN Mask Subnet
192.168.1.1/30 3232235777 3fffffffc 192.168.1.0
...
192.168.1.8/30 3232235784 3fffffffc 192.168.1.8
192.168.1.9/30 3232235785 3fffffffc 192.168.1.8
etc
- or download this
$subnets{"$ip,$len"}{ipn} = $ipn;
$subnets{"$ip,$len"}{maskn} = $maskn;
if ( $subnets{"$ip,$len"}{'comment'} eq '' ){
$subnets{"$ip,$len"}{'comment'} = $comment;
}
- or download this
$subnets{"$ip,$len"} = { ipn => $ipn, maskn => $maskn };
- or download this
print "subnet,prefix,name\n";
print "$_,$subnet{$_}{'comment'}\n"
for sort { $subnets{$a}{ipn} <=> $subnets{$b}{ipn} };