IPv6 – Les mécanismes de transition de IPv4 vers IPv6 – RFC 1752. Le principal objectif de la transition
vers IPv6 est double, il doit permettre à des stations de travail implémentant IPv6 et/ou IPv4 de
communiquer entre-elles ainsi qu’à des stations et des routeurs IPv6 d’être déployés sur l’Internet de
manière incrémentale et à grande échelle. A ceci, un troisième objectif sous-jacent consiste à proposer une
transition la plus simple possible pour tous les utilisateurs finaux, les administrateurs de réseaux et les
opérateurs réseaux.
SIT (Simple IPv6 Transition) représente l’ensemble des mécanismes implémentés dans les stations de
travail et les routeurs choisis afin d’assurer la transition d’IPv4 à IPv6.
La transition vers IPv6 se fera en deux temps :
- Seront d’abord introduites des stations supportant les deux versions, qui communiqueront en encapsulant
les datagrammes IPv6 dans les datagrammes IPv4 (tunneling), de manière à traverser les routeurs en place
implémentant IPv4.
- Puis de nouveaux routeurs (dotés d’un logiciel IPv6) assureront les fonctions d’encapsulation / de
désencapsulation ou celles de traduction. Ainsi, ces deux modes de communication seront donc possibles :
l’encapsulation des datagrammes et/ou la traduction de l’en-tête IP. Cette étape est particulièrement
cruciale, puisqu’elle met en jeu la viabilité même d’Internet.
La modification de la taille des adresses a des conséquences sur l’usage des protocoles de l’IETF et de ceux
qui sont associés à IP. Ainsi, ARP, RARP, BOOTP ou ICMP doivent être modifiés, tout comme les
protocoles de routage RIP (version 2), IDRP, OSPF, BGP, IS-IS. Enfin, une grande partie des protocoles de
niveau supérieur, FTP, DNS, SNMP devront prendre en compte cette migration.
Afin de faciliter la transition vers IPv6, un certain nombre de mécanismes obligatoires et optionnels sont
définis comme ceux évoqués précédemment.
- L’utilisation conjointe d’adresses IPv4 et IPv6.
- La modernisation et, par conséquent, l’apparition de nouveaux routeurs et stations de travail.
- Le déploiement de serveurs DNS susceptibles de traiter des formats d’adresses de type IPv6.
- La mise en oeuvre de plans permettant la transition des sites individuels Internet vers IPv6.
- La mise en oeuvre de plans permettant la transition globale du monde de l’Internet à IPv6.
Cependant, ces objectifs ne pourront se réaliser aisément sans les caractéristiques suivantes définies dans
SIT :
- Une adaptation facile. Les stations de travail et les routeurs actuels supportant IPv4 doivent s’adapter à
IPv6 à tout moment sans recourir à d’autres stations ou routeurs intégrant déjà IPv6.
- Un nouveau déploiement aisé. Les nouveaux routeurs et stations IPv6 doivent être installés à tout
moment sans pré requis particuliers.
- Un adressage facile. La structure d’adressage IPv4 actuelle doit pouvoir être réutilisée pour IPv6. Lorsque
des stations de travail et des routeurs IPv4 sont adaptés au mode IPv6, ils ont la possibilité de continuer à
utiliser leurs adresses initiales sans avoir recours à de nouvelles adresses.
- Une diminution des coûts de démarrage. Ce dernier aspect est une nécessité pour permettre une
évolution d’IPv4 à IPv6 et surtout le déploiement croissant du nouvel IPv6.
Rappel : La notation utilisée pour représenter une adresse IPv6 est la suivante :
xxxx : xxxx : xxxx : xxxx : xxxx : xxxx : ddd . ddd . ddd . ddd
où x représente un chiffre en hexadécimal et d, un chiffre décimal ; chaque groupe de nombres
hexadécimaux séparé par « : » représente 16 bits de l’adresse ; chaque groupe de nombres décimaux séparé
par « . » représente 8 bits de l’adresse ; soit une adresse totale de 128 bits.
Les mécanismes de transition vers IPv6 introduisent un certain nombre de termes :
- Types de noeuds :
o IPv4-only node : Un noeud IPv4-only (ou purement IPv4) ne comprend pas IPv6. Il a été installé
avant la transition. Il se réfère à un routeur ou une station qui implémente seulement IPv4.
o IPv4/IPv6 (dual) node : Un noeud IPv4/IPv6 (ou mixte) dual se réfère à un routeur ou une station qui
reconnaît à la fois IPv4 et IPv6.
o IPv6-only node : Un noeud IPv6-only (ou purement IPv6) se réfère à un routeur ou une station qui
implémente IPv6 et pas IPv4. Il ne permet pas l’encapsulation des datagrammes IPv4 dans IPv6 et
accepte uniquement des mécanismes intégrant IPv6.
o IPv6 node : Tout routeur ou station qui utilise IPv6 y compris IPv4/IPv6 (dual) node et IPv6-only
node.
o IPv4 node : Tout routeur ou station qui utilise IPv4 y compris IPv4/IPv6 (dual) node et IPv4-only
node.
o IPv6/IPv4 header translating router : Un routeur IPv6/IPv4 qui réalise la traduction des en-têtes
IPv6/IPv4.
Types d’adresses IPv6 :
o IPv4-compatible IPv6 address : Une adresse, se référant à un noeud IPv6, qui peut être utilisée à la
fois pour des paquets IPv4 ou IPv6. Une adresse IPv4-compatible IPv6 inclut une adresse IPv4
contenue dans les 32 derniers bits. Les 96 premiers bits supportent le préfixe suivant <<0 : 0 : 0 : 0 :
0 : FFFF>>. Ainsi, la totalité des 128 bits de l’adresse peut être utilisée pour l’envoi de paquets IPv6 ;
suivant le même raisonnement, les 32 derniers bits de l’adresse permettent l’envoi de paquets IPv4.
Des adresses IPv4-compatible IPv6 identifient toujours des noeuds IPv6/IPv4 ou IPv6-only, mais
jamais des noeuds IPv4-only.
o IPv4-mapped IPv6 address : L’adresse d’un noeud IPv4-only est représentée comme une adresse
IPv6. Une adresse IPv4-mapped IPv6 inclut une adresse IPv4 contenue dans les 32 derniers bits.
Les 96 premiers bits supportent le préfixe suivant <<0 : 0 : 0 : 0 : 0 : 0>>. Ainsi, l’adresse d’un noeud
IPv4-only peut être utilisée dans un espace d’adressage IPv6 en rajoutant le préfixe <<0 : 0 : 0 : 0 : 0
: 0>> à son adresse IPv4. Des adresses IPv4-mapped IPv6 identifient toujours des noeuds IPv4-
only, mais jamais des noeuds IPv6/IPv4 ou IPv6-only.
o IPv6-only address : Une adresse IPv6 n’intègre pas forcément une adresse IPv4 dans ses 32
derniers bits et peut avoir d’autres préfixes que ceux précédemment décrits. Des adresses IPv6-only
identifient toujours des noeuds IPv6/IPv4 ou IPv6-only, mais jamais des noeuds IPv4-only.
- Types d’infrastructures de routage :
o IPv4-complete area : Un domaine d’infrastructure qui route entièrement IPv4.
o IPv6-complete area : Un domaine d’infrastructure qui route entièrement IPv6.
- Techniques utilisées pour la transition :
o IPv6-over-IPv4 tunneling : Une technique d’encapsulation des paquets IPv6 à l’intérieur de paquets
IPv4 telle qu’ils puissent traverser un domaine IPv4-complete. IPv6-over-IPv4 tunneling est aussi
appelée IPv6-in-IPv4 encapsulation.
o IPv6/IPv4 header translation : Une technique permettant la traduction des en-têtes Internet des
paquets IPv6 dans des paquets IPv4 ou inversement, de telle sorte que les stations de travail IPv4-
only et IPv6-only puissent communiquer.
Les étapes du modèle de transition SIT
Le modèle de transition vers IPv6 repose sur deux règles fondamentales. La première étant que l’Internet
adoptera IPv6 de manière évolutive sur une période de temps échelonnée. La deuxième règle envisage une
transition vers IPv6 à des niveaux et des moments différents selon les sites considérés.
Les techniques de transition ont pour objectif d’optimiser les deux phases de transition vers IPv6 :
- La première étape, le passage d’IPv4-only à Dual IPv6/IPv4, se réalise assez facilement.
- La seconde phase, la transition à une infrastructure IPv6-only qui maintient la possibilité de communiquer
avec des noeuds IPv4, nécessite davantage d’efforts. En effet, les routeurs traducteurs (translating routers)
doivent être déployés avant qu’une infrastructure IPv6-only ne puisse être construite.
La fin de la transition d’un site s’effectue lorsque ce dernier n’a plus besoin de communiquer avec
l’environnement IPv4. L’arrêt de l’interconnexion avec IPv4 relève donc véritablement d’une décision propre
au site lui-même.
Les principaux composants de SIT
La transition vers IPv6 accepte l’implémentation de trois différents types de stations de travail et routeurs :
les noeuds IPv4-only, les noeuds IPv6/IPv4, les noeuds IPv6-only. En outre, à ces éléments, il faut aussi
ajouter les routeurs de traduction d’en-têtes IPv6/IPv4, dont le rôle est particulièrement important afin
d’assurer la transformation de paquets IPv4 en paquets IPv6 ou inversement.
Les noeuds IPv6/IPv4 dual sont des stations de travail ou des routeurs qui supportent les implémentations
IPv4 et IPv6.
L’adressage dans SIT :
Exemple du format d’adresse IPv4-Compatible IPv6. Ce dernier est utilisé par les noeuds IPv6 qui désirent
communiquer avec les noeuds IPv4. Dans DNS, ces adresses sont regroupées par enregistrement de type
<<AAAA>> pour IPv6 et <<A>> pour IPv4. Ainsi, les enregistrements <<AAAA>> utilisent l’intégralité de
l’adresse, à savoir 128 bits ; alors que les autres de type <<A>> ne travaillent que sur la portion d’adresse
IPv4, c’est-à-dire 32 bits. Le raisonnement est identique pour l’autre format.
Le modèle de transition autorise une très grande flexibilité quant aux chemins que les formats d’adresse
IPv6 peuvent utiliser. Ainsi, non seulement les noeuds IPv6 peuvent supporter les deux adresses IPv4-
compatible et IPv6-only, mais ils sont aussi capables d’utiliser les deux types d’adresses simultanément. Ce
qui signifie que les noeuds IPv6 pourront s’adapter à des environnements utilisant d’autres types d’adresses.
Les différentes topologies et les mécanismes utilisés dans SIT
Les topologies de routage se scindent en deux catégories.
- Les IPv4-complete areas sont des topologies entièrement connectées via le routage IPv4 où il existe au
moins un routeur IPv4 rattaché à chaque sous-réseau du domaine IPv4-complete. Ces domaines peuvent
cependant bénéficier d’un routage IPv6 partiel vers d’autres sous-réseaux sans pour autant nécessiter un
routage IPv6. Les domaines IPv4-complete connaissent quelques limites ; ainsi, seules les stations de
travail de type IPv4-only et IPv6/IPv4 peuvent être librement déployées au sein de ces domaines.
- Les IPv6-complete areas sont des topologies entièrement connectées via le routage IPv6 où il existe au
moins un routeur IPv6 rattaché à chaque sous-réseau du domaine IPv6-complete. Ces domaines peuvent
cependant bénéficier d’un routage IPv4 partiel vers d’autres sous-réseaux. Comme précédemment, seules
les stations de type IPv6-only et IPv6/IPv4 peuvent être librement déployées au sein des domaines IPv6-
complete.
Il est intéressant de noter qu’une topologie peut être à la fois IPv4-complete et IPv6-complete dans le cas
d’un routage <<dual>> sur tous les sous-réseaux. Ces situations s’avèrent normalement plus simples à
traiter.
En revanche, il est impossible de traiter un domaine constitué d’un mélange de routeurs IPv4-only et IPv6-
only. Une telle topologie ne peut pas fonctionner dans la mesure où ces deux types de routeurs ne peuvent
pas s’échanger leurs paquets sans un protocole commun.
Les tailles des domaines sont relativement flexibles : un seul noeud peut être traité comme un domaine voire
comme l’Internet.
Première technique de transition : IPv6-over-IPv4 Tunneling :
Les paquets IPv6 ont la possibilité de traverser des segments reposant sur une typologie IPv4-complete
grâce à la technique d’encapsulation (tunneling) IPv6-over-IPv4. Ainsi, concrètement et à titre d’exemple, un
noeud IPv6/IPv4 cherchant à atteindre un autre noeud IPv6/IPv4 en passant par une typologie IPv4-complete
peut voir ses paquets IPv6 arriver à destination en les encapsulant dans des en-têtes IPv4. Bien entendu,
dans ce cas, les deux noeuds doivent disposer d’adresses IPv4 compatible IPv6. Les 32 derniers bits de ces
adresses sont utilisés comme les adresses source et destination de l’en-tête d’encapsulation IPv4.
Deux types d’encapsulation se dégagent dans SIT.
- Les « Automatic tunnels » permettent de délivrer des paquets IPv6 à travers tous les chemins en direction
des destinataires finaux.
- Les « Configured tunnels » sont utilisés pour délivrer des paquets IPv6 à un routeur intermédiaire IPv6/IPv4.
Ces deux types d’encapsulation utilisent néanmoins des adresses IPv4 intégrées dans des adresses IPv4-
compatible IPv6. A la différence près que, lors de l’encapsulation automatique, l’adresse de « tunnel endpoint »
considérée résulte d’une adresse IPv4 intégrée dans une adresse destination IPv6 sans informations de
configuration préalables ; tandis que, lors de l’encapsulation configurée, l’adresse de « tunnel endpoint »
considérée est celle du routeur IPv6/IPv4 intermédiaire, cette adresse doit donc posséder une information de
routage issue soit de la table de routage d’une station de travail, soit de l’information de routage d’un routeur
voisin.
Il est intéressant de remarquer que la technique de l’encapsulation automatique est une des caractéristiques
propres aux mécanismes de transition vers IPv6.
o Automatic IPv6-over-IPv4 Tunneling
L’encapsulation automatique est généralement utilisée entre des stations de travail IPv6/IPv4 connectées sur
un domaine IPv4-complete commun.
o Configured IPv6-over-IPv4 Tunneling
L’encapsulation peut aussi être utilisée entre deux routeurs IPv6/IPv4 ou bien entre une station et un routeur
IPv6/IPv4. Dans ces situations, le paquet de destination final circule via un routeur intermédiaire.
o Le principe d’adressage utilisé
Excepté dans le cas des routeurs de traduction d’en-tête (header translating routers), lors de l’utilisation de
routeurs intermédiaires, le routage des paquets repose entièrement sur les en-têtes IPv4. Le tableau suivant
résume les situations suivant les deux techniques d’encapsulation.
o Les décisions d’envoi des paquets par les stations de travail
Lorsque des paquets IPv6 sont envoyés, la station IPv6/IPv4 doit décider de la technique à utiliser IPv6-
over-IPv4 tunneling ou non. Dans la réalité, il est préférable d’envoyer des paquets IPv6 via des routeurs
IPv6 plutôt qu’en utilisant la technique d’encapsulation (tunneling) pour plusieurs raisons :
- Les paquets IPv6 non encapsulés sont plus petits que les paquets IPv6-over-IPv4,
- Le trafic peut tirer profit des caractéristiques propres au routage IPv6.
En outre, une station de travail ne sait pas explicitement si elle est rattachée à un domaine IPv4-complete ou
IPv6-complete. Dans le second cas (IPv6-complete area), il n’y aura pas de routeurs connectés à chaque
sous-réseau et la station n’enverra jamais de paquets encapsulés à la différence de la première situation
(IPv4-complete area).
Seconde technique de transition : Header Translation
La technique de traduction de l’en-tête est optionnelle, ce qui signifie que l’utilisateur peut y recourir quand il
désire autoriser la communication entre des noeuds IPv6-only et des noeuds IPv4-only. La traduction de l’entête
est assurée par les routeurs de traduction de l’en-tête (header translating routers), qui permettent
d’interconnecter des domaines IPv4-complete et IPv6-complete. Le trafic écoulé entre ces domaines peut
revêtir différentes formes :
- Terminating IPv4 traffic : les paquets IPv4 destinés à un noeud au sein d’un domaine IPv6-complete.
- Transit IPv4 traffic : les paquets IPv4 destinés à un noeud situé en dehors d’un domaine IPv6-complete,
mais traversant un tel domaine.
- Terminating IPv6 traffic : les paquets IPv6 destinés à un noeud au sein d’un domaine IPv4-complete.
- Transit IPv6 traffic : les paquets IPv6 destinés à un noeud situé en dehors d’un domaine IPv4-complete,
mais traversant un tel domaine.
- Encapsulated IPv6 traffic : les paquets IPv6 encapsulés dans des en-têtes IPv4 (cas particulier).
Les véritables traducteurs d’en-têtes sont les routeurs IPv6/IPv4. Ils opèrent en traduisant les en-têtes des
paquets IPv4 en format IPv6 et/ou inversement. Pour agir de la sorte, ils ont besoin d’informations de
configuration afin de connaître le type de paquets qu’ils ont à traduire.
- Traduction de paquets IPv4 : Les traducteurs d’en-têtes doivent traduire tous les paquets IPv4 destinés à
des noeuds localisés dans les domaines IPv6-complete ou transitant à travers ceux-ci.
- Traduction de paquets IPv6 : Les traducteurs d’en-têtes doivent traduire tous les paquets IPv6 destinés à
des noeuds localisés dans les domaines IPv4-complete ou transitant à travers ceux-ci.
Lors de la traduction des paquets IPv6 en mode IPv4, les routeurs traducteurs utilisent les 32 derniers bits
des adresses IPv6 source et destination pour produire des adresses de paquets IPv4. Bien entendu, les
adresses source et destination doivent être de type IPv4-compatible IPv6.
Lors de la traduction des paquets IPv4 en mode IPv6, les routeurs traducteurs ajoutent le préfixe <<0 : 0 : 0 :
0 : 0 : 0>> à l’adresse source IPv4 en vue de générer l’adresse source pour le paquet IPv6. Ils utilisent aussi
les préfixes <<0 : 0 : 0 : 0 : 0 : 0>> ou <<0 : 0 : 0 : 0 : 0 : FFFF>> (destination au sein d’un domaine IPv6-
complete) afin de générer l’adresse destination.
Lorsque les paquets de format IPv6-IPv4 arrivent au traducteur d’en-têtes, ils sont désencapsulés mais pas
traduits.
Cette phase est nécessaire pour réaliser l’encapsulation d’un en-tête IPv4 d’un paquet IPv6-in-IPv4 pour être
traduite au format d’en-tête IPv6.
Malgré la spécificité des techniques de transition vers IPv6, il est intéressant de noter que le processus
vraisemblablement le plus important de SIT est le respect de la chronologie des étapes de la transition vers
IPv6.
Le respect de la chronologie des étapes de la transition vers IPv6
Chaque étape de la transition vers IPv6 nécessite des pré requis tels que l’installation de noeuds IPv6/IPv4
avant le déploiement de noeuds IPv6-only. Il est important à ce stade de la migration d’avoir une vue précise
des objectifs et délais de chaque étape.
