Tunnel IPv6 6to4

Ce type de tunnel vous permettras de de connecter votre routeur au réseau IPv6 grâce à la technologie 6to4.

Installation de l'IPv6

Afin de pouvoir profiter pleinement de l'IPv6 sur votre routeur, connectez vous en SSH et tapez les commandes suivantes :

  • Mise à jour d'IPKG :
# ipkg update
  • Support IPv6 par le noyau :
# ipkg install kmod-ipv6
# ipkg install ip
  • Installation du daemon de routage IPv6 (Radvd) :
# ipkg install radvd

Le script de création du Tunnel 6to4

Créer le script sur votre routeur

  • Créer le fichier /etc/init.d/6to4 :
# vi /etc/init.d/6to4

Et inscrivez les lignes suivantes :

#!/bin/sh /etc/rc.common
#
# Tunnel 6to4
 
# Detection de l'adresse IPv4
ipv4=`ip -4 addr | awk '/^[0-9]+[:] eth0.1[:]/ {l=NR+1} /inet (([0-9]{1,3}\.){3}[0-9]{1,3})\// {if (NR == l) split($2,a,"/")} END {print a[1]}'`
 
# Inscription manuelle de l'adresse IPv4 (cas d'IP fixe)
#ipv4=11.22.33.44
 
# Codage de l'adresse IPv4 en Hexadecimale
ipv6prefix=`echo $ipv4 | awk -F. '{ printf "2002:%02x%02x:%02x%02x", $1, $2, $3, $4 }'`
 
# Le sous reseau local
ipv6subnet=ffff
 
# Adresse du routeur Anycast Universelle
relay6to4=192.88.99.1
 
# uni-leipzig.de
#relay6to4=139.18.25.33
 
# 6to4.ipv6.bt.com
#relay6to4=194.73.82.244
 
# microsoft
#relay6to4=131.107.33.60
 
# japan kddilab.6to4.jp
#relay6to4=192.26.91.178
 
  start() {
    echo "Creation du tunnel 6to4..."
    ip tunnel add tun6to4 mode sit ttl 64 remote any local $ipv4
    echo "Activation du tunnel 6to4..."
    ip link set dev tun6to4 up
    echo "Attribution de l'adresse ${ipv6prefix}::1/16 a l'interface du tunnel..."
    ip -6 addr add ${ipv6prefix}|>::1/16 dev tun6to4
    echo "Ajout de la route IPv6 par default..."
    ip -6 route add 2000::/3 via ::${relay6to4}|> dev tun6to4 metric 1
    echo "Attribution de l'adresse ${ipv6prefix}:${ipv6subnet}::1/64 a l'interface br-lan (reseau local)..."
    ip -6 addr add ${ipv6prefix}|>:${ipv6subnet}|>::1/64 dev br-lan
    echo "Effectue."
  }
  stop() {
    echo "Suppression de l'adresse IPv6 de br-lan (reseau local)..."
    ip -6 addr del ${ipv6prefix}|>:${ipv6subnet}|>::1/64 dev br-lan
    echo "Suppression de la route par default..."
    ip -6 route flush dev tun6to4
    echo "Desactivation du tunnel 6to4..."
    ip link set dev tun6to4 down
    echo "Suppression du tunnel 6to4..."
    ip tunnel del tun6to4
    echo "Effectue."
  }
  restart() {
    stop
    start
}

Si vous avez un IP fixe, vous pouvez entrer manuellement l'adresse IPV4 dans le script.

  • Enregistrez et quittez, rendez le script exécutable avec la commande :
# chmod +x /etc/init.d/6to4

Usage du script

  • Démarrez ou stoppez le tunnel avec les commandes :
# /etc/init.d/6to4 start

ou

# /etc/init.d/6to4 stop
  • Testez votre connexion avec ping6 :
# ping6 6bone.net

Routage vers votre réseau local

  • Éditez les fichier de configuration de Radvd /etc/radvd.conf :
interface br-lan
{
        AdvSendAdvert off;
        prefix 2002:xxxx:xxxx:xxxx::/64
        {
                AdvOnLink on;
                AdvAutonomous on;
                AdvRouterAddr off;
        };

};

Remplacez l'adresse prefix 2002:xxxx:xxxx:xxxx::/64 par l'adresse broadcast du réseau local.

  • Redémarrer Rardvd :
# /etc/init.d/radvd restart
 
tutoriels/divers/openwrt/tunnel_ipv6_6to4.txt · Dernière modification: 2008/08/19 15:43 (édition externe)     Haut de page