[Bug 1964494] Re: Setting DuplicateAddressDetection=none doesn't disable DAD for link-local IPs
Lukas Märdian
1964494 at bugs.launchpad.net
Tue Jun 7 13:40:39 UTC 2022
This SRU should be combined with LP: #1969375 as uploaded in
249.11-0ubuntu3.3 (containing some more autopkgtest related changes)
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1964494
Title:
Setting DuplicateAddressDetection=none doesn't disable DAD for link-
local IPs
Status in systemd:
Fix Released
Status in systemd package in Ubuntu:
Triaged
Status in systemd source package in Jammy:
New
Status in systemd source package in Kinetic:
Triaged
Bug description:
[impact]
manual disabling of ipv4 DAD (IACD) for static link-local address does
not work in jammy
[test case]
see 'Reproducer' in original description below
[regression potential]
failure to disable DAD, or incorrect disabling of DAD, or networkd
issues around parsing of DAD config parsing
[scope]
this is needed for j and k
introduced upstream by commit
1cf4ed142d6c1e2b9dc6a0bc74b6a83ae30b0f8e, first included in v249, so
this bug does not affect impish or earlier
fixed upstream by commit 2859932bd64d61a89f85fa027762bc16961fcf53
[original description]
A customer reported network disconnections on their storage
servers when running 'netplan apply'. The culprit was that
they have link-local addresses configured and the Duplicate
Address Detection (DAD) mechanism was delaying the interfaces
from coming back up.
As a workaround we tried to disable DAD for the interfaces
but that's not working in Ubuntu 22.04:
I've noticed that setting DuplicateAddressDetection=none for an
interface with a link-local address (e.g., 169.254.*) via a
.network file added to /etc/systemd/network/ doesn't really
disable Duplicate Address Detection.
OS and package versions:
------------------------
- Description: Ubuntu Jammy Jellyfish (development branch). Release: 22.04
- systemd 249.5-2ubuntu4
Reproducer:
-----------
1- Set up Ubuntu 22.04 VM
2- Increase systemlog level:
mkdir -p /etc/systemd/system/systemd-networkd.service.d/
cat > /etc/systemd/system/systemd-networkd.service.d/10-debug.conf <<EOF
[Service]
Environment=SYSTEMD_LOG_LEVEL=debug
EOF
systemctl daemon-reload && systemctl restart systemd-networkd
3- Configure a link-local address to a network interface on the VM:
vi /etc/systemd/network/10-netplan-enp7s0.network
# add
[Match]
Name=enp7s0
[Address]
Address=169.254.240.10/24
DuplicateAddressDetection=ipv4
4- Restart services and apply
systemctl daemon-reload && systemctl restart systemd-networkd && systemctl restart networkd-dispatcher.service
netplan apply
5- Check if DAD is running (it should):
journalctl -b -u systemd-networkd --no-pager -o short-precise | grep
-i ACD
6- Set DuplicateAddressDetection=none in
/etc/systemd/network/10-netplan-enp7s0.network
7- Restart services and apply as in step 4
8- Check if DAD is running as in step 5 (it shouldn't, but
it's there)
After step 7 DAD should be disabled as expected and it
shouldn't be executed when running 'netplan apply' but
it is actually executed.
I think this commit [1] may be related (landed in systemd
v249). I've also tested the out-of-the-box systemd versions
for Focal and Impish but there I can effectively disable
DAD. If the IPs are set to non-link local addresses then
the problem is not observed anymore.
[1]
https://github.com/systemd/systemd/commit/1cf4ed142d6c1e2b9dc6a0bc74b6a83ae30b0f8e
To manage notifications about this bug go to:
https://bugs.launchpad.net/systemd/+bug/1964494/+subscriptions
More information about the foundations-bugs
mailing list