How do I check if an IP is alive in java?

michdraft picture michdraft · Nov 28, 2011 · Viewed 14.4k times · Source

There are 5 devices in my network with different IP addresses. I wish to connect to these devices and get data from them over TCP/IP socket when they are available in my network. How can I check if they are available in java?

public void setUpConnection() {
    try {
        Socket client = new Socket(hostIp, hostPort);
        socketReader = client.getInputStream();
        socketWriter = new PrintWriter(client.getOutputStream());
    } catch (UnknownHostException e) {
        System.out.println("Error setting up socket connection: unknown host at " +   hostIp);
        System.out.println("host: " + hostIp + "port: " + hostPort);
    } catch (IOException e) {
        System.out.println("Error setting up socket connection: " + e);
        System.out.println("host: " + hostIp + "port:" + hostPort);
    }
}

Answer

Gonzalo Garcia Lasurtegui picture Gonzalo Garcia Lasurtegui · Nov 28, 2011
InetAddress.getByName(host).isReachable(timeOut);

Further reference here