IPv6, tout le monde y va. Mais tous les ISP ne souhaitent pas franchir le pas. Et pourtant, tous les services web sont accessible en IPv6. Google, gmail, facebook, twitter …
Nous vous proposons de monter un tunnel IPv6 pour amener cette technologie dans votre réseau (votre lab pour commencer).
Vous connaissez probablement Hurricane Electric, he.net, qui fournit des endpoints aux Etats-Unis. Nous vous proposons de faire la même chose, mais en France. Vous gagnerez en latence, et vous êtes connectez au coeur des principales routes d’échanges si votre point de sortie est bien localisé.
Partons du principe que vous avez une gateway pfSense dans votre LAN et que vous êtes administrateur système.
La partie configuration du pfSense est triviale, si on a les bons éléments sous la main. En l’occurrence, les informations d’IP et de route à utiliser.
Dans notre cas, prenons les valeurs suivantes:
| pfSense | Routeur IPv6 | |
|---|---|---|
| LAN IPv4 | 10.0.0.1/24 | |
| LAN IPv6 | 2001:db8::/64 | |
| WAN IPv4 | 192.0.2.1/24 | 198.51.100.1/24 |
Et c’est tout ce que nous avons besoin d’avoir comme information pour configurer notre pfSense.
[fusion_builder_container hundred_percent= »yes » overflow= »visible »][fusion_builder_row][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »2″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Configuration du pfSense, côté client[/fusion_title]
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »3″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Interface Tunnel[/fusion_title]
Dans la partie « Interfaces > (assign) > GIF > New », entrez les valeurs suivantes:

Ensuite, configurez votre nouvelle interface WAN_V6 de la manière suivante:

Notez que nous ne mettons pas d’information d’IP ici (ni v4, ni v6).
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »3″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Route IPv6 par défaut[/fusion_title]
Cette partie terminée, vous pouvez vérifier que votre route IPv6 est bien la route par défaut. Ce n’est pas le cas au départ, il faut donc aller modifier le paramètre dans « System > Routing » :

Une fois cela réglé, la configuration de votre pfSense est terminée, pour la partie connectivité.
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »3″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]DHCPv6[/fusion_title]
Affectons maintenant des IPv6 à votre LAN. C’est trivial et c’est la beauté d’IPv6:
Dans « Services > DHCPv6″, activez le DHCP sur l’interface LAN.
Dans le Range, choisissez une plage pour vos clients dhcp, par exemple:
2001:db8:0:0:ffff:: -> 2001:db8:0:0:ffff:ffff:ffff:ffff
Laissez le reste par défaut.
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »3″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Router Advertisements[/fusion_title]
Dans la partie « Router Advertisements », choisissez l’option « Managed »:

Votre pfSense va envoyer des informations de routage sur votre LAN. Les clients IPv6 qui attendent des informations vont recevoir leur IP, et vont pouvoir commencer à « sortir » vers Internet.
Il ne vous reste plus qu’à définir vos règles de firewalling en entrée/sortie, et les services à exposer.
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »2″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Configuration du routeur, côté datacenter[/fusion_title]
Passons à la partie routeur IPv6. Bien entendu, nous allons utiliser un FreeBSD 10 avec un endpoint de tunnel gif(4).
La configuration est triviale la aussi, merci les gens de FreeBSD ;)
root@vpn-6in4:~ # cat /etc/rc.conf.local # autoriser le routage IPv6 ipv6_gateway_enable="YES" # creer l'interface de tunneling cloned_interfaces="gif0" # declarer les routes du tunnel static_routes="gif0" ## La creation du tunnel # "tunnel " ifconfig_gif0="tunnel 198.51.100.1 192.0.2.1" # IP locale au tunnel, permettant de router les paquets. Rien a voir avec # les IPs routes du LAN du pfSense distant ifconfig_gif0_ipv6="inet6 2001:db8:ffff:ffff::1 prefixlen 64" # route qui permet de joindre, via le tunnel, les IP du LANv6 du pfSense route_gif0="-inet6 2001:db8:ffff::/64 2001:db8:ffff:ffff::2"
Ensuite, il faut redémarrer le réseau – /etc/rc.d/netif restart ; /etc/rc.d/routing restart –
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_title size= »2″ content_align= »left » style_type= »single solid » sep_color= » » class= » » id= » »]Test de la configuration[/fusion_title]
Si tout est correct, vous pouvez obtenir le résultat suivant:
ws:~ nicolas$ ping6 ipv6.google.com PING6(56=40+8+8 bytes) 2001:db8:0:0:ffff::d54d --> 2a00:1450:4007:806::1005 16 bytes from 2a00:1450:4007:806::1005, icmp_seq=0 hlim=56 time=16.327 ms 16 bytes from 2a00:1450:4007:806::1005, icmp_seq=1 hlim=56 time=15.537 ms 16 bytes from 2a00:1450:4007:806::1005, icmp_seq=2 hlim=56 time=15.520 ms 16 bytes from 2a00:1450:4007:806::1005, icmp_seq=3 hlim=56 time=15.440 ms 16 bytes from 2a00:1450:4007:806::1005, icmp_seq=4 hlim=56 time=15.914 ms ^C --- ipv6.l.google.com ping6 statistics --- 5 packets transmitted, 5 packets received, 0.0% packet loss round-trip min/avg/max/std-dev = 15.440/15.748/16.327/0.333 ms
[/fusion_builder_column][fusion_builder_column type= »1_1″ background_position= »left top » background_color= » » border_size= » » border_color= » » border_style= »solid » spacing= »yes » background_image= » » background_repeat= »no-repeat » padding= » » margin_top= »0px » margin_bottom= »0px » class= » » id= » » animation_type= » » animation_speed= »0.3″ animation_direction= »left » hide_on_mobile= »no » center_content= »no » min_height= »none »][fusion_tagline_box backgroundcolor= » » shadow= »yes » shadowopacity= »0.1″ border= »1px » bordercolor= » » highlightposition= »top » content_alignment= »left » link= » » linktarget= »_self » button_size= » » button_shape= »square » button_type= » » buttoncolor= » » button= » » title= »Attention » description= »Attention, ne recopiez pas sans comprendre les données de cet article. Les IP utilisées ici sont celles définies dans les RFC de documentation. Elles ne peuvent pas être utilisées en production. » animation_type= »0″ animation_direction= »down » animation_speed= »0.1″ class= » » id= » »][/fusion_tagline_box][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]