6to4, IPv6 pour (presque) tous

Vous voulez essayer IPv6 mais votre fournisseur d’accès ne se décide pas à proposer le service et ne vous répond que par des ricanements ?

Pour se connecter en IPv6 malgré les fournisseurs grognons ou arriérés, il existe plusieurs techniques plus ou moins simples ; toutes nécessitent cependant l’établissement d’un tunnel pour se relier, depuis IPv4, à un site connecté en IPv6.

Le procédé le plus simple à ce jour s’appelle 6to4 [fr] (voir aussi la page 6to4 [en] plus complète). Il s’agit d’un système de tunnel automatique, au sens où il suffit d’utiliser des passerelles déjà en place sur Internet. La seule extrémité à configurer est celle de l’utilisateur. Cela en simplifie grandement la mise en oeuvre, qui peut théoriquement être aussi simple qu’un simple option à activer dans le système d’exploitation.
6to4, décrit dans la RFC 3056, réalise une correspondance automatique entre les adresses IPv6 préfixées par 2002::/16 et les adresses IPv4 publiques, en plaçant ces dernières dans l’adresse IPv6. Ainsi, ce blog a pour adresse IPv4 82.226.244.120. En 6to4 l’adresse correspondante commencerait par 2002:52e2:f478::/48 (inutile d’essayer, je ne l’ai pas activée) ; l’adresse IPv4 82.226.244.120 est encodée en hexadécimal en tant que 52e2:f478. On voit d’ailleurs discrètement apparaître l’avantage d’IPv6 : le nombre d’adresses disponible. À une unique adresse IPv4, 6to4 associe sans façon la bagatelle de 2^80 (soit précisément 1208925819614629174706176) adresses IPv6.

Pour entrer dans les détails intéressants, voici comment cela fonctionne.

Un certain nombre de passerelles sur l’Internet IPv4 répondent à l’adresse 192.88.99.1. On peut tenter des pings ou traceroutes sur cette adresse pour savoir où elles se trouvent. Depuis le fournisseur Cogent, par exemple, on tombe en Suisse sur swi6netCE1-G0-0.switch.ch. Depuis Free, on arrive chez titannetworks.nl, à Amsterdam.

Il est possible d’envoyer à ces passerelles des paquets IPv4 encapsulant du trafic IPv6, elles les décapsuleront et les enverront sur l’Internet IPv6. Ces mêmes passerelles récupèrent le trafic destiné aux adresses IPv6 commençant par 2002:: et effectuent l’opération inverse : elles récupèrent l’adresse IPv4 encodée derrière 2002:: comme expliqué ci-dessus, et font parvenir à cette adresse le paquet IPv6 encapsulé dans un paquet IPv4.

Finalement, 6to4 n’est donc rien d’autre qu’un tunnel classique plus deux très bonnes idées : d’abord l’encodage de l’adresse IPv4 dans l’adresse IPv6, qui permet d’éviter toute configuration ou allocation manuelle de plages d’adresses ; ensuite l’utilisation de l’adresse IPv4 anycast 192.88.99.1, qui permet une configuration automatique chez l’utilisateur et facilite la multiplication des passerelles 6to4 chez les fournisseurs pour répondre aux besoins. Il est même possible d’obtenir automatiquement une délégation de DNS IPv6 inverse !

6to4 est donc une excellente solution de démarrage pour qui veut s’initier à IPv6, à condition que le système d’exploitation le supporte (c’est le cas des Unix libres comme FreeBSD ou Linux ; c’est aussi le cas de MacOS X, avec la proverbiale facilité de configuration Apple ; cela doit même être possible avec Windows mais je n’ai pas réussi à trouver une page récente expliquant comment faire). 6to4 permet de se connecter presque à volonté à l’Internet IPv6, sans dépendre d’un fournisseur de tunnel classique ni d’un fournisseur d’accès peu coopératif.

En revanche, 6to4 est plutôt conçu pour une connexion personnelle. Il ne faut pas espérer s’en servir pour un site IPv6 à fort trafic : le routage est loin d’être optimal et encore moins maîtrisable que lors de l’utilisation d’un tunnel classique. Ainsi, le passage depuis la France par des passerelles 6to4 à Amsterdam ou en Suisse n’est pas idéal ; on ne peut pas dire que les fournisseurs français fassent preuve de beaucoup d’esprit d’initiative en la matière, mais cela est certainement amené à changer dans les années qui viennent, les fournisseurs disposant d’IPv6 natif ayant tout intérêt à proposer une passerelle locale à leurs clients pour améliorer la qualité du service.

4 thoughts on “6to4, IPv6 pour (presque) tous”

  1. 6to4 est aussi disponible avec dd-wrt ou open-wrt sur les routeurs linksys et assimilés.

  2. Oh la la,

    Merci pour toutes ces explications, mais serait-il possible de faire un schéma?
    Je suis un peu perdu là…

    Merci 🙂

Comments are closed.