0
我們有使用UDP套接字進行通信的代碼。在此代碼中,應用程序正在向給定服務器發送數據包(由給定的主機名和端口標識)。此代碼是從大型代碼庫中提取出來的。IOException網絡無法訪問
class Test {
private static int UDP_PORT_NUMBER=15000;
public static void main(String args[]) {
String host = 「192.168.2.10」;
byte[] bytes = {(byte)0xd1, 0x35, (byte)0x39, (byte)0xea, (byte)0xa2, (byte)0xd8};
DatagramSocket datagramSocket = new DatagramSocket();
final InetAddress inetAddress = InetAddress.getByName(host);
final DatagramPacket sendPacket = new DatagramPacket(bytes, bytes.length,
inetAddress, UDP_PORT_NUMBER);
datagramSocket.send(sendPacket);
}
}
不過,我在我們的例子中得到以下異常,同時呼籲發送有關數據報套接字:
java.io.IOException: Network is unreachable
at java.net.PlainDatagramSocketImpl.send(Native Method) ~[?:1.8.0_91]
at java.net.DatagramSocket.send(DatagramSocket.java:693) ~[?:1.8.0_91]
什麼是網絡的UDP無法訪問的意義,它是如何獲得被檢測爲UDP這是連接?在UDP套接字中可以發生網絡不可達IOException的情況是什麼?
Imo _network unreachable_與UDP或TCP無關,因爲它發生在OSI模型的第3層。根本沒有路由到請求的IP地址。 – Matt
這將有助於知道你運行這臺機器的IP地址是什麼。 – RealSkeptic
第一步 - 你能ping通地址嗎? –