Open a shell and ping a host is easy - doing the same in Java is hard. Before Java 5 (1.5) there was no native way to send an ICMP ping to test whether a machine is up and running. Since Java 5 there is a method in the InetAddress class which should make sending pings a trivial task. However the behaviour of this call seems to be platform dependent (based on my wireshark observations). Calling thi