Summary
Improve support for systems using IPv6. The JDK should support systems using any combination or preference for IPv4 and IPv6. Testing tools should be written to help simulate systems configured with such diverse combinations. APIs and tests that currently assume the existence of IPv4 or assume there is only one protocol (or only one IP address) should be fixed, replaced or deprecated.
Goals
We are currently (2017) in the middle of a 50 year transition from IPv4 to IPv6. During that time there may be 4 combinations of IPv4 or IPv6 only present, or both present with one preferred. All should be fully supported. In addition, IPv6 has more features than IPv4, notably
RFC 5952 A Recommendation for IPv6 Address Text Representation
which introduces ambiguity into IP addresses represented as strings.
Currently, many openjdk tests fail when run in an environment where IPv4 is non-existent, notably because 127.0.0.1 is no longer a valid IP address for the local host. All tests should pass, and hopefully various organizations will do regular testing in such environments.
- relates to
-
JDK-8170568 Improve address selection for network clients
- Open
-
JDK-8023649 java.net.NetworkInterface.getInterfaceAddresses() call flow clean up
- Open
-
JDK-8147071 java.net.NetworkInterface.getNetworkInterfaces ignores unconfigured interfaces.
- Open
-
JDK-8046500 GetIpAddrTable function failed on Pure Ipv6 environment
- Resolved
-
JDK-8015415 IPv6 support broken
- Closed
-
JDK-8131133 Receive a no route to host exception connecting to a host with an IPv6 Address.
- Closed
-
JDK-8148424 Support IPv6-only Unix environments
- In Progress
-
JDK-6500095 Inet6Address.getHostName() should not include scope id for global addresses
- Closed
- links to