Closed ghen2 closed 3 years ago
Looks like it's starting from an empty state with every cycle:
Jun 28 10:32:10 systemd-networkd[222]: eno1: NDISC: Received Router Advertisement: flags OTHER preference medium lifetime 1800 sec
Jun 28 10:32:10 systemd-networkd[222]: eno1: NDISC: Invoking callback for 'router' event.
Jun 28 10:32:10 systemd-networkd[222]: eno1: Acquiring DHCPv6 lease on NDisc request
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting route: dst: n/a, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting route: dst: 2a02:1810:4d12:7000::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min 1s, preferred for 2h 1min 1s), flags: manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting route: dst: fd1b:229d:8fec::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting route: dst: 2a02:1810:4d12:7000::/56, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Requesting route: dst: fd1b:229d:8fec::/48, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Setting SLAAC addresses.
Jun 28 10:32:10 systemd-networkd[222]: eno1: Setting NDisc routes.
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing old NDisc information obtained from fe80::c43d:c7ff:fea3:20bd.
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing address: fd1b:229d:8fec:0:1e69:7aff:fe0b:e1fe/64 (valid forever, preferred forever), flags: permanent,manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min 26s, preferred for 2h 1min 26s), flags: manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing route: dst: fd1b:229d:8fec::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing route: dst: 2a02:1810:4d12:7000::/56, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing route: dst: fd1b:229d:8fec::/48, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing route: dst: n/a, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Removing route: dst: 2a02:1810:4d12:7000::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Remembering updated address: fd1b:229d:8fec:0:5487:a11b:9754:7d2a/64 (valid for 0, preferred for 0), flags: temporary
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting address: fd1b:229d:8fec:0:1e69:7aff:fe0b:e1fe/64 (valid forever, preferred forever), flags: permanent,manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: fd1b:229d:8fec:0:1e69:7aff:fe0b:e1fe/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting address: fd1b:229d:8fec:0:5487:a11b:9754:7d2a/64 (valid for 0, preferred for 0), flags: temporary
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: fd1b:229d:8fec:0:5487:a11b:9754:7d2a/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Jun 28 10:32:10 systemd-networkd[222]: eno1: Remembering updated address: 2a02:1810:4d12:7000:981c:e4a7:7023:46ff/64 (valid for 0, preferred for 0), flags: temporary
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min 2s, preferred for 2h 1min 2s), flags: manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting address: 2a02:1810:4d12:7000:981c:e4a7:7023:46ff/64 (valid for 0, preferred for 0), flags: temporary
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: 2a02:1810:4d12:7000:981c:e4a7:7023:46ff/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min 1s, preferred for 2h 1min 1s), flags: manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: fd1b:229d:8fec::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: 2a02:1810:4d12:7000::/56, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: fd1b:229d:8fec::/48, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: n/a, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Forgetting route: dst: 2a02:1810:4d12:7000::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring route: dst: n/a, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring route: dst: 2a02:1810:4d12:7000::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring route: dst: fd1b:229d:8fec::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring route: dst: 2a02:1810:4d12:7000::/56, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Configuring route: dst: fd1b:229d:8fec::/48, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Remembering updated address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min 1s, preferred for 2h 1min 1s), flags: tentative,manage-temporary-address,no-prefixroute
Jun 28 10:32:10 systemd-networkd[222]: eno1: NDisc SLAAC addresses set.
Jun 28 10:32:10 systemd-networkd[222]: eno1: No SLAAC address obtained from fe80::c43d:c7ff:fea3:20bd is ready. The old NDisc information will be removed later.
Jun 28 10:32:10 systemd-networkd[222]: eno1: Received remembered route: dst: n/a, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Received remembered route: dst: 2a02:1810:4d12:7000::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Received remembered route: dst: fd1b:229d:8fec::/64, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Received remembered route: dst: 2a02:1810:4d12:7000::/56, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: Received remembered route: dst: fd1b:229d:8fec::/48, src: n/a, gw: fe80::c43d:c7ff:fea3:20bd, prefsrc: n/a, scope: global, table: main(254), proto: ra, type: unicast, nexthop: 0, priority: 1024
Jun 28 10:32:10 systemd-networkd[222]: eno1: NDisc routes set.
Jun 28 10:32:10 systemd-networkd[222]: eno1: No SLAAC address obtained from fe80::c43d:c7ff:fea3:20bd is ready. The old NDisc information will be removed later.
Jun 28 10:32:11 systemd-networkd[222]: eno1: Remembering foreign address: 2a02:1810:4d12:7000:594:31f:d12c:59dd/64 (valid for 10h 1min, preferred for 2h 1min), flags: temporary
Jun 28 10:32:11 systemd-networkd[222]: eno1: Remembering foreign route: dst: 2a02:1810:4d12:7000:594:31f:d12c:59dd/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Jun 28 10:32:11 systemd-networkd[222]: eno1: Remembering updated address: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/64 (valid for 10h 1min, preferred for 2h 1min), flags: manage-temporary-address,no-prefixroute
Jun 28 10:32:11 systemd-networkd[222]: eno1: Removing old NDisc information obtained from fe80::c43d:c7ff:fea3:20bd.
Jun 28 10:32:11 systemd-networkd[222]: eno1: Remembering foreign route: dst: 2a02:1810:4d12:7000:1e69:7aff:fe0b:e1fe/128, src: n/a, gw: n/a, prefsrc: n/a, scope: global, table: local(255), proto: kernel, type: local, nexthop: 0, priority: 0
Sounds like we need another #19980, but this time for IPv6.
Please note that this is a regression in 249(rc2), this behaviour was not present in 248.
Yeah, but there were 250 non-merge commits touching src/network in the period. If you could bisect this, that'd probably help.
Please also paste /etc/systemd/network/10-ethernet.network
.
FWIW, I don't see this here.
This seems to be the last unadressed issue for v249. I think we should leave it for later, unless @yuwata has some good idea how to fix this.
Hmm, this is caused by 0828a38605975b68c14c9194a1ee2c5c2ff7038f. But it fixes other issues...
Please also paste
/etc/systemd/network/10-ethernet.network
.
[Match]
Name=eno1
[Network]
Address=fd1b:229d:8fec::3/64
IPv6PrivacyExtensions=yes
Address=172.16.1.3/24
Gateway=172.16.1.254
DNS=fd1b:229d:8fec::1
+ SLAAC/privacy addressing based on prefix advertisements (ULA + global, with long lifetimes) from an OpenWRT router, no DHCPv6.
@ghen2 If possible, could you test #20108?
Yes, https://github.com/systemd/systemd/pull/20108 works for me, thanks!
Another difference between 248 and 249 (with or without your patch) is that the SLAAC addresses in the ULA prefix continously appear and disappear (both fixed mac-based in temporary privacy addresses), which is strange. This does not happen for the globally routable prefix though, does networkd distinguish between those?
In fact, this causes the same issue for outgoing connections within ULA prefix (thus within my LAN). Your patch fixed it for "outside" connections (sourced from globally routable addresses) but not for local ones.
Thank you for testing the PR so quickly! I added one more commit in the PR. I hope it fixes the ULA address issue. Please test gain.
Yes, the ULA case is fixed as well now. Thanks!
Thank you! Your help is much appreciated.
Same here and PR#20108 fixed the issue (Archlinux, systemd-249rc3).
systemd version the issue has been seen with
Used distribution
Linux kernel version used (
uname -a
)CPU architecture issue was seen on
Expected behaviour you didn't see
Unexpected behaviour you saw
Steps to reproduce the problem
Additional program output to the terminal or log subsystem illustrating the issue
Below is a diff of
networkctl status 3
with just a few minutes in a between. A new temporary privacy address has been added and the old one immediatly removed, breaking all existing connections with that old address. This happens every few minutes, despite the much longer valid_lifetime indicated byip addr list
.Normally, old addresses are first put in "deprecated" state, so they are no longer used for new connections, and removed later. Plus rotation should be much less frequent, respecting valid_lifetime of the addresses (hours for global addresses, days for ULA).
I noticed this behaviour with systemd 249rc2, coming from 248 where it was stable.
ip -6 addr list