I have verified the fix using systemd 252.5-2ubuntu3.2 in lunar-proposed: Creating a fresh container: nr@six:~$ lxc launch ubuntu-daily:lunar lunar Creating lunar Starting lunar nr@six:~$ lxc exec lunar bash In the container, after enabling -proposed: root@lunar:~# apt update && apt install -y systemd [...] root@lunar:~# apt-cache policy systemd systemd: Installed: 252.5-2ubuntu3.2 Candidate: 252.5-2ubuntu3.2 Version table: *** 252.5-2ubuntu3.2 500 500 http://archive.ubuntu.com/ubuntu lunar-proposed/main amd64 Packages 100 /var/lib/dpkg/status 252.5-2ubuntu3.1 500 500 http://archive.ubuntu.com/ubuntu lunar-updates/main amd64 Packages 252.5-2ubuntu3 500 500 http://archive.ubuntu.com/ubuntu lunar/main amd64 Packages root@lunar:~# vi /etc/netplan/50-cloud-init.yaml root@lunar:~# cat /etc/netplan/50-cloud-init.yaml # This file is generated from information provided by the datasource. Changes # to it will not persist across an instance reboot. To disable cloud-init's # network configuration capabilities, write a file # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following: # network: {config: disabled} network: version: 2 ethernets: eth0: dhcp4: true optional: true root@lunar:~# netplan generate root@lunar:~# netplan apply Cannot call openvswitch: ovsdb-server.service is not running. root@lunar:~# time SYSTEMD_LOG_LEVEL=debug /usr/lib/systemd/systemd-networkd-wait-online --timeout=5 Found link 13 Found link 1 eth0: link is ignored lo: link is ignored real 0m0.003s user 0m0.003s sys 0m0.000s root@lunar:~# echo $? 0 I also ran the test from bug 1982218 again to ensure that does not regress: On the host, I have clean-lunar-amd64, and detached it's default network interface: nr@six:~$ virsh detach-interface clean-lunar-amd64 network Interface detached successfully Then, in the VM, configure systemd-networkd to use DHCP on all en* interfaces: root@clean-lunar-amd64:/home/nr# apt-cache policy systemd systemd: Installed: 252.5-2ubuntu3.2 Candidate: 252.5-2ubuntu3.2 Version table: *** 252.5-2ubuntu3.2 500 500 http://archive.ubuntu.com/ubuntu lunar-proposed/main amd64 Packages 100 /var/lib/dpkg/status 252.5-2ubuntu3.1 500 500 http://archive.ubuntu.com/ubuntu lunar-updates/main amd64 Packages 252.5-2ubuntu3 500 500 http://archive.ubuntu.com/ubuntu lunar/main amd64 Packages root@clean-lunar-amd64:/home/nr# cat > /etc/systemd/network/10-dhcp.network << EOF [Match] Name=en* [Network] DHCP=yes EOF root@clean-lunar-amd64:/home/nr# systemctl restart systemd-networkd Now, back in the host, I attach a network interface without DHCP: nr@six:~$ virsh attach-interface clean-lunar-amd64 network no-dhcp Interface attached successfully In the VM, check that wait-online times out since the interface does not get configured: root@clean-lunar-amd64:/home/nr# /lib/systemd/systemd-networkd-wait-online --any --timeout=5 Timeout occurred while waiting for network connectivity. root@clean-lunar-amd64:/home/nr# networkctl IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 3 ens3 ether degraded configuring 2 links listed. From the host, attach another interface that will get DHCP: nr@six:~$ virsh attach-interface clean-lunar-amd64 network default Interface attached successfully And finally, in the VM, run wait-online again and see that it will exit successfully when the second interface is configured: root@clean-lunar-amd64:/home/nr# /lib/systemd/systemd-networkd-wait-online --any --timeout=0 eth0: Failed to update link state, ignoring: No such file or directory root@clean-lunar-amd64:/home/nr# networkctl IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 3 ens3 ether degraded configuring 4 ens9 ether routable configured 3 links listed.