Java中的IPv6支持
我正试图在我的本地系统上测试一个java程序对IPv6的支持。我已分配IPv6地址,并已在网络连接中禁用IPv4 当我执行Java中的IPv6支持,java,ipv6,Java,Ipv6,我正试图在我的本地系统上测试一个java程序对IPv6的支持。我已分配IPv6地址,并已在网络连接中禁用IPv4 当我执行ipconfig命令时,我将IPv6地址作为输出 然而,当我在java代码下面执行时,我会得到一个IPv4地址127.0.0.1 System.setProperty("java.net.preferIPv6Stack","true"); InetAddress addr = InetAddress.getLocalHost(); System.out.println(ad
ipconfig
命令时,我将IPv6地址作为输出
然而,当我在java代码下面执行时,我会得到一个IPv4地址127.0.0.1
System.setProperty("java.net.preferIPv6Stack","true");
InetAddress addr = InetAddress.getLocalHost();
System.out.println(addr.getHostAddress());
根据我的理解,上述代码应打印0:0:0:0:0:0:0:1
我错过什么了吗?你可以上课
请回答这个问题。
问题已解决。我设置了错误的系统属性。需要设置的正确系统属性为
System.setProperty("java.net.preferIPv6Addresses","true")
设置此属性后,将显示在网络连接中分配的IPv6地址
可以使用以下代码检索IPv6环回地址
InetAddress.getLoopbackAddress().getHostAddress()
问题解决了。我设置了错误的系统属性。正确的属性是
System.setProperty(“java.net.preferipv6address”,“true”)
您的问题本身就是解决方案吗?当我问这个问题时,我不知道解决方案。@vinod请将其作为答案写下来(可能立即),并将其标记为已接受(可能在两天后)@vinod如果你能在这里分享你的解决方案,那就太好了。
InetAddress.getLoopbackAddress().getHostAddress()