Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 已连接的UDP套接字未向双堆栈计算机上仅IPv6的服务器应用程序发送数据报_Java_Sockets_Udp_Ipv6 - Fatal编程技术网

Java 已连接的UDP套接字未向双堆栈计算机上仅IPv6的服务器应用程序发送数据报

Java 已连接的UDP套接字未向双堆栈计算机上仅IPv6的服务器应用程序发送数据报,java,sockets,udp,ipv6,Java,Sockets,Udp,Ipv6,我期望以下代码将数据报发送到任何ipv4/ipv6服务器应用程序,但在我的双堆栈框中,它不会将数据报发送到仅ipv6的服务器应用程序,我需要使用回圈文字:“1”而不是“localhost”来实现它 DatagramSocket datagramSocket = new DatagramSocket(); datagramSocket.connect(InetAddress.getByName("localhost"),8086); datagramSocket.send(new Datagram

我期望以下代码将数据报发送到任何ipv4/ipv6服务器应用程序,但在我的双堆栈框中,它不会将数据报发送到仅ipv6的服务器应用程序,我需要使用回圈文字:“1”而不是“localhost”来实现它

DatagramSocket datagramSocket = new DatagramSocket();
datagramSocket.connect(InetAddress.getByName("localhost"),8086);
datagramSocket.send(new DatagramPacket("hello".getBytes(), "hello".length()));

我会错过什么?我如何编写使用“连接”并能够将数据报发送到在双堆栈框上运行的任何纯ipv4或纯ipv6服务器应用程序的协议独立UDP客户端?

确保
java.net.preferIPv4Stack=false
,并确保
/etc/hosts
文件实际包含从
localhost
::1