IPv6 est la nouvelle norme IP dans le monde des réseaux suite à la pénurie d’adresses IPv4. Les deux protocoles sont pris en charge par Java. IPv4 utilise un adressage 32 bits tandis qu’IPv6 est 128 bits.
Comme le déclare Oracle : « IPv6 en Java est transparent et automatique. Un portage n’est pas nécessaire et il n’y a aucune recompilation à faire. Bref, tout est fait pour être le plus transparent possible et ce depuis plusieurs années. Si vous avez absolument besoin d’IPv4, vous pouvez configurer java.net.preferIPv4Stack sur true. C’est faux par défaut.
Vous devrez peut-être également simplement stocker ou manipuler des adresses IPv6. Pour ce faire, vous pouvez utiliser BigInteger pour convertir. BigInteger est une classe Java immuable particulièrement pratique pour manipuler les adresses IP sans risquer de les modifier. Bien sûr, vous pouvez convertir d’IPv6 en BigInteger et vice versa
Présentation d’Oracle : https://docs.oracle.com/javase/8/docs/technotes/guides/net/ipv6_guide/
Configuration réseau : https://docs.oracle.com/javase/7/docs/api/java/net/doc-files/net-properties.html
Tutoriel d’utilisation de BigInteger : https://www.javacodegeeks.com/convert-ipv6-to-biginteger-in-java.html