Souvenez-vous, précédemment nous avions vu comment configurer le support IPv6 sur OpenWRT derrière une Freebox. Maintenant que nous pouvons surfer avec la v6 du protocole IP, on va voir comment exposer, toujours en v6, des services (web) et ce à travers OpenWRT.
Configuration de l’IPv6 chez votre fournisseur de nom de domaine
Tout d’abord il vous faut l’IPv6 de votre machine. Pour ceci, on va récupérer votre préfixe de délégation. Vous pouvez le retrouver sur votre Freebox ou sur OpenWRT, rubrique « Réseau / Interfaces« . C’est la ligne IPv6-PD (pour IPv6 Prefix Delegation) dans WAN6.
De là, il suffit de faire une recherche sur votre serveur du type ifconfig | grep mon_prefix
.
C’est ensuite cette IP que vous allez déclarer comme entrée de type AAAA chez votre registrar, Gandi dans mon cas. A ce stade, vous avez votre (sous-)domaine qui est déclaré à la fois en IPv4 (enfin je l’espère pour vous :-)) et en v6.
Il va ensuite falloir ouvrir les ports, à la fois sur OpenWRT mais également sur votre serveur.
Routage de l’IPv6 depuis OpenWRT vers votre serveur
L’une des principales différences dans OpenWRT entre l’IPv4 et v6 est que le routage du trafic IPv4 passent par l’onglet « Redirections de ports » alors que celui concernant la v6 passent par l’onglet « Règles de trafic« . A part cette petite différence, les choses sont très semblables. Ça se passe donc dans « Réseau – Pare-feu – Règles de trafic« .
On va ensuite rediriger (forward) à partir (from) d’internet (WAN) vers le réseau interne (LAN) avec pour destination l’IP trouvée plus haut et les ports nécessaires (80 et 443 en TCP pour le web par exemple).
Ouverture des ports sur votre serveurs
A ce stade, on a donc :
- Un DNS lié directement à votre serveurs web.
- Le routeur configuré afin de permettre la transmission du trafic web vers ce serveur.
Reste donc à ouvrir les ports sur le serveurs web afin d’accepter le trafic. Là ça dépend pas mal de votre serveur et de sa distribution… Dans mon cas, c’est OpenMediaVault qui est sur une base Debian 10 et qui offre une WebUI afin de faciliter la configuration. A partir de cette WebUI, c’est super simple ! Vous pouvez vous baser sur mon exemple :
Test final
Pour tester, la façon la plus simple est soit d’utiliser le paramètre -6
de curl
, soit d’utiliser ce site de test.
Voilà, à ce stade j’ai un service web exposée à la fois en IPv4 et en IPv6.