use IO::Socket::INET; for my $port ( 1..1024 ) { $sock = IO::Socket::INET->new(PeerAddr => '127.0.0.1', PeerPort => $port, Proto => 'tcp', Timeout => 2); print "Port $port ", $sock ? "OPEN\n" : "CLOSED\n"; $sock->close if $sock; }