created on | August 21, 2025 |
there are several naming schemes in Linux:
the “traditional” or “classic” naming scheme of the nineties with iface names eth0, eth1, wlan0, wlan1, etc. Interfaces get their names assigned by the kernel on a first-come, first-serve policy as they are probed by the network interface drivers. With nowadays complex hardware, this way of naming is no longer predictable if more than one interface of a kind (ethernet, wlan, …) exists in the machine. some custom schemes working towards alleviating the problem mentioned above. Programs like nameif and ifrename (which uses udev) used config files like /etc/iftab and assigned interface names based on the MAC address – which comes with another set of problems. These custom schemes seem to be no longer in use. the predictable network interface devices names introduced in udev. Note that udev is developed as a part of systemd but can be used completely without systemd (at least at the time of writing). The authoritative documentation on the persistent naming on freedesktop.org is marked as obsolete and refers to the systemd.net-naming-scheme man page. Unfortunately, I can’t wrap my head around that man page completely.
...