Skip to contentSkip to conversation

IPv6 link-local address not getting added

BISECTED Sowmini Varadhan 2 participants 2 messages Jun 28, 2018

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi David,

An IPv6 regression has been introduced in 4.17.0-rc6 by
8308f3f net/ipv6: Add support for specifying metric of connected routes

The regression is that some interfaces on my test machine come up with link-local addrs but the fe80 prefix is missing. After this bug, I cannot send any packets to anyone onlink (including my routers).

Here are the symptoms:

When everything is fine, "ip -6 route|grep eno" shows

2606:b400:400:18c8::/64 dev eno1 proto ra metric 100 pref medium fe80::5:73ff:fea0:52d dev eno1 proto static metric 100 pref medium

fe80::/64 dev eno1 proto kernel metric 256  pref medium
fe80::/64 dev eno3 proto kernel metric 256  pref medium
fe80::/64 dev eno4 proto kernel metric 256  pref medium

default via fe80::5:73ff:fea0:52d dev eno1 proto static metric 100 pref medium

But after 8308f3f, I only find

# ip -6 route|grep eno
2606:b400:400:18c8::/64 dev eno1 proto ra metric 100  pref medium
fe80::5:73ff:fea0:52d dev eno1 proto static metric 100  pref medium
fe80::/64 dev eno1 proto kernel metric 256  pref medium
default via fe80::5:73ff:fea0:52d dev eno1 proto static metric 100  pref medium

(note that eno2 is not enabled in my config, so its absence is expected)

Please have a look, thanks.
--Sowmini

#1 lore raw
Quoted 30 lines · Sowmini Varadhan

Hi David,

An IPv6 regression has been introduced in 4.17.0-rc6 by
8308f3f net/ipv6: Add support for specifying metric of connected routes

The regression is that some interfaces on my test machine come up with link-local addrs but the fe80 prefix is missing. After this bug, I cannot send any packets to anyone onlink (including my routers).

Here are the symptoms:

When everything is fine, "ip -6 route|grep eno" shows

2606:b400:400:18c8::/64 dev eno1 proto ra metric 100 pref medium fe80::5:73ff:fea0:52d dev eno1 proto static metric 100 pref medium

fe80::/64 dev eno1 proto kernel metric 256  pref medium
fe80::/64 dev eno3 proto kernel metric 256  pref medium
fe80::/64 dev eno4 proto kernel metric 256  pref medium

default via fe80::5:73ff:fea0:52d dev eno1 proto static metric 100 pref medium

But after 8308f3f, I only find

# ip -6 route|grep eno
2606:b400:400:18c8::/64 dev eno1 proto ra metric 100  pref medium
fe80::5:73ff:fea0:52d dev eno1 proto static metric 100  pref medium
fe80::/64 dev eno1 proto kernel metric 256  pref medium
default via fe80::5:73ff:fea0:52d dev eno1 proto static metric 100  pref medium
Quoted 5 lines

(note that eno2 is not enabled in my config, so its absence is expected)

Please have a look, thanks.
--Sowmini

interesting. I am not seeing that. Using your static LL routes:

# ip -6 ro ls
::1 dev lo proto kernel metric 256 pref medium
2001:db8:2::/120 dev eth2 proto kernel metric 256 pref medium
fe80::5:73ff:fea0:52d dev eth4 metric 100 pref medium
fe80::/64 dev eth4 proto kernel metric 256 pref medium
fe80::/64 dev eth5 proto kernel metric 256 pref medium
fe80::/64 dev eth6 proto kernel metric 256 pref medium
fe80::/64 dev eth7 proto kernel metric 256 pref medium
fe80::/64 dev eth8 proto kernel metric 256 pref medium
fe80::/64 dev eth2 proto kernel metric 256 pref medium
default via fe80::5:73ff:fea0:52d dev eth4 metric 100 pref medium

can you send me the network config files (off list is fine)? What's the interface manager and any routing daemon in use?