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通地址吗? –