Всем привет! Пытаюсь создать сокет на yandex:80. Код такой:
Stirng AddrAsStr="yandex.ru";
int port = 80;
InetAddress AddrAsIAddr = null;
//Определяем интернет адрес
try {
AddrAsIAddr = AddrAsIAddr.getByName(AddrAsStr);
} catch (Exception e) {
System.out.println("Could not get IP-address");
System.exit(-1);
};
//Пытаемся на него законнектиться
try {
System.out.println("Try connect to "+AddrAsIAddr+":"+port);
s = new Socket (AddrAsIAddr, port);
} catch (Exception e) {
e.printStackTrace();
System.out.println("Could not establish socket!");
System.exit(-1);
};
Вывод
Try connect to yandex.ru/77.88.21.11:80 java.net.NoRouteToHostException: Network is unreachable
at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384) at java.net.Socket.connect(Socket.java:542) at java.net.Socket.connect(Socket.java:492) at java.net.Socket.<init>(Socket.java:389) at java.net.Socket.<init>(Socket.java:232)
То есть IP адрес он нормально определил, а потом вдруг Network is unreachable??? Как такое вообще может быть?