920

Context for newbies: Linux refers to network adapters (wifi cards, ethernet cards, etc.) by so called "interfaces". For the longest time, the interface names were assigned based on the type of device and the order in which the system discovered it. So, eth0, eth1, wlan0, and wwan0 are all possible interface names. This, however, can be an issue: "the order in which the system discovered it" is not deterministic, which means hardware can switch interface names across reboots. This can be a real issue for things like servers that rely on interface names staying the same.

The solution to this issue is to assign custom names based on MAC address. The MAC address is hardcoded into the network adaptor, and will not change. (There are other ways to do this as well, such as setting udev rules).

Redhat, however, found this solution too simple and instead devised their own scheme for assigning network interface names. It fails at solving the problem it was created to solve while making it much harder to type and remember interface names.

To disable predictable interface naming and switch back to the old scheme, add net.ifnames=0 and biosdevname=0 to your boot paramets.

The template for this meme is called "stop doing math".

(page 2) 50 comments
sorted by: hot top controversial new old
[-] jadedwench@lemmy.world 7 points 2 weeks ago

I had to change mine to mac address naming on my proxmox server after the second time the name changed due to a GPU or SSD being added. It was kind of like, so what, if an SSD dies suddenly or I have some issue with a device you are going to rename my fucking nic card again while I am trying to troubleshoot? Absolutely deranged.

[-] possiblylinux127@lemmy.zip 7 points 2 weeks ago

Wait until you find out about vlans

[-] muntedcrocodile@lemm.ee 6 points 2 weeks ago

Fuck thats why my conky is fucked.

[-] Badabinski@kbin.earth 4 points 2 weeks ago* (last edited 2 weeks ago)

I always just derive the interface name from first principles. Like, if I want to know which interface will be used to get out to the internet in a script, I'll just find the one that's L2 adjacent with the default gateway. If I'm given an egress or cidr, I'll just find the interface that has that IP. Modern iproute2 has a JSON output option which makes getting this information pretty trivial. Doing that means that it doesn't matter what scheme your OS is using.

I personally prefer the persistent names for Ethernet, although I don't like them for WiFi. Luckily, it seems like my wireless adapter always just ends up as wlan0. I'm not sure why that's the case, but it works out well in the end for me.

[-] Fades@lemmy.world 2 points 2 weeks ago

life-long Kali fan

[-] d00phy@lemmy.world 2 points 2 weeks ago

So I do HPC installations, and using Mellanox/NVIDIA adapters in Ethernet mode absolutely sucks. First, when you initially install them, they’re named something like ens2f0, where “2” generally corresponds to the PCI slot. Pretty easy, until you install MOFED. Yeah, I know you don’t need MOFED, but the drivers included in RHEL are waaay old. Anyway, after installing the newer drivers, that exact same interface becomes ens2f0np0!

What’s even better is there’s no guarantee that a PCI Ethernet card in PCI slot 2 will be “ens2…” which I would argue is predictive!

load more comments
view more: ‹ prev next ›
this post was submitted on 27 Jun 2024
920 points (96.6% liked)

linuxmemes

19825 readers
1080 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS