TCP\IP client - EHOSTUNREACH (No route to host)

The no route error indicates that when the TCP connection was attempted, the connection failed because the underlying protocol software could not find a network node to network node route to the designated target node.

The fix is somewhat operating system dependent but it mainly requires you to set up your routing tables so that the device from which you are trying to connect is able to figure out how to reach the device to which you want to connect.

Normally you specify a gateway to which when you attempt to connect, the connection request goes out the network gateway to be resolved by other information technology devices such as routers, etc.

This looks to be an Android device, so the first thing is to make sure that you have connectivity whether WiFi or cell. Another would be to make sure that the WiFi or cell is turned on and operational.

The IP address you specify is normally within a private sub-net. So thing to check is is whether the device that you are trying to connect to is on the same sub-net that your device is on.

Here is a document on sub-nets and routing.

Quote from comment on Android by user destenson

A comment from user destenson on May-13-2017 adds this additional information specific to Android and the error messages provided in the posting.

Since this is android the first thing you need to look at is permissions. 09-21 01:08:40.457: W/System.err(8536): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85) indicates that the connection was denied by policy on the device.


This looks like a networking problem not a Java problem. Either:

  • the networking on the client either doesn't know how to route packets to the server,
  • the client's connection attempt on port 4449 is being blocked by a firewall or packet filter, or
  • you are using the wrong IP address.

(The "No route to host" message suggests that it is the first problem, but firewalls are sometimes configured to give misleading responses to traffic that is unwanted.)

Anyway, you would be better off looking for a site on how to configure and / or networks and routing.