$S = IO::Socket::INET->new( PeerAddr => "some.unreachable.ip:80", Proto => "tcp", Timeout => 1) or die "Couldn't connect: " . ($! ? $! : $@); # this too: $S = IO::Socket::INET->new(Proto=>"tcp", Timeout=>1); $sin = sockaddr_in(80, inet_aton("some.unreachable.ip")); $S->connect($sin) or die "Couldn't connect: " . ($! ? $! : $@);