unraid can not get ipv6 address after router's WAN ipv6 change


Favor
Go to solution Solved by MAM59,

Recommended Posts

 

1. the unraid server get ipv6 normally on first 7 days

2. after 7 days , the ip service provider will make a remote re-dial, and the ipv6 of my router will change, here is my router's ipv6 info(using ipv6 stateless method)

          IPv6 Connection Type: Native with DHCP-PD
              WAN IPv6 Address: 2408:xxxx:xxx:xxxx:xxxx:xxxx:xxxx:xxxx/64 (xxxx is hide number , the ip is ok)
   WAN IPv6 Link-Local Address: fe80::ec57:551b:a8e0:a444/10
              WAN IPv6 Gateway: fe80::9ee3:74ff:fe1d:144e
              LAN IPv6 Address: /0
   LAN IPv6 Link-Local Address: fe80::d65d:64ff:fe34:4ad8/64
                       DHCP-PD: Enabled
               LAN IPv6 Prefix: /0
                   DNS Servers:

3. after router‘s WAN ipv6 change, my unraid server can not get ipv6 normally.

4. i shutdown all vms and dockers, and reboot my unraid server, can not get ipv6 normally again, but my android smart phone can get ipv6 normally all the time

 

root@Tower:~# ifconfig | grep inet6
        inet6 fe80::36f7:16ff:fe9c:44ab  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::36f7:16ff:fe9c:44ab  prefixlen 64  scopeid 0x20<link>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        inet6 fe80::5034:31ff:fefc:1ed2  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::3499:bcff:fe96:6301  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::fc54:ff:feb9:e244  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::fcbb:78ff:fe99:40fd  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::fc54:ff:feba:d7ea  prefixlen 64  scopeid 0x20<link>
root@Tower:~# ping6 fe80::36f7:16ff:fe9c:44ab
PING fe80::36f7:16ff:fe9c:44ab(fe80::36f7:16ff:fe9c:44ab) 56 data bytes
64 bytes from fe80::36f7:16ff:fe9c:44ab%bond0: icmp_seq=1 ttl=64 time=0.024 ms
64 bytes from fe80::36f7:16ff:fe9c:44ab%bond0: icmp_seq=2 ttl=64 time=0.025 ms
64 bytes from fe80::36f7:16ff:fe9c:44ab%bond0: icmp_seq=3 ttl=64 time=0.022 ms

 

please help me , many thanks

 

 

tower-diagnostics-20231014-1101.zip

Edited by Favor
Link to comment
  • Solution

This all reads a bit wrong and false.

With DHCP-PD you usually get a prefix "delivered" which you can use to forward to internal routers.

But, if you already get a /64, there is no way to forward anything anymore. So, you dont have -PD (and usually also do not need it).

 

Also, all addresses FE80::... are internally only, never can cross the router.

 

May it be that you have a castrated ISP connection which uses NAT on V6???

 

and what means "cannot get normally" ???

Does it get an address or not (and no, FE80:: are NOT valid addresses!!!) ? I dont see any in the list.

 

There should be at least ONE public address in the list like:

root@F:~# ifconfig |grep inet6
        inet6 2001:470:70af:1::4  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::202:c9ff:fea5:a990  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::42:80ff:fe81:3781  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::1  prefixlen 64  scopeid 0x20<link>
        inet6 fd17::1  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::202:c9ff:fea5:a990  prefixlen 64  scopeid 0x20<link>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        inet6 fe80::403b:1dff:fe21:35e9  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::2c71:99ff:feec:e5d4  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::cc61:d5ff:fe30:531b  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::78bd:33ff:fec3:bec9  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::fc54:ff:fecd:f8ac  prefixlen 64  scopeid 0x20<link>

Everything starting with "Fxxx" is local only. The real address is 2001:470:.... (no need to mask it, its well known and static) You can also see it at the end of the lines. Unless there is a <global> you can forget this address.

 

I guess (just a guess), your router does not seriously announce the prefix, it grants addresses per dhcp, but does not inform the lan via "router advertisement protocol". Unless the lease time for DHCP is halfly used up, Linux (and therefor UNRAID ) do not try to re-register the boot time given address. Your smartphone does this over and over (it assumes you have changed nets). With RTA Unraid also would renew the address instantly (and get a new one).

Check the settings of your router, maybe there is some config wrong or missing.

 

(* the address fd17::1 is also been shown as global. This is a general mistake in Linux. It should be written "<link global>" because it can be used within your subnets, but never leave the router to the outside world. So it is more link but global)

 

Edited by MAM59
Link to comment
5 hours ago, MAM59 said:

This all reads a bit wrong and false.

With DHCP-PD you usually get a prefix "delivered" which you can use to forward to internal routers.

But, if you already get a /64, there is no way to forward anything anymore. So, you dont have -PD (and usually also do not need it).

 

Also, all addresses FE80::... are internally only, never can cross the router.

 

May it be that you have a castrated ISP connection which uses NAT on V6???

 

and what means "cannot get normally" ???

Does it get an address or not (and no, FE80:: are NOT valid addresses!!!) ? I dont see any in the list.

 

There should be at least ONE public address in the list like:

root@F:~# ifconfig |grep inet6
        inet6 2001:470:70af:1::4  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::202:c9ff:fea5:a990  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::42:80ff:fe81:3781  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::1  prefixlen 64  scopeid 0x20<link>
        inet6 fd17::1  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::202:c9ff:fea5:a990  prefixlen 64  scopeid 0x20<link>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        inet6 fe80::403b:1dff:fe21:35e9  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::2c71:99ff:feec:e5d4  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::cc61:d5ff:fe30:531b  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::78bd:33ff:fec3:bec9  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::fc54:ff:fecd:f8ac  prefixlen 64  scopeid 0x20<link>

Everything starting with "Fxxx" is local only. The real address is 2001:470:.... (no need to mask it, its well known and static) You can also see it at the end of the lines. Unless there is a <global> you can forget this address.

 

I guess (just a guess), your router does not seriously announce the prefix, it grants addresses per dhcp, but does not inform the lan via "router advertisement protocol". Unless the lease time for DHCP is halfly used up, Linux (and therefor UNRAID ) do not try to re-register the boot time given address. Your smartphone does this over and over (it assumes you have changed nets). With RTA Unraid also would renew the address instantly (and get a new one).

Check the settings of your router, maybe there is some config wrong or missing.

 

(* the address fd17::1 is also been shown as global. This is a general mistake in Linux. It should be written "<link global>" because it can be used within your subnets, but never leave the router to the outside world. So it is more link but global)

 

 

thank you for your replay

 

"cannot get normally" means can not get ONE public address like 2001:470:....

 

and i think you are right the main problem is the  settings of my router, it may does not pass the "router advertisement protocol" rightly, i will try to grab the packet to check it exist or not.

 

and also, you are right "May it be that you have a castrated ISP connection which uses NAT on V6" , the three items below all disappear after 7 days😂

 

630694924_.thumb.png.d10f718e291503764364c88df9255c86.png

Link to comment
11 minutes ago, Favor said:

the three items below all disappear after 7 days

This can be normal, depending on the DHCP settings. But IPV6 usually does not use DHCP at all, usually it only announces the prefix through the router and the clients themselfs pick their addresses. This is called SLAAC (stateless adress autoconfiguration), but if your router sends the wrong packet, clients may switch to stateful address assignment (the router only annouces a default route, the client asks again, looking for a local DHCPV6 Server to give him an address).

The stateful mode is rare and DHCPV6 servers are really uncommon to non-existent.

 

So I guess your router is wrongly sending the "stateful" bit. instead it should send the "stateless" one.

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.