Provya

Expertise pfSense

Sommaire des articles  -  Liens & Actualités  -  Firewall pour pfSense

[pfSense] Ajouter un accès IPv6 à une connexion Internet IPv4 (via un tunnel)

icon 08/09/2020

Dans cet article, nous présentons une solution pour bénéficier d'un accès Internet IPv6 pour les connexion Internet ne proposant qu'une connectivité IPv4. Cette solution repose sur la mise en place d'un tunnel IPv6.

La solution présentée repose sur le service Tunnelbroker d'Hurricane Electric. Ce service est gratuit et permet de bénéficier d'une plage /48 d'adresses IPv6.
La méthodologie suivie est, bien évidemment, applicable pour d'autres fournisseurs de tunnels IPv6.



Pré-requis


Le seul pré-requis est que nous disposions d'une adresse IPv4 publique pouvant répondre aux PING. Il n'est pas nécessaire que cette adresse IPv4 soit fixe.



1. Création d'un compte sur Tunnelbroker.net


La première étape consiste à se créer un compte sur le site tunnelbroker.net.

Inscription TunnelBroker IPv6 pour pfSense - Provya


On valide l'inscription en suivant le lien envoyé par e-mail. Puis on peut se connecter au site Tunnelbroker.

Dans la colonne de gauche "User functions", nous cliquons sur le lien "Create Regular Tunnel" :

Création d'un tunnel IPv6 chez TunnelBroker - Provya


Il faut renseigner son adresse IPv4 publique (qui doit répondre aux ping) et choisir le serveur avec lequel le tunnel IPv6 sera monté. Étant basé en France métropolitaine, nous choisissons le serveur Hurricane de Paris. Nous cliquons enfin sur "Create Tunnel".

TunnelBroker - choisir le serveur IPv6 d'accès - Provya


Une fois le tunnel créé, nous disposons de toutes les informations nécessaires pour créer notre interface IPv6 sur notre pfSense :

TunnelBroker - information de configuration pour pfSense - Provya


Depuis l'onglet "Advanced", il est possible de personnaliser un certain nombre de paramètres :

  • MTU : il est de 1 480 par défaut. Si vous utilisez une connexion Internet montée via le protocole PPPoE, alors il faut réduire ce MTU. 1 452 devrait être une bonne valeur.
  • Adresse IP publique dynamique : si votre connexion Internet IPv4 ne dispose que d'une adresse IP publique dynamique, alors il faudra mettre à jour automatiquement le tunnel à l'aide de l'Update Key (nous décrivons la procédure dans la suite de l'article).



2. Préparer pfSense au tunnel IPv6


Comme indiqué en pré-requis, il est nécessaire que notre adresse IPv4 publique puisse répondre au PING. Pour configurer notre pfSense afin qu'il réponde au ping sur son adresse IPv4 publique, nous nous rendons dans le menu Firewall > Rules :

menu Firewall > Rules - pfSense - Provya


Depuis l'onglet WAN, nous cliquons sur le bouton "+ Add" afin d'ajouter une nouvelle règle qui comportera les paramètres suivants :

  • Action : Pass
  • Interface : WAN, ou d'une façon générale, l'interface sur laquelle est rattachée votre connexion Internet
  • Address Family : IPv4
  • Protocol : ICMP
  • ICMP Types : any
  • Source : "Single host or Alias" et nous indiquons l'adresse IP du serveur choisi à l'étape précédente. Soit dans notre cas : 216.66.84.42
  • Destination : This firewall

Nous cliquons sur "Save", puis sur "Apply Changes" pour sauvegarder et appliquer la configuration.
La règle une fois créée devrait ressembler à quelque chose comme ceci :

Autoriser ping sur l'interface WAN de pfSense - Provya


Enfin, il est nécessaire que notre pfSense accepte le trafic IPv6. Il s'agit de la configuration par défaut de pfSense. Cependant, si le support d'IPv6 a été désactivé, il est possible de le réactiver en se rendant dans le menu System > Advanced, onglet "Networking" :

Menu System > Advanced > Networking - pfSense - Provya


Vérifier que la ligne "Allow IPv6" soit bien cochée, puis cliquer sur "Save".


Activer IPv6 sur pfSense - Provya




3. Création de l'interface IPv6 sur pfSense


Nous pouvons maintenant créer une nouvelle interface pour notre connexion IPv6. Pour cela, se rendre dans le menu Interfaces > Assignment > GIFs :

Menu Interfaces > Assignments > GIFs - pfSense - Provya


Nous cliquons sur le bouton vert "+ Add". Les champs à remplir sont les suivants :

  • Parent Interface : WAN dans notre cas
  • GIF Remote Address : l'adresse IPv4 du serveur distant, soit dans notre cas : 216.66.84.42
  • GIF tunnel local address : l'adresse IPv6 du client. Cette information correspond à la ligne "Client IPv6 Address" du tableau "Tunnel Details" vu précédemment. Soit, dans notre cas : 2001:470:abcd:781::2
  • GIF tunnel remote address : l'adresse IPv6 du serveur. Cette information correspond à la ligne "Server IPv6 Address" du tableau "Tunnel Details" vu précédemment. Soit, dans notre cas : 2001:470:abcd:781::1
  • GIF tunnel subnet : la taille du sous-réseau IPv6 (au format CIDR). Soit, dans notre cas : 64.

Les autres options doivent être laissées vides ou non-cochées, à moins que vous ne sachiez ce que vous faites.

Exemple de résultat obtenu :

Configuration d'une interface GIF pour IPv6 sur pfSense - Provya


Notre tunnel GIF est créé.
Il reste à lui associer une interface logique. Pour cela, nous nous rendons dans l'onglet Assignment, choisissons l'interface GIF nouvellement créée et cliquons sur le bouton "+ Add" :

Création d'une interface logique GIF sur pfSense - Provya


Nous cliquons sur notre interface OPT1 (ou OPTx d'un façon générale) afin de la configurer de la manière suivante :

  • Enable : cocher la case pour activer l'interface
  • Description : le nom de l'interface. On lui donne un nom plus parlant qu'OPT1. Exemple : WANv6

Les autres options doivent être laissées vides ou non-cochées, à moins que vous ne sachiez ce que vous faites.

Exemple de résultat obtenu :

Configuration d'une interface IPv6 sur pfSense - Provya




4. Configuration de la gateway IPv6 sur pfSense


Lors de la création de l'interface IPv6 (WANv6), une gateway est automatiquement ajoutée.
Si vous possédez déjà une passerelle IPv6, la nouvelle passerelle ne sera pas marquée comme passerelle par défaut. Si vous le souhaitez, il faut donc penser à modifier votre passerelle par défaut depuis le menu System > Routing et renseigner les champs du tableau "Default gateway" :

Configurer passerelle par défaut - pfSense - Provya




5. Ajouter des résolveurs DNS IPv6


TunnelBroker fournit un résolveur DNS IPv6 qui sera ajouté automatiquement à pfSense lorsque l'interface GIF sera montée. Cependant, il est toujours possible d'opter pour d'autres résolveurs DNS. Cette configuration s'opère depuis le menu System > General Setup.

Voici quelques exemples de résolveurs DNS IPv6.

DNS Google :
  • 2001:4860:4860::8888
  • 2001:4860:4860::8844

DNS Quad9 :
  • 2620:fe::fe
  • 2620:fe::9

DNS FDN :
  • 2001:910:800::12
  • 2001:910:800::40



6. Configurer le LAN pour IPv6


À ce stade, pfSense lui-même dispose d'une connectivité IPv6. Pour en faire bénéficier les ordinateurs du LAN, une possibilité est de configurer un dual-stack IPv4/IPv6.

Se rendre dans le menu Interfaces > LAN et apporter les modifications suivantes :

  • IPv6 Configuration Type : choisir "Static IPv6"
  • IPv6 address : indiquer une adresse comprise dans le /64 routé fourni par tunnelbroker. Cette information se trouve à la ligne "Routed /64" du tableau "Tunnel Details" vu précédemment. Soit, dans notre cas 2001:470:abce:781::/64 ; nous pouvons, par exemple, choisir l'adresse 2001:470:abce:781::1 comme adresse IPv6 pour la patte LAN du pfSense

Exemple de résultat obtenu :

Configurer l'interface LAN en IPv6 - pfSense - Provya


Puis, nous cliquons sur "Save" et "Apply Changes" pour valider les modifications.

Nous nous rendons ensuite dans le menu Services > DHCPv6 Server & RA. Les champs à renseigner sont les suivants :

  • DHCPv6 Server : cocher la case pour activer DHCPv6 sur le LAN
  • Range : choisir la plage d'adresses IP que nous souhaitons utiliser pour le service DHCP

Exemple de résultat obtenu :

Configurer DHCPv6 pour l'interface LAN - pfSense - Provya


Nous cliquons sur "Save" pour sauvegarder les changements, puis nous basculons sur l'onglet "Router Advertisements"


Enfin, il ne nous reste plus qu'à configurer une règle de firewall afin d'autoriser le trafic IPv6 pour le LAN. Normalement, une telle règle existe déjà par défaut, mais si nous l'avons supprimée, il faudra la re-créer. Pour cela, nous nous rendons dans le menu Firewall > Rules, onglet LAN et nous cliquons sur "+Add" afin d'ajouter une règle avec les paramètres suivants :

  • Action : pass
  • Interface : LAN
  • Address Family : IPv6
  • Protocol : any
  • Source : LAN net
  • Destination : any

Exemple de résultat obtenu :

Règle de filtrage IPv6 pour l'interface LAN - pfSense - Provya



À ce stade, tout doit fonctionner. On peut tester !

Plusieurs sites permettent de tester sa connectivité. LaFibre.info : ip.lafibre.info/

Tester sa connexion IPv6 sur lafibre.info - Provya


Test-IPv6.com : test-ipv6.com

Tester sa connexion IPv6 - Provya




Mise à jour du tunnel pour les connexions IPv4 avec une adresse IP publique dynamique


Dernier point qui ne concerne que ceux qui ne disposent pas d'une adresse IPv4 fixe : il faut maintenir le tunnel à jour. Pour cela, il faut naviguer dans le menu Services > Dynamic DNS et cliquer sur le bouton "+Add" et configurer les champs de la manière suivante :

  • Service Type : HE.net Tunnelbroker
  • Interface to monitor : WAN
  • Hostname : le tunnel ID qui se trouve sur la première ligne de notre tableau "Tunnel Details"
  • Username : saisir le nom d'utilisateur pour l'accès au site tunnelbroker.net
  • Password : saisir l'Update Key configurable depuis l'onglet "Advanced" du tableau "Tunnel Details"

Cliquer sur "Save" pour sauvegarder les paramètres.


Voilà, nous avons ajouté un accès IPv6 à une connexion Internet n'offrant qu'une connectivité IPv4.

TunnelBroker n'est pas la seule solution existante. Il existe une liste comparative sur Wikipedia (EN)



Pour aller plus loin


[pfSense] Comprendre la gestion des interfaces réseaux
[pfSense] Configurer son serveur DHCP
Tous nos articles classés par thème
Voir un article au hasard


Vous avez aimé cet article ? Vous cherchez du matériel de qualité ? Alors contactez-nous.


Retrouvez nos services et firewall pour pfSense & OPNsense



Formation pfSense     Formation OPNsense     Liste de filtrage des IP malveillantes     Firewall pro-Soho pour pfSense et OPNsense         Firewall pro-Maxi pour pfSense et OPNsense    

store.provya.fr

icon Tags de l'article :

4 commentaires

FanPfsense - 14/09/2020 à 16:27:28

merci pour cet article intéressant, fonctionnel et très bien expliqué.

petite question : est-il possible de d'ouvrir un port ipv6 avec cette technique ?
par ex : serveur web accessible en ipv6 avec l'ipv6 de tunnelbroker ?

merci

@répondre #lien

jmguilbert - 30/01/2024 à 18:20:03

Bonjour,
Dans une configuration différente d'IPv6 avec Pfsense, je ne parviens pas à faire passer mes paquets IPv6 du Lan vers le Wan.
Puis-je me permettre de vous expliquer ?
Mon FAI me mets à disposition une plage V6 telle que 2a0d:xxxx::/31
Je m'interconnecte avec lui via le Wan sur la plage 2a0d:xxxx::/64
Lui est en 2a0d:xxxx::1/64
Mon wan Pfsense est en 2a0d:xxxx::2/64
Jusque là tout va bien: les deux papotent bien ensemble.
Puis je pioche dans la range attribuée un 2a0d:xxxx:1::/64 pour configurer mon LanV6.(2a0d:xxxx:1::1 et suivants)
J'annonce cette plage via RA.
Les règles firewall sont ok.
Et paf le chien ... mes paquets V6 en provenance du Lan s'arrêtent au Wan et ne remontent pas chez mon FAI.Que je configure le Lan en fixe ou avec dhcpv6.
Auriez-vous une piste, une idée pour me sortir de la gadoue d'un presque débutant?
JM.

@répondre #lien

Guillaume - 18/04/2024 à 14:05:28

@jmguilbert :
Bonjour,

Votre FAI ne vous fournit-il pas une délégation de préfixe ?

Sinon, il vous faudrait un proxy NDP ; ce qui, à ma connaissance, n'existe pas sous pfSense.

Cordialement,

Guillaume
--
Provya

@répondre #lien

icon Flux RSS des commentaires de cet article