IPv6 router guide/fr

Configuration basique du noyau
N'importe quel arbre basé sur un noyau 2.6 disponible dans Gentoo prend facilement en charge les connexions IPv6. La nouvelle pile IPv6 USAGI est intégrée das le noyau depuis Linux 2.6.0.

Vous êtes désormais prêt à entrer dans le répertoire des sources du noyau et à commencer la configuration de votre noyau.

-

Tester la prise en charge de l'IPv6
Après avoir activé les options recommandées, recompilez votre noyau et redémarrez avec votre nouveau noyau pour lequel IPv6 est activé.

Si vous n'avez pas encore iproute2 installé, nous vous enjoignons de le faire maintenant. iproute2 est une suite de configuration de réseau qui contient, le remplaçant célèbre de  ,   ,   et autres...

Si IPv6 fonctionne, le périphérique de boucle de retour (loopback device) devrait indiquer une adresse IPv6 :

Avant d'aller plus loin, assurez-vous que vous avez ajouté « ipv6 » à votre liste des options de la variable USE dans le fichier, de telle façon que les installations futures des paquets incluront la prise en charge de l'IPv6.

Configuration de base
La plupart des FAI n'offrent pas de connexions IPv6 nativement. Pour contourner cette limitation, il y a plusieurs plusieurs « courtiers en tunnels » de par le monde qui offrent des tunnels IPv6 libres. Ceci vous permet de créer un tunnel pour toutes vous connexions IPv6 via une connexion IPv4.

Ci-dessous, nous présentons deux exemples de création de tunnel avec deux courtiers populaires nord américains, Hurricane Electric (s'applique tout aussi bien aux tunnels non heartbeat de sixx) et Freenet6.

Hurricane Electric
Hurricane Electric (HE en abrégé) propose des tunnels IPv6 et réserve un bloc d'adresses /64 pour vous. Il autorise aussi la configuration du DNS inverse. Obtenir un tunnel de HE est aussi simple que de se rendre sur http://www.tunnelbroker.net/ et de remplir un formulaire.

Après qu'un tunnel vous soit accordé et que vous ayez un bloc d'adresses /64 alloué, vous pouvez configurer votre système Gentoo. HE fournit des exemples de configuration basés sur les utilitaires ifconfig et iproute. Les deux exemples qui suivent supposent que vous avez la configuration suivante :

Utiliser le paquet iproute2 et exécuter la commande  aura le résultat suivant :

Créez un tunnel entre l'IPv4 local (eth0) et l'adresse IPv4 distante de HE.

Extrayez le surcoût du « tunnelling » du MTU :

Démarrer le tunnel :

Assignez lui l'adresse IPv6 :

Routez toutes les adresses IPv6 unicast à travers votre périphérique tunnel 'sixbone' :

Freenet6
Freenet6 est un autre courtier en tunnel. L'enregistrement facultatif nécessite seulement un nom d'utilisateur et une adresse de courriel valide. Ils ont choisi d'assurer la gestion du tunnel par une installation client/serveur et on créé le client. Le client est disponible dans Portage. Pour l'installer faites :

Maintenant, si vous choisissez de vous connecter avec une authentification, vous devez configurer   en éditant le fichier. Vous ne devriez avoir à changer que les champs « userid » et le « passwd »  pour qu'ils correspondent à ceux assignés par Freenet6 et aussi changer le serveur passerelle. Ci-dessous, nous présentons un exemple de fichier de configuration.

gw6c.conf example

Tester votre connexion
Maintenant que votre tunnel est configuré, vous pouvez tester votre connexion. La manière la plus facile de le faire est d'utiliser l'utilitaire   et d'essayer d'obtenir un écho  d'un hôte IPv6.

Des travaux sont actuellement en cours pour ajouter une meilleure prise en charge de l'IPv6 au scripts d'initialisation du réseau. Si vous voulez savoir ou cela en est, ou/et contribuer, envoyez un courriel à.

Réinstaller des paquets
Sauf si vous avez déclaré l'option ipv6 de la variable USE dans votre fichier  auparavant, vous aurez probablement besoin de réinstaller un ensemble de paquets pour les recompiler avec la prise en charge de l'IPv6. Pour obtenir la liste des paquets installés qui seront affectés par le changement d'options de la variable USE, utilisez l'option    de la commande emerge.

Si vous avez changé beaucoup d'options de la variable USE, cette liste peut s'avérer très longue. Il est recommandé de maintenir votre système à jour, ainsi ça ne causera aucun dommage si vous recompilez tous les paquets affectés.

Paquets spécifiques IPv6
Il existe quelques paquets qui concernent spécifiquement des items IPv6. La plupart est localisée dans.

IPv6 et DNS
Tout comme DNS utilise des enregistrements A pour l'IPv4, DNS utilise des enregistrements AAAA pour IPv6.(Ceci est dû au fait que IPv4 est un espace d'adressage de 2^32 alors que IPv6 est un espace d'adressage de 2^128). Pour le DNS inverse, la norme INT est déconseillée, car en voie d'obsolescence,  mais encore largement prise en charge. ARPA est la norme actuelle. La prise en charge du format ARPA sera décrite ici.

Configuration de BIND
Recent versions of BIND include excellent IPv6 support. This section will assume you have at least minimal knowledge about the configuration and use of BIND. We will assume you are not running bind in a chroot. If you are, simply append the chroot prefix to most of the paths in the following section.

First you need to add entries for both forward and reverse DNS zone files in.

named.conf entries

Now we must create those zone files and add entries for all of our hosts:

pri/ipv6-rules.com

pri/rev-ipv6-rules.com.arpa

DJBDNS configuration
There are currently some third-party patches to DJBDNS available at http://www.fefe.de/dns/ that allow it to do IPv6 nameserving. DJBDNS can be installed with these patches by emerging it with ipv6 in your USE variables.

After djbdns is installed, it can be setup by running  and answering a few questions about which IP addresses to bind to, where to install tinydns, etc.

Assuming we've installed  into , we can now edit. This file will contain all the data needed to get tinydns handling DNS for your IPv6 delegation.

sample data file

Lines prefixed with a  will have both an AAAA and a PTR record created. Those prefixed with a  will only have an AAAA record created. Besides manually editing the file, you can use the scripts   and   to add new entries. After changes are made to the file, you simply need to run   from. This will create, which tinydns will use as its source of information for DNS requests.

Configure routing
Further configuration is required if we want to use our system as a router for other clients wishing to connect to the outside world with IPv6. We need to enable forwarding of IPv6 packets. We can do this in one of two ways.

Or we set the value 1 in the forwarding pseudo-file:

Or we use the  command:

To enable forwarding at boot, you'll need to edit and add the following line.

sysctl.conf addition

Traffic should now be forwarded from this box through the tunnel we've established with our broker.

To assign IPv6 addresses to clients, the IPv6 specification allows for both stateless and stateful IP assignment. Stateless assignment uses a process called Router Advertisement and allows clients to obtain an IP and a default route by simply bringing an interface up. It is called "stateless" because there is no record of IPs assigned and the host they are assigned to. Stateful assignment is handled by DHCPv6. It is "stateful" because the server keeps a state of the clients who've requested IPs and received them.

Stateless Configuration
Stateless configuration is easily accomplished using the Router Advertisement Daemon, or.

After having emerged , we need to create  that contains information about what IP block to assign IPs from. Here is a sample file using the prefix we've been assigned from our tunnel broker.

Sample radvd.conf

Further information is available in. We can now start  and set it to start at boot.

Stateful Configuration
If you'd like to have stateful configuration, you'll need to install and configure.

Now we must configure the dibbler client by editing.

Sample dibbler client configuration

We can now start the dibbler client, and configure it to start at boot.

Using radvd
Clients behind this router should now be able to connect to the rest of the net via IPv6. If using radvd, configuring hosts should be as easy as bringing the interface up. (This is probably already done by your net.ethX init scripts).

Other Resources
There are many excellent resources online pertaining to IPv6.

On IRC, you can try  on Freenode. You can connect to the Freenode servers using an IPv6 enabled client by connecting to irc.ipv6.freenode.net.

Acknowledgements
We would like to thank the following authors and editors for their contributions to this guide:


 * Peter Johanson
 * Jorge Paulo
 * Sven Vermeulen
 * Camille Huot
 * Pasi Valminen
 * nightmorph
 * hwoarang