Tu le sais maintenant, j'aime IPv6. Je voudrais coucher avec, l'épouser, lui faire deux gosses et le laisser sur le bord de la route un beau matin avec le RMI pour seul revenu. Le grand amour quoi… Comme mon fournisseur d'accès adoré ne fait pas d'IPv6 (plus que 400 jours avant la pénurie, on est laaaaaaaaaaaaaaaaarge), je me suis dit que j'allais copieusement l'envoyer paître et faire les choses moi-même. Comment ? En profitant d'une des options de la norme IPv6 : 6in4 via un Tunnel Broker.

36:15 kinenveu

« Ventre Saint-Gris, mais comment diable cela peut-il bien fonctionner ? ». Et bien, c'est très simple un fournisseur d'accès de second niveau (Freenet6, Sixxs ou encore Hurricane Electric) met à ta disposition une plage d'interconnexion IPv6 et en sus un éventuel /48 pour ton amusement personnel. J'ai donc choisi Hurricane Electric, notamment pour la simplicité de la configuration mais aussi pour la performance du réseau hôte. Après avoir renseigné l'ensemble avec un nom/mail bidon, on peut accéder à une interface qui permet de créer des tunnels.

Continue de creuser, je sens que ça vient…

Mais alors comment qu'on fait quand on en est là ? On remonte ces manches et on bricole un routeur IPv6 en un tour de main comme qui rigole. Petit préliminaire (grrrr…). Il te faut donc :

  1. Une IPv4 fixe sur Internet (pas indispensable, mais disons que c'est toujours plus pratique) ;
  2. L'adresse IPv4 de la passerelle d'interconnexion ;
  3. L'adresse IPv6 de la passerelle (mettons 2002:dead:beef::1/64) et l'adresse du point d'appui côté client (l'autre morceau du réseau, donc 2002:dead:beef::2/64) ;
  4. Une Debian 5.0 standard fraîchement installé sur une petit bécane qui fera office de routeur et qui sera connecté à ton réseau local ;
  5. Un /48 fourni par le broker (ici dans mon exemple 2001:dede:abba::/48) ;
  6. Une bouteille de bon tord-boyau du Kentucky :bufford:.

Vite mon clavier, VIIIIIIITE !

On commence donc par mettre une IP fixe sur le réseau local la babasse Debian (dispensable mais pratique), en éditant /etc/network/interfaces :

iface eth0 inet static
	address 192.168.0.2
	netmask 255.255.255.0
	network 192.168.0.0
	broadcast 192.168.0.255
	gateway 192.168.0.1

On en profite pour mettre à la suite dans le même fichier les informations concernant le broker :

iface 6in4 inet6 v4tunnel
	address 2002:dead:beef::2 # Adresse du point d'appui
	netmask 64
	endpoint 216.66.84.42 # Adresse de la passerelle v4
	gateway 2002:dead:beef::1 # Adresse de la passerelle
	ttl 255

Au redémarrage, on devrait voir monter une interface nommée 6in4 et profiter instantanément d'une connectivité IPv6 :

# ifconfig 6in4
6in4      Link encap:IPv6-dans-IPv4  
          adr inet6: 2002:dead:beef::1/64 Scope:Global
[…]
# ping6 -c1 ipv6.google.com
PING ipv6.google.com(2a00:1450:8001::63) 56 data bytes
64 bytes from 2a00:1450:8001::63: icmp_seq=1 ttl=55 time=262 ms
[…]

\o/

Pour la prochaine fois, on verra comment faire profiter l'ensemble de ton réseau local d'une connectivité IPv6 et, en super bonus, comment le protéger des vilains méchants du grand Internet.