Interface names
The interface names are assigned by the Linux® network stack.
Interface names are of the form <base_name><n> where <base_name> is a base name that is used for a particular interface type. <n> is an index number that identifies an individual interface of a particular type.
The interface names with base name eno and ens are an exception to this rule. Instead of an index, they use a persistent device property to yield predictable interface names. On SUSE Linux Enterprise Server 15, such names are displayed as aliases to the eth<n> name, see Network interface names.
Table 1 summarizes the base names that are used for the network device drivers for interfaces that are associated with real hardware.
Base name | Interface type | Device driver module | Hardware |
---|---|---|---|
eth | Ethernet | qeth, lcs | OSA-Express features |
eth (eno | ens) | Ethernet | mlx4_en | RoCE Express feature |
eth (eno | ens) | Ethernet | mlx5_core | RoCE Express feature (Connect X-4) |
Table 2 summarizes the base names that are used for the network device drivers for interfaces that are associated with virtual hardware:
Base name | Interface type | Device driver module | Comment |
---|---|---|---|
hsi | HiperSockets, virtual NIC | qeth | Real HiperSockets or virtual NIC type HiperSockets coupled to a guest LAN |
eth | virtual NIC | qeth | QDIO virtual NIC coupled to a guest LAN or virtual switch |
eth | virtual NIC | virtio_net | virtio virtual NIC |
When the first device for a particular interface name is set online, it is assigned the index number 0, the second is assigned 1, the third 2, and so on. For example, the first HiperSockets interface is named hsi0, the second hsi1, the third hsi2, and so on.
When a network device is set offline, it retains its interface name. When a device is removed, it surrenders its interface name and the name can be reassigned as network devices are defined in the future. When an interface is defined, the Linux kernel always assigns the interface name with the lowest free index number for the particular type. For example, if the network device with an associated interface name hsi1 is removed while the devices for hsi0 and hsi2 are retained, the next HiperSockets interface to be defined becomes hsi1.