On Sun, 9 Feb 2020 at 13:51, Nicolas Kovacs <info at microlinux.fr> wrote: > Le 09/02/2020 à 16:54, Alexander Dalloz a écrit : > > "Kernel always uses the ethX naming convention at boot when it > enumerates > > network devices. Due to parallelization, the order of the kernel > interface > > enumeration is expected to vary across reboots." > > Thanks for the heads up. > > I experimented quite a bit, and found some surprising behavior. So I > documented > everything in a little blog article. > > * https://www.microlinux.fr/interfaces-reseau-persistantes/ > > Cheers, > So yeah if there are certain cards, certain bios firmware, the eth? are not guarenteed. The upstream kernel will say it is not a bug as everything is doing what it is doing, and will point out various things where eth? is really an internal kernel representation which is only accurate by luck. What you are supposed to do is rename the interface (I think the docs I found said net0 or whatever you want) and link the two via udev or similar rules. That way the udev sets up and sees 'this pci/network is blah.. alias it to net0 and pass that so the scripts work. Then network-scripts or networkmanager or whatever sets up and down net0 versus a 'semi-random' eth interface. [For kernels beyond 4.?? and beyond I am expecting that this will be a more stringent requirement] -- Stephen J Smoogen.