Consistent Network Device Naming

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Consistent Network Device Naming is a convention for naming Ethernet adapters in Linux.

It was created around 2009 to replace the old ethX naming scheme that caused problems on multihomed machines because the network interface controllers (NICs) would be named based on the order in which they were found by the kernel as it booted. Removing existing or adding new interfaces could cause the previously added ones to change names.[1] An Engineering Change Request was submitted to the PCI SIG firmware group on how system firmware can provide device naming to operating systems via the ACPI interface.[2]

Adoption

[edit | edit source]

The convention was implemented for Dell in a module called biosdevname.[3]

Among the first major Linux distributions to adopt the module were Fedora 15 in May 2011[4][5] and Red Hat Enterprise Linux version 6.1.[6][7] It was also released in SUSE Linux Enterprise Server 11 Service Pack 2 in February 2012.[7] The newer Dell PowerEdge and Dell Precision models support the new names.[7]

An open-source implementation is available, based on the udev mechanism.[8][9] Red Hat Enterprise Linux 7 started using systemd for networking.[10]

Device naming rules

[edit | edit source]
  • Onboard interfaces at firmware index numbers eno[1-N]
  • Interfaces at PCI Express hotplug slot numbers ens[1-N]
  • Adapters in the specified PCI slot, with slot index number on the adapter enp<PCI slot>s<card index no>
  • If firmware information is invalid or rules are disabled, use traditional eth[0-N][11]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  11. ^ RHCSA & RHCE Red Hat Enterprise Linux 7: Training and Exam Preparation Guide (EX200 and EX300), Third Edition Paperback – 27 Mar 2015 by Asghar Ghori