Predictable Consistent Network Device Naming
Predictable Consistent Network Device Naming is a convention Linux uses to name Ethernet adapters. Before this convention, the ethX naming convention was the default convention.
The ethX convention names network interfaces as eth[0123…]s0. It names interfaces in the order the kernel finds them at boot time. For example, it will use the name eth0 for the first detected interface, eth1 for the second detected interface, and so on. This convention creates problems in systems that change interfaces based on requirements. Removing existing or adding new interfaces causes the previously added ones to change their names. It affects both network adapters embedded on the motherboard and add-in adapters.
From RHEL7, RedHat replaced the ethX naming scheme with the udev device manager to fix these issues and use a consistent network device naming convention. It assigns a unique name to each interface based on firmware, topology, and location information. It uses the following rules to generate a unique name for an interface.
- Use index numbers eno[1-N] for onboard interfaces
- Use slot numbers ens[1-N] for PCI Express hotplug interfaces
- Use index number enp[PCI slot]s[card index no] for PCI slot
- Use traditional eth[0-N] if firmware information is invalid or rules are disabled
The first two letters of the generated name represent the device's firmware. For example, Ethernet interfaces begin with en, WLAN interfaces begin with wl, and WWAN interfaces begin with ww.

The following letter represents the device's type, location, or topology. For example, the letter o represents an onboard device, s represents a hot plug slot, and p represents a PCI card.

The remaining numbers represent an index, ID, or port.
Let's take the example name eno16777737. The first two letters en stand for an Ethernet interface in this name. The following letter, o, stands for an onboard interface. The remaining number, 16777737, is a unique ID number.

The main benefit of this scheme is that it provides fully automatic, fixed, and predictable names even if interfaces are added or removed. You can easily remove a faulty interface or add a new interface without changing the existing names. The main disadvantage of this scheme is that it assigns names that are harder to remember.
This tutorial is part of the tutorial series Managing Basic Networking (RHCSA / RHCE) Study Guide. Other parts of this series are the following.
Chapter 01 Managing Basic Networking RHCSA Exam
Chapter 02 Predictable Consistent Network Device Naming
Chapter 03 Linux ip Address Command Usages and Examples
Chapter 04 Linux ip Command Cheat Sheet
Chapter 05 The ip Command v/s the ifconfig Command
Chapter 06 Understanding Linux Network Manager Fundamental
Chapter 07 Managing Linux NetworkManager
Chapter 08 Linux NetworkManager Tools and Utilities
Chapter 09 The nmcli Command on Linux Examples and Usages
Chapter 10 The nmtui Command and Utility on Linux
Chapter 11 The nm-connection-editor Command on Linux
Chapter 12 How to Configure IP Address in Linux
Chapter 13 How to Configure Multiple IP Addresses on Linux
Chapter 14 How to Configure IPv6 on Linux
Chapter 15 Basic Linux Commands for Network Testing
Chapter 16 Network Configuration Files in Linux Explained
Chapter 17 The /etc/hosts, /etc/resolv.conf, and /etc/nsswitch.conf Files
Chapter 18 How to Change the Hostname on Linux
Network interfaces and connections
LAN cards, network adapters, or network interface cards are hardware adapters that provide one or more Ethernet ports. An Ethernet port is called a network device or a network interface.

A network interface uses a connection to connect to the network. A connection is a collection of all the settings the interface needs to connect to the network. Some examples of the settings the connection includes are IP configuration, hardware address, boot state, and device name.

You can assign multiple connections to an interface. However, you can use only one at a time. You must use a unique name for each connection to assign various connections. You can also configure the interface to select the appropriate connection automatically.
Conclusion
The transition from the ethX naming convention to the Predictable Consistent Network Device Naming scheme in Linux addresses the challenges posed by devices changing names upon addition or removal. This new approach ensures stability and predictability in network configuration by utilizing unique identifiers based on firmware and topology. While it simplifies management and enhances consistency, the trade-off lies in the complexity of names, which may be harder to memorize. Understanding these naming conventions is essential for effectively managing network interfaces, especially in dynamic environments.
Author Laxmi Goswami Updated on 2025-11-03