Article Tags

Mon blog

Problème avec Java et l'IPV6 IPV4

Created 01/03/2010 18:57

Depuis quelques mises à jour de ma debian (unstable) , mes processus java n'étaient plus atteignables en ipv4.

J'ai trouvé un contournement consitant à rajouter la ligne suivante dans le fichier /etc/sysctl.conf :

net.ipv6.conf.all.disable_ipv6=1

Cette modification, un peu crade, consistait à désactiver l'ipv6 sur ma machine. Je me suis satisfait de cette modification, sans chercher à comprendre plus.

Aujourd'hui je viens de trouver l'origine de mes problèmes. Un fichier  /etc/sysctl.d/bindv6only.conf a été rajouté avec à l'intérieur le flag suivant :

 net.ipv6.bindv6only = 1

Avec le commentaire suivant (qui explique tout !) :

# This sysctl sets the default value of the IPV6_V6ONLY socket option.
#
# When disabled, IPv6 sockets will also be able to send and receive IPv4
# traffic with addresses in the form ::ffff:192.0.2.1 and daemons listening
# on IPv6 sockets will also accept IPv4 connections.
#
# When IPV6_V6ONLY is enabled, daemons interested in both IPv4 and IPv6
# connections must open two listening sockets.
# This is the default behaviour of all modern operating systems.

 

En clair, les processus écoutant sur un socket ipv6 par défaut (c'est le cas de java si il détecte que l'ipv6 est disponible sur la machine) n'acceptent pas les connections entrantes ipv4. En mettant le flag à zéro tout est rentré dans l'ordre !

Liste des Commentaires

Add a Comment
 

Categories

Chercher un article

Menu