I think I understood this.
I have a udev rule to force the NIC name to eno1, which is not the
driver's default (it is eno1np0). I did not regenerate the initramfs, so
that rule did not propagate there.
What happens is:
- initramfs is executed. The NIC is renamed to eno1np0 (driver's default).
- systemd starts
- it runs the netplan generator
- the netplan generator sees its configuration for eno1, but does not match it
to eno1np0.
- as a consequence, it does not generate the symlink
(/run/systemd/generator/network-online.target.wants/systemd-networkd-wait-online.service)
- udev kicks in, renames the NIC to eno1, but it's too late.
That behaviour is caused by debian/patches/lp2060311/0010-wait-online-
wait-for-existing-interfaces-only-and-do.patch. Removing that patch
returns to the previous behaviour.
There are two potential workarounds:
- regenerate the initramfs, so that it knows about the new name for the
interface and names it correctly before systemd starts.
- help netplan match the real NIC with its configuration, for example
specifying the MAC address.
```
---
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: true
match:
macaddress: 98:03:9b:b0:a7:76
```
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2063973
Title:
network-online.target is reached before netplan-configured interfaces
are online
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/netplan.io/+bug/2063973/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs