# Problème d'IPv6 forwarding

**URL:** <https://www.debian-fr.org/t/probleme-dipv6-forwarding/91157>\
**Category:** Support Debian\
**Tags:** ipv6\
**Created:** [Mai 2, 2025, 1:02 UTC](https://www.debian-fr.org/t/probleme-dipv6-forwarding/91157 "2025-05-02T13:02:31Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![libresurf](https://www.debian-fr.org/user_avatar/www.debian-fr.org/libresurf/32/5259_2.png) [@libresurf](https://www.debian-fr.org/u/libresurf)\
**Post date:** [Mai 2, 2025, 1:02 UTC](https://www.debian-fr.org/t/probleme-dipv6-forwarding/91157/1 "2025-05-02T13:02:31Z")

</div>

Bonjour,

J’ai un problème d’IPv6 forwarding à travers mon routeur.

Voici ma configuration IPv6 sur mon routeur :

```
root@nanopi:~# ip -6 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: lan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2a01:e0a:abcd:d3a1:b0::254/80 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::c8fe:ff:feba:be00/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever
3: wan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2a01:e0a:abcd:d3a0::426d:3e2a/128 scope global dynamic noprefixroute 
       valid_lft 69515sec preferred_lft 69515sec
    inet6 2a01:e0a:abcd:d3a0::fada:dad/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::fada:dad/64 scope link 
       valid_lft forever preferred_lft forever
    inet6 fe80::b4dc:bff:fe7a:bf8a/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever
4: wifi0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2a01:e0a:abcd:d3a1:b1::254/80 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::b2b0:ff:feca:face/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever
5: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 state UNKNOWN qlen 500
    inet6 2a01:e0a:abcd:d3a1:b3::1/80 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f857:e104:4eb5:1383/64 scope link stable-privacy proto kernel_ll 
       valid_lft forever preferred_lft forever

```

et le routage IPv6 :

```
root@nanopi:~# ip -6 r
2a01:e0a:abcd:d3a0::/64 dev wan0 proto ra metric 10 expires 86362sec pref medium
2a01:e0a:abcd:d3a0::/64 dev wan0 proto kernel metric 256 pref medium
2a01:e0a:abcd:d3a1:b0::/80 dev lan0 proto kernel metric 256 pref medium
2a01:e0a:abcd:d3a1:b1::/80 dev wifi0 proto kernel metric 256 pref medium
2a01:e0a:abcd:d3a1:b3::/80 dev tun0 proto kernel metric 256 pref medium
fe80::/64 dev wan0 proto kernel metric 256 pref medium
fe80::/64 dev lan0 proto kernel metric 256 pref medium
fe80::/64 dev wifi0 proto kernel metric 256 pref medium
fe80::/64 dev tun0 proto kernel metric 256 pref medium
default nhid 1022893797 via fe80::3627:92ff:fe62:ff0c dev wan0 proto ra metric 10 expires 1762sec pref medium

```

L’IP forward est bien activé :

```
root@nanopi:~# sysctl net.ipv6 --pattern forward
net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.all.mc_forwarding = 0
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.default.mc_forwarding = 0
net.ipv6.conf.lan0.forwarding = 1
net.ipv6.conf.lan0.mc_forwarding = 0
net.ipv6.conf.lo.forwarding = 1
net.ipv6.conf.lo.mc_forwarding = 0
net.ipv6.conf.tun0.forwarding = 1
net.ipv6.conf.tun0.mc_forwarding = 0
net.ipv6.conf.wan0.forwarding = 1
net.ipv6.conf.wan0.mc_forwarding = 0
net.ipv6.conf.wifi0.forwarding = 1
net.ipv6.conf.wifi0.mc_forwarding = 0

```

Si un poste client côté LAN du routeur arrive bien à contacter un serveur sur internet, par exemple :

```
bob@pc1:~$ ping6 -c3 debian.org
PING debian.org(2a04:4e42::644 (2a04:4e42::644)) 56 data bytes
64 bytes from 2a04:4e42::644 (2a04:4e42::644): icmp_seq=1 ttl=58 time=3.85 ms
64 bytes from 2a04:4e42::644 (2a04:4e42::644): icmp_seq=2 ttl=58 time=4.50 ms
64 bytes from 2a04:4e42::644 (2a04:4e42::644): icmp_seq=3 ttl=58 time=4.25 ms

--- debian.org ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 3.847/4.199/4.498/0.268 ms

```

les requêtes vers l’autre interface du routeur (WIFI) sur l’adresse de la passerelle n’aboutissent pas :

> bob@pc1:~$ ping6 -c3 2a01:e0a:abcd:d3a1:b1::254  
> PING 2a01:e0a:abcd:d3a1:b1::254(2a01:e0a:abcd:d3a1:b1::254) 56 data bytes  
> From 2a01:e0a:abcd:d3a1:b0::1 icmp\_seq=1 Destination unreachable: Address unreachable  
> From 2a01:e0a:abcd:d3a1:b0::1 icmp\_seq=2 Destination unreachable: Address unreachable  
> From 2a01:e0a:abcd:d3a1:b0::1 icmp\_seq=3 Destination unreachable: Address unreachable
> 
> — 2a01:e0a:abcd:d3a1:b1::254 ping statistics —  
> 3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2040ms

J’ai désactivé les règles de filtrage au niveau du firewall (_# nft flush ruleset_) pour voir si ça venait de là, mais ça ne change rien.

Voici la configuration du poste client :

> bob@pc1:~$ ip -6 a  
> 1: lo: \<LOOPBACK,UP,LOWER\_UP\> mtu 65536 state UNKNOWN qlen 1000  
> inet6 ::1/128 scope host noprefixroute  
> valid\_lft forever preferred\_lft forever  
> 2: enp4s0: \<BROADCAST,MULTICAST,UP,LOWER\_UP\> mtu 1500 state UP qlen 1000  
> inet6 2a01:e0a:abcd:d3a1:b0::1/128 scope global dynamic noprefixroute  
> valid\_lft 3339sec preferred\_lft 2339sec  
> inet6 fe80::c060:aa93:f75b:65ca/64 scope link noprefixroute  
> valid\_lft forever preferred\_lft forever  
> bob@pc1:~$  
> bob@pc1:~$ ip -6 r  
> 2a01:e0a:abcd:d3a1:b0::1 dev enp4s0 proto kernel metric 100 pref medium  
> 2a01:e0a:abcd:d3a1::/64 dev enp4s0 proto ra metric 100 pref medium  
> fe80::/64 dev enp4s0 proto kernel metric 1024 pref medium  
> default via fe80::c8fe:ff:feba:be00 dev enp4s0 proto ra metric 100 pref medium

Je ne comprends pas ce qui ne fonctionne pas.  
Pouvez-vous m’aider ?

---

<div class="post-metadata">

**Author:** ![libresurf](https://www.debian-fr.org/user_avatar/www.debian-fr.org/libresurf/32/5259_2.png) [@libresurf](https://www.debian-fr.org/u/libresurf)\
**Post date:** [Mai 8, 2025, 4:23 UTC](https://www.debian-fr.org/t/probleme-dipv6-forwarding/91157/2 "2025-05-08T16:23:02Z")

</div>

J’ai trouvé la réponse à mon problème. 😀

Le fichier /etc/radvd.conf était mal configuré.  
Je pensais que RADVD n’acceptait que les préfixes /64, mais il supporte très bien les préfixes /80 qui me sont nécessaires.

La bonne configuration du fichier /etc/radvd.conf est donc la suivante :

```
interface lan0 {
        AdvSendAdvert on; # Le routeur envoie les avertissements
        AdvManagedFlag on; # Le client recevra l'adresse IPv6 d'un serveur DHCP
        AdvOtherConfigFlag on; # Le client recevra également des informations non liées à l'adresse IPv6 par le serveur DHCP.
        prefix 2a01:e0a:abcd:d3a1:b0::/80 { # Segment complet
               AdvOnLink on; # Ce prefix peut être utilisé pour la détermination en ligne.
               AdvAutonomous off; # Ce prefix ne peut pas être utilisé pour l'auto-configuration de l'adresse IPv6
               AdvRouterAddr on; # "on" uniquement pour le Mobile IPv6
        };
};
interface wifi0 {
        AdvSendAdvert on; # Le routeur envoie les avertissements
        AdvManagedFlag on; # Le client recevra l'adresse IPv6 d'un serveur DHCP
        AdvOtherConfigFlag on; # Le client recevra également des informations non liées à l'adresse IPv6 par le serveur DHCP.
        prefix 2a01:e0a:abcd:d3a1:b1::/80 { # Segment complet
               AdvOnLink on; # Ce prefix peut être utilisé pour la détermination en ligne.
               AdvAutonomous off; # Ce prefix ne peut pas être utilisé pour l'auto-configuration de l'adresse IPv6
               AdvRouterAddr on; # "on" uniquement pour le Mobile IPv6
        };
};

```

et après un «&nbsp;_systemctl restart radvd.service_&nbsp;», tout fonctionne parfaitement. 👍
