network device names change w/kernel version

andrew bezella abezella at archive.org
Wed May 7 22:49:45 CEST 2025


hello -

i'm running into a situation where the systemd network device naming
changes with kernel version (bookworm/6.1 vs trixie/6.12 in this case).
this is possibly related to a change/update in devlink support in the
i40e driver[1] although i haven't found a "smoking gun" changelog
entry.

the bookworm kernel in the nfsroot sees the host's network interfaces
as `eno1` and `eno2` but once booted with the trixie kernel they are
reported as `eno1np0` and `eno2np1`.  so the network config using the
interfaces names as found during install is invalid once the system is
running.  i was hoping it might be systemd's `ID_NET_NAMING_SCHEME`
version but setting that equal to bookworm's (`net.naming_scheme=v252`)
did not help.  i have upgraded the kernel on an existing bookworm host
to the bpo version (`6.12.22+bpo-amd64`) and confirmed the same issue
after rebooting.

any thoughts on how to (elegantly) address this?  i could upgrade the
nfsroot kernel but still need to install os versions that will boot
with older kernels/naming.  i can think of some other workarounds to
try (search/replace strings and rename files in the installer, maybe
build and use a separate netboot for trixie+ installs, maybe force the
name to stay the same via macaddr-based naming) but am hoping to find a
cleaner solution.  fwiw the version of `scripts/DEBIAN/30-interface` in
use is more-or-less current, just missing recent minor changes. 
browsing through the mailing list archive i see (and have been involved
in) some discussions of similar problems but they've often been udev-
related.  apologies if i missed something pertinent.

thanks in advance for any suggestions!

	andy

1. https://serverfault.com/a/1143604

-- 
andrew bezella <abezella at archive.org>
internet archive


More information about the linux-fai mailing list