6to4 en pratique
Mise en place d’IPv6 et 6to4 sous Windows XP/2003.
- I. Avant de commencer
- II. Prérequis
- III. Installation de la pile IPv6
- IV. Configuration de l’interface 6to4.
- V. Configuration en routeur.
- VI. Configuration d’une machine cliente
- VII. En options …
- VIII. Dépannage
- IX. Documentation et bibliographie
I. Avant de commencer :
Le support d’IPv6 sous windows XP est experimental. Ce qui veux dire pas de support garanti. En pratique, le coeur du protocole, c’est a dire les piles IP, TCP et UDP fonctionnent correctement et réagissent correctement. Il n’en est pas de même pour la gestion de la configuration. D’une part, elle n’est accessible qu’en ligne de commande, et d’autre part, de réaction quelque peu aléatoire. Mais une fois la configuration faite, vous ne devriez pas rencontrer de problèmes (mis a part que pour le moment, les logiciels clients sont aux abonnés absents).
II. Prérequis :
Utilisation de NetSH
Malheuresement peu connu, netsh est une interface en ligne de commande pour la configuration réseau sous windows.
Contextes : Les contextes netsh permettent de paramètrer un aspect de la configuration réseau. On passe d’un contexte à l’autre en tapant son nom.
A tout moment et dans tout contexte, la commande « help » donne la liste des commandes.
Notes :
Les commandes de netsh peuvent êtres abrégées jusqu’a limite d’ambiguité, ainsi la commande suivante :
add route prefix=2002:c058:6301:1::/64 interface=lan publish=yes preferredlifetime=2h
est équivalente à
ad ro 2002:c058:6301:1::/64 lan pub=y preferr=2h
Ceci afin de simplifier la saisie des commandes au clavier.
La commande dump permet d’afficher la liste des commandes qu’il faudrait utiliser pour obtenir la configuration en cours.
Nommage des interfaces réseau
Nous alons utiliser netsh pour configurer notre réseau. Pour désigner les interfaces, netsh attend soit un numéro d’interface, soit le nom (ou une partie du nom) de l’interface. Par défaut, les interfaces réseau sous windows ont des noms peu explicites, mais surtout peu pratique à tapper en ligne de commande.
Il est donc conseillé de commencer par renommer les interfaces réseau. Pour cela, il suffit de se rendre dans la section « connexions réseau » du panneau de configuration et de choisir « renommer » dans le menu contextuel associé a chaque connexion.
III. Installation de la pile IPv6
Commencez par lancer une console, puis executez netsh.
Placez vous dans le contexte ipv6 et lancez l’instalation en tapant :
netsh>int ipv6 netsh interface ipv6>install Ok.
Ceci va installer la pile IPv6 pour toutes les interfaces du systeme. Listez ensuite les interfaces :
netsh interface ipv6>show interface Querying active state... Idx Met MTU State Name --- ---- ----- ------------ ----- 6 0 1500 Connected LAN 5 0 1500 Connected Internet 4 2 1280 Disconnected Teredo Tunneling Pseudo-Interface 3 1 1280 Connected 6to4 Tunneling Pseudo-Interface 2 1 1280 Connected Automatic Tunneling Pseudo-Interface 1 0 1500 Connected Loopback Pseudo-Interface
Nous n’utiliserons pas térédo, ni ISATAP pour le moment, il est donc préférable de désactiver ces services de tunnel pour le moment.
netsh interface ipv6>isatap set state disabled Ok. netsh interface ipv6>set teredo disabled Ok.
Note : cette dernière commande arrète le service térédo, mais ne supprime pas completement l’interface. Elle continue à être listée dans la liste des interfaces disponibles. Si ceci est un inconvénient, il est possible de la supprimer completement.
On peut maintenant afficher les addresses des interfaces restantes.
netsh interface ipv6>show address Querying active state... Interface 6: LAN Addr Type DAD State Valid Life Pref. Life Address --------- ---------- ------------ ------------ ----------------------------- Link Preferred infinite infinite fe80::20c:29ff:fe3c:d384 Interface 5: Internet Addr Type DAD State Valid Life Pref. Life Address --------- ---------- ------------ ------------ ----------------------------- Link Preferred infinite infinite fe80::20c:29ff:fe3c:d37a ....
IV. Configuration de l’interface 6to4.
La configuration 6to4 de windows propose une configuration automatique du routage pour les autres machines du LAN. Cependant, le support de 6to4 n’étant qu’expérimental, il se trouve que le comportement de cette configuration automatique est quelque peu aléatoire. Nous alons donc commencer par désactiver cette fonction.
netsh interface ipv6>6to4 set routing disabled Ok.
Nous allons maintenant préciser le serveur 6to4 à utiliser, puis activer le tunnel.
netsh interface ipv6>6to4 set relay 192.88.99.1 enabled interval=12 Ok. netsh interface ipv6>6to4 set state enabled undo=disabled Ok.
Voilà. 6to4 est configuré. On peut maintenant vérifier tout ca en affichant les paramètres de l’interface, et en tentant un ping.
netsh interface ipv6>show address 6to4 Querying active state... Interface 3: 6to4 Tunneling Pseudo-Interface Unicast Address : 2002:3e93:8ba7::3e93:8ba7 ... netsh interface ipv6>exit C:\>ping 2001:660:7101::7 Pinging 2001:660:7101::7 from 2002:3e93:8ba7::3e93:8ba7 with 32 bytes of data: Reply from 2001:660:7101::7: time=93ms Reply from 2001:660:7101::7: time=89ms ...
On remarque qu’une route par défaut, ainsi qu’une route vers les autres adresses 6to4 ont été automatiquement ajoutées à la table de routage :
netsh interface ipv6>show route Querying active state... Publish Type Met Prefix Idx Gateway/Interface Name ------- -------- ---- ------------------------ --- --------------------- yes Manual 1001 2002::/16 3 6to4 Tunneling Pseudo-Interface yes Manual 1101 ::/0 3 2002:c058:6301::c058:6301
V. Configuration en routeur.
Maintenant que nous avons obtenu un préfixe /48 correspondant à notre IPv4 publique, nous alons configurer notre machine pour annoncer une partie de ce préfixe sur l’interface réseau local et, bien sur, assurer le routage des paquets entre cette interface et le tunnel.
Il nous faudra donc : ajouter la route avec les paramètres correspondant.
netsh interface ipv6>add route 2002:3e93:8ba7:1::/64 lan publish=yes preferredlifetime=2h Ok.
Activer le routage des paquets sur l’interface 6to4.
netsh interface ipv6>set int 6to4 forward=enabled Ok.
Et pour finir, activer le routage et l’annonce sur l’interface locale.
netsh interface ipv6>set int lan forward=en adv=en Ok.
On pourra vérifier que la route correspondant a bien été créée, et que l’interface s’est auto-attribuée une IP correspondant au préfixe annoncé.
netsh interface ipv6>show route Querying active state... Publish Type Met Prefix Idx Gateway/Interface Name ------- -------- ---- ------------------------ --- --------------------- yes Manual 0 2002:3e93:8ba7:1::/64 6 LAN yes Manual 1001 2002::/16 3 6to4 Tunneling Pseudo-Interface yes Manual 1101 ::/0 3 2002:c058:6301::c058:6301 netsh interface ipv6>show add lan Querying active state... Interface 6: LAN Addr Type DAD State Valid Life Pref. Life Address --------- ---------- ------------ ------------ ----------------------------- Temporary Preferred 6d23h53m20s 1h56m16s 2002:3e93:8ba7:1:48fc:ca98:7d44:d421 Public Preferred infinite 1h56m16s 2002:3e93:8ba7:1:20c:29ff:fe3c:d384 Link Preferred infinite infinite fe80::20c:29ff:fe3c:d384 Anycast 2002:3e93:8ba7:1::
VI. Configuration d’une machine cliente
Pour une machine cliente du réseau locale, la configuration est on ne peut plus simple, il suffit d’installer la pile IPv6, l’autoconfiguration fesant le reste.
C:\>netsh int ipv6 install Ok. C:\>ping -6 www.info.unicaen.fr Pinging panoramix.info.unicaen.fr [2001:660:7101::7] from 2002:3e93:8ba7:1:6001:812f:d8e5:b2d3 with 32 bytes of data: Reply from 2001:660:7101::7: time=97ms Reply from 2001:660:7101::7: time=96ms
VII. En options …
Configuration d’une IPv6 « fixe »
Les adresses ipv6 autoconfigurées ne sont pas des plus simples à retenir. Il peut donc être interressant de fixer une adresse sur une interface donnée.
C:\>netsh int ipv6 add address lan 2002:3e93:8ba7:1::20 Ok.
Affichage du « Destination Cache » et du « Neighbor Cache »
C:\>netsh int ipv6 show destination Interface 4: nVidia PMTU Destination Address Next Hop Address ---- --------------------------------------------- -------------------------- 7154 2001:660:7101::7 fe80::240:f4ff:fea8:6bd5 ... 7154 2001:660:7101::6 fe80::240:f4ff:fea8:6bd5 C:\>netsh int ipv6 show neighbor Interface 4: nVidia Internet Address Physical Address Type --------------------------------------------- ----------------- ----------- fe80::240:f4ff:fea8:6bd5 00-40-f4-a8-6b-d5 Stale (router) fe80::211:d8ff:fe37:c938 00-11-d8-37-c9-38 Permanent 2002:3e93:8ba7:1:211:d8ff:fe37:c938 00-11-d8-37-c9-38 Permanent 2002:3e93:8ba7:1:6001:812f:d8e5:b2d3 00-11-d8-37-c9-38 Permanent ...
VIII. Dépannage :
Il peux arriver qu’un changement de configuration n’aie pas lieu. Par exemple, une activation ou désactivation d’une option. Généralement, activer, puis désactiver l’option en question (ou inversement selon le résultat souhaité) permet de résoudre le problème.