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.

Table 1 summarizes the base names that are used for the network device drivers for interfaces that are associated with real hardware.
Table 1. Interface base names for real devices

This table lists interface type and applicable device driver for the available base names. The last table row contains a comment and spans all cells.

Base name Interface type Device driver module Hardware
eth Ethernet qeth, lcs OSA-Express features
eth Ethernet mlx4_en RoCE Express feature
eth Ethernet mlx5_core RoCE Express feature (Connect X-4)
Draft comment: hweber
State that eth name space is shared, also in RoCE and qeth chapters?
This table is intended as an overview only. For details about which version of a particular hardware is supported by a device driver, see the applicable section about the device driver.
Table 2 summarizes the base names that are used for the network device drivers for interfaces that are associated with virtual hardware:
Table 2. Interface base names for virtual devices

This table lists interface type and applicable device driver for the available base names.

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

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.