##
sub valid_ip
{
my $bit = '[01]?\d\d?|2[0-4]\d|25[0-5]';
return $_[0] =~ /^($bit)(\.($bit)){3}/;
}
####
sub valid_ip
{
my $bits = 0;
foreach (split (/\./, $_[0]))
{
return unless /^\d+$/ && $_ >= 0 && $_ < 256;
$bits++;
}
return $bits == 4;
}
####
use Net::IPv6Addr;
sub valid_ipv6
{
return Net::IPv6Addr::ipv6_parse($_[0]);
}