InetSocketAddress ipv4 = ...; // the IPv4 address
InetSocketAddress ipv6 = ...; // the IPv6 address
Socket sock = ...; // initialize a socket
sock.bind(ipv4);
sock.connect(ipv6, 0);
双方均支持 IPv4/IPv6 双栈。
Java 可以支持这种连接吗?
如果JDK可以尝试将绑定地址转换为IPv6地址或将目标地址转换为IPv4地址?
我在连接到 IPv4 时尝试了绑定 IPv6 的情况。JDK 在连接过程中将绑定的 IPv6 地址转换为 IPv4 地址。但是在连接到 IPv6 时尝试绑定 IPv4(如上所述),我只是遇到了超时异常。我不确定这是不支持还是我的环境有问题。我想应该有一些异常表明在连接之前不支持抛出,而不是最终超时。
任何想法?谢谢。