#!/usr/bin/perl -w use strict; use IO::Socket::INET; my @host = ('192.168.149.3', '192.168.15.3'); my $port = '80'; my $connected; check(); sub check { for (@host){ my $sock = IO::Socket::INET->new(PeerAddr => $_, PeerPort => $port, Proto => 'tcp', timeout => '10') and $connected = 1; if ($connected) { print "$_ is listening on port $port.\n"; } else { print "$_ is NOT listening on port $port proceeding to failover.\n" && run_fix(); } } }