Subject: [IPv6 Question] Should we remove or keep the temporary address if global address removed?

From: Hangbin Liu <[email-masked]>
Date: Tue, 5 Nov 2024 11:16:37 +0000

Hi Sam,

Our QE just find the latest upstream kernel behavior changed for temporary
address. i.e. In the previous time, the kernel will also remove the temporary
address if the related global address deleted. But now the kernel will keep
the temporary there. e.g.
```
# sysctl -w net.ipv6.conf.enp59s0f0np0.use_tempaddr=1
# ip add add 2003::4/64 dev enp59s0f0np0 mngtmpaddr
# ip add show enp59s0f0np0
6: enp59s0f0np0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether b8:59:9f:06:56:6c brd ff:ff:ff:ff:ff:ff
    inet6 2003::d280:ee50:d13e:a1b1/64 scope global temporary dynamic
       valid_lft 604793sec preferred_lft 86393sec
    inet6 2003::4/64 scope global mngtmpaddr
       valid_lft forever preferred_lft forever
# ip add del 2003::4/64 dev  enp59s0f0np0 mngtmpaddr
# ip add show enp59s0f0np0
6: enp59s0f0np0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether b8:59:9f:06:56:6c brd ff:ff:ff:ff:ff:ff
    inet6 2003::d7c7:a239:2519:2491/64 scope global temporary dynamic
       valid_lft 604782sec preferred_lft 86382sec
```
    ^^ previously this temporary address will also be removed.

After checking the code, it looks commit 778964f2fdf0 ("ipv6/addrconf: fix
timing bug in tempaddr regen") changes the behavior. I can't find what we should
do when delete the related global address from RFC8981. So I'm not sure
which way we should do. Keep or delete the temporary address.

Do you have any idea?

Thanks
Hangbin