in reply to Net:Addr

I went to report the doc error, and found a major, easy-to-fix bug that's been ignored for two years. ipv4_chkip will pass any string of four or more integers between 0 and 255 connected by .'s. The deal-breaker here is the 'four or more' instead of 'exactly four.'

So I can't recommend it. Perhaps try Regexp::Common instead.

use Net::IPv4Addr qw(:all); use Regexp::Common qw(net); my @var = qw( 12324.123.12.1; print "Net::IFv4Addr:\n"; ipv4_chkip($_) and print "$_ is good\n" for @var; print "Regexp::Common:\n"; /^$RE{net}{IPv4}$/ and print "$_ is good\n" for @var;


Net::IFv4Addr: is good is good Regexp::Common: is good

Note that you do need to anchor the start and end of the regexp with ^ and $, 'cause just /$RE{net}{IPv4}/ would match 312.45.32.4.