Comment 3 for bug 1483457

Revision history for this message
Ryan Harper (raharper) wrote :

net.ifnames should be set to 0 by default IIUC[1]. It appears that it's not set in the wily kernel used in this image. I don't know where we configure/control the default value.

We don't see this issue with virtio-net nics because systemd considers virtio numbers to be unstable[2] and doesn't have a rule to name virtio devices (aka the kernel name get's passed through always).

For e1000, this appears in the systemd database and thus gets renamed via the default netrules based on slot location (en, slot 3) -> ens3.

If we append 'net.ifnames=0' to the cloud image as of today and use an e1000 nic, this skips persistent naming and the cloud image boots as expected.

The trouble occurs when we don't have a nic named eth0 due to persistent naming rules triggering and the cloud-image has eth0 embedded into it's filesystem:

% cat /etc/network/interfaces.d/eth0.cfg
# The primary network interface
auto eth0
iface eth0 inet dhcp

1. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=762101#105
2. http://lists.freedesktop.org/archives/systemd-devel/2014-July/020908.html