# local addresses are 192.168.x.x 10.x.x.x 127.0.0.1 172.16.x.x my @addrs = qw(61.177.172.64 110.53.183.252 195.154.47.194 110.53.183.252 190.96.252.188 221.194.47.243 10.1.1.1 100.1.1.1 192.168.0.1 127.0.0.1 172.16.0.1 172.17.0.1 ); $local_ip_match = "m/^192\.168\.|^10\.|^127\.0\.|^172\.16\./"; while (@addrs) { my $s = shift @addrs; if ($s =~ $local_ip_match) { print "got Local IP $s\n"; } else { print "got Internet IP $s\n"; } }