Mise en place du tunnel 6rd FreeQu'est-ce que 6rd ? Très simplement :
- Les paquets IPv6 sont envoyés tel quels à une machine sur le réseau, en IPv4, qu'on appelle la passerelle 6rd
- Tout ou partie de l'adresse IPv4 publique de l'abonné est encodée dans l'adresse IPv6 publique utilisée pour communiquer dans le tunnel 6rd
Forts de ce constat, nous avons besoin de deux choses :
- L'adresse IPv6 publique que l'on peut calculer
- L'adresse IPv4 de la passerelle que nous pouvons trouver grâce au Packet Sniffer
Pour illustrer le calcul de l'IPv6 je vais utiliser la fausse IPv4 suivante :
82.10.11.12On commence par exprimer l'IPv4 dans sa forme hexadécimale :
52.0A.0B.0C ou
520A0B0C tout attaché.
On prend le préfixe utilisé par Free pour le 6rd, auquel on concatène notre IPv4 :
"2a01:0e3" + "520a0b0c" = "2a01:0e3520a0b0c"
On formatte tout ça correctement pour que ça ressemble à une vraie IPv6 (groupes de 4 caractères hexa):
"2a01:0e35:20a0:b0c0"
Vous remarquerez qu'on utilise que 4 blocs de 4 caractères sur les 8 que permet IPv6. On les rajoute sous forme de 0 :
:
"2a01:0e35:20a0:b0c0:0000:0000:0000:0000"Puis en supprimant tout les zéros qui puisse l'être on trouve :
"2a01:e35:20a0:b0c0::/64" Voilà, on a le préfixe IPv6 de base associé à votre IPv4, avec son masque

Vous avez peut-être remarquer que le dernier 0 ne fait pas partie de notre adresse IPv4. En effet, Free donne 16 préfixes IPv6 à chacun de ses clients en 6rd :
"2a01:e35:20a0:b0c0::/64"
"2a01:e35:20a0:b0c1::/64"
"2a01:e35:20a0:b0c2::/64"
...
"2a01:e35:20a0:b0cf::/64"
Ça nous servrira pour la suite. On utilise ensuite l'outil bien utile "Packet Sniffer" sur l'interface sfp-sfpplus1.
Lancez la capture.
Il faut maintenant générer du traffic *depuis Internet* vers une IPv6 arbitraire de votre préfixe, par exemple 2a01:e35:20a0:b0c0::1.
Evidemment, les pings vont échouer car votre installation n'est pas complète et l'IPv6 est bidon. C'est normal. Attendez encore quelques secondes et stopper la capture.
Téléchargez le fichier pcap et ouvrez le dans Wireshark. On observe la chose suivante :

En rouge, on trouve l'adresse de la passerelle 6rd.
On passe au paramétrage de notre routeur.
Premièrement, si ce n'est pas déjà fait, il est nécessaire d'activer IPv6 :
/system package enable ipv6
/system reboot
Ensuite, on crée le tunnel 6to4 :
/interface 6to4 add name=6rd local-address=<votre IPv4 publique> remote-address=<Passerelle 6rd Free> mtu=1480
Puis on crée au moins deux pools IPv6 qui correspondent à deux des préfixes que nous alloue Free:
/ipv6 pool add name="Pool 0" prefix=2a01:e35:20a0:b0c0::/64 prefix-length=64
/ipv6 pool add name="Pool 1" prefix=2a01:e35:20a0:b0c1::/64 prefix-length=64
On crée ensuite deux adresses :
/ipv6 address add interface=6rd address=::/64 from-pool="Pool 0" eui-64=yes advertise=no comment="WAN address"
/ipv6 address add interface=<votre interface LAN> address=::/64 from-pool="Pool 1" advertise=yes comment="LAN prefix"
Comme les commentaires l'indiquent, la première va correspondre à l'adresse de votre routeur sur Internet, et la deuxième est en fait un préfixe complet qui va être annoncé sur votre LAN.
Enfin, on ajoute la route par défaut :
/ipv6 route add dst-address=::/0 gateway=6rd
À ce moment là, vos machines compatibles SLAAC devraient s'auto-configurer une adresse IPv6 à partir du préfixe annoncé, et être en mesure d'accéder à Internet en IPv6.
Votre réseau est maintenant connecté "nu" sur internet en IPv6, je vous conseille donc d'ajouter les règles qui vous semblent utile au Firewall IPv6 afin d'éviter des mésaventures
