VPNSmith
self-host-vpnINFO

WireGuard et IPv6 : ce que /64 contre /128 change vraiment sur votre VPS (2026)

Les comparatifs d'hébergeurs annoncent « /64 IPv6 » ou « un seul /128 » comme un détail de fiche technique. Pour un serveur WireGuard auto-hébergé, cela décide si vos pairs peuvent avoir IPv6 du tout. Ce que le préfixe signifie, et comment AllowedIPs traite les deux piles.

Par Eric Gerard · Fondateur · VPNSmith - Spécialiste self-host VPN & VPS GDPR4 min de lecturePhoto via Pexels

Tous les comparatifs de VPS de ce site l'indiquent : « un seul /128 IPv6 par défaut », « /64 IPv6 », « pas d'IPv6 sur l'offre de base ». Cela se lit comme un détail de fiche technique. Pour un serveur WireGuard auto-hébergé, ça n'en est pas un : cela décide si vos pairs peuvent avoir IPv6 du tout.

WireGuard se moque de la pile que vous utilisez

Commençons par le plus simple. La documentation de WireGuard est explicite : « Any combination of IPv4 and IPv6 can be used, for any of the fields. » - n'importe quelle combinaison d'IPv4 et d'IPv6 peut être employée, pour n'importe lequel des champs.

L'endpoint peut être en IPv4 pendant que le tunnel transporte de l'IPv6, ou l'inverse. Il n'y a pas de mode IPv6 séparé à activer ni de second démon à lancer. Un tunnel double pile, ce sont simplement deux adresses sur la même interface.

Ce que /64 et /128 signifient concrètement

C'est ici que la fiche technique de l'hébergeur commence à compter.

Un /128, c'est une seule adresse. C'est l'IPv6 propre de votre serveur, rien de plus. Vous pouvez donner une connectivité IPv6 au serveur, mais il ne vous reste aucune adresse à distribuer : vos pairs ne peuvent pas en avoir chacun une.

Un /64, c'est un bloc. C'est la taille d'allocation standard pour un segment de réseau, et elle vous laisse libre d'attribuer une adresse à chaque pair depuis l'intérieur.

Un hébergeur qui annonce « IPv6 inclus » avec un seul /128 dit donc la vérité sans pour autant fournir ce dont un serveur VPN a besoin. C'est la ligne à relire deux fois dans un tableau comparatif, y compris le nôtre.

AllowedIPs fait deux métiers différents

C'est la partie que l'on comprend de travers, et elle est documentée sans ambiguïté. Le même champ se comporte différemment selon le sens :

« à l'émission, la liste des IP autorisées se comporte comme une sorte de table de routage »

« à la réception, la liste des IP autorisées se comporte comme une sorte de liste de contrôle d'accès »

WireGuard appelle l'ensemble une Cryptokey Routing Table - « la simple association de clés publiques et d'IP autorisées ».

La conséquence pour IPv6 est directe : si vous voulez que le trafic IPv6 d'un pair passe par le tunnel, ::/0 doit figurer dans son AllowedIPs. Mettre 0.0.0.0/0 seul ne route que l'IPv4, et le trafic IPv6 du pair sort par sa connexion normale - hors du tunnel, avec sa vraie adresse.

C'est une fuite, et ce n'est pas un défaut de WireGuard. C'est la liste de contrôle d'accès qui fait exactement ce qu'on lui a dit.

La configuration en pratique

Côté serveur, donnez à l'interface une adresse IPv4 et une adresse IPv6 issues de votre allocation. Sur chaque pair, listez les deux piles dans AllowedIPs. Pour tout faire passer par le tunnel, c'est 0.0.0.0/0, ::/0 ; pour un partage, listez les préfixes précis de chaque pile.

Deux points à garder en tête. Le forwarding doit être activé pour les deux familles, pas seulement l'IPv4 : ce sont des réglages sysctl distincts, et activer l'un ne fait rien pour l'autre. Et vos règles de pare-feu existent elles aussi en double : iptables et ip6tables sont des tables différentes, si bien qu'un masquerade ou un kill switch écrit uniquement pour l'IPv4 laisse l'IPv6 sans protection.

Vérifier plutôt que supposer

Une fois en place, vérifiez depuis le client que votre IPv6 publique est bien celle du serveur et non la vôtre. Un tunnel qui transporte correctement l'IPv4 tout en laissant fuir l'IPv6 paraît parfaitement sain de l'intérieur : la poignée de main réussit, le trafic passe, et rien dans les journaux ne se plaint.

Si votre hébergeur ne vous donne qu'un /128, les options honnêtes sont de rester en IPv4 seul dans le tunnel et de bloquer l'IPv6 sur les pairs pour qu'elle ne puisse pas fuir, ou de changer d'hébergeur. Une double pile à moitié configurée est pire que pas d'IPv6 du tout.

Une personne en gilet haute visibilité tenant une planchette à pince avec une liste de contrôle imprimée et un stylo
Une personne en gilet haute visibilité tenant une planchette à pince avec une liste de contrôle imprimée et un stylo
Un inspecteur tenant une liste de contrôle imprimée. C'est le second rôle, moins évident, d'AllowedIPs : sur les paquets entrants ce n'est pas une route, c'est la liste qui décide de ce qui passe.

★ Datacenter Nuremberg GDPR · ✓ IPv4 dédiée incluse · 200+ Mbps garantis

Héberge ton VPN sur ton propre VPS → ContaboAccès root complet · IPv4 publique · choisis ta région

Questions fréquentes

WireGuard prend-il en charge IPv6 ?
Oui, nativement et sans mode séparé. La documentation indique que n'importe quelle combinaison d'IPv4 et d'IPv6 peut être employée pour n'importe lequel des champs : l'endpoint peut être en IPv4 pendant que le tunnel transporte de l'IPv6, ou l'inverse. Un tunnel double pile, ce sont simplement deux adresses sur la même interface.
Quelle différence entre un /64 et un /128 IPv6 sur un VPS ?
Un /128 est une seule adresse, celle du serveur, sans rien à distribuer : les pairs ne peuvent pas avoir chacun une IPv6. Un /64 est un bloc, l'allocation standard pour un segment de réseau, depuis lequel vous pouvez attribuer une adresse à chaque pair. Un hébergeur qui annonce « IPv6 inclus » avec un seul /128 dit vrai sans fournir ce dont un serveur VPN a besoin.
Pourquoi mon IPv6 fuit-elle alors que le tunnel WireGuard fonctionne ?
Presque toujours parce qu'AllowedIPs contient 0.0.0.0/0 mais pas ::/0. AllowedIPs se comporte comme une table de routage sur les paquets sortants : l'IPv4 passe par le tunnel tandis que le trafic IPv6 sort par la connexion normale avec votre vraie adresse. Ce n'est pas un bug, c'est la configuration qui fait ce qu'on lui a demandé.
À quoi sert exactement AllowedIPs ?
À deux choses différentes selon le sens. À l'émission, il se comporte comme une sorte de table de routage et décide vers quel pair part un paquet. À la réception, il se comporte comme une sorte de liste de contrôle d'accès et décide de ce qui est accepté de ce pair. WireGuard appelle l'ensemble une Cryptokey Routing Table : l'association de clés publiques et d'IP autorisées.
Faut-il des règles de pare-feu séparées pour IPv6 ?
Oui. iptables et ip6tables sont des tables différentes, et le forwarding s'active par famille via des réglages distincts. Une règle de masquerade ou un kill switch écrit uniquement pour l'IPv4 laisse l'IPv6 totalement sans protection, et c'est ainsi qu'un tunnel d'apparence saine finit par fuir.