¿Por qué eno1 y eno2 están en este orden?

¿Por qué eno1 y eno2 están en este orden?

Acabo de instalar un sistema de estación de trabajo Fedora 21 y se invirtió el orden desde eno1y eno2hacia el sistema CentOS 6 que estaba aquí antes.

lspci | grep Eth
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)
03:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection

00:19.0tiene una dirección MAC que termina en :4f, mientras que 03:00.0termina en :50.

Tenía entendido que con una dirección PCI más baja, :4fse convertiría en eno1, pero en realidad cree que así :50es eno1.

¿Cuál es la razón de esto? ¿Debería aceptar que los sistemas con Fedora 21 tendrán un orden opuesto al de CentOS 6? (Implementamos docenas de estos sistemas).

Respuesta1

Para las NIC integradas en la placa base, en lugar de en las ranuras PCI/PCI-x/PCIe, los nombres de dispositivos de red "consistentes" en realidad se obtienen de la información proporcionada por el BIOS del sistema.

Para citar a Dell, quien ayudó a desarrollar esta función:

El BIOS del sistema indica el orden de los dispositivos de red integrados al sistema operativo a través de registros SMBIOS tipo 41. El BIOS del sistema proporciona "información de la ranura del sistema" al sistema operativo a través de registros tipo 9. biosdevname utiliza SMBIOS tipo 41 para sugerir nombres a los dispositivos de red integrados y registros tipo 9 para sugerir nuevos nombres para adaptadores complementarios PCI.

En otras palabras, el BIOS decide qué NIC integrada es la NIC 1 y cuál es la NIC 2.

Por lo tanto, sospecho que tuvo una actualización del BIOS del sistema en algún momento entre su instalación de CentOS 6 y su instalación de Fedora 21.

También tenga en cuenta que la estructura de los nombres en sí ha cambiado en RHEL/CentOS 7 y Fedora, en comparación con RHEL/CentOS 6.

En EL6, las NIC integradas comienzan con emy un número, y las NIC en tarjetas de expansión comienzan con pseguido de su bus, ranura y función. Esta era la característica original de biosdevname.

En Fedora y RHEL 7biosdevname ha sido reemplazado porsoporte nativo del sistema, y el esquema de nomenclatura del dispositivo tienecambió. Todas las NIC cableadas comienzan con eny las NIC integradas continúan con oy un número, mientras que las NIC en tarjetas de expansión continúan con p, el número de bus, sel número de ranura y, opcionalmente, fy el número de función.

(Sin embargo, si actualiza de EL6 a EL7, se conservarán los nombres antiguos).

Un ejemplo de lo que verá en mis propios sistemas:

NIC integradas (en un Dell PowerEdge):

2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 54:9f:35:17:f4:32 brd ff:ff:ff:ff:ff:ff
3: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 54:9f:35:17:f4:34 brd ff:ff:ff:ff:ff:ff

NIC en una tarjeta de expansión (en una porquería de SuperMicro):

2: enp3s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 0c:c4:7a:45:b8:d2 brd ff:ff:ff:ff:ff:ff
3: enp3s0f1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 0c:c4:7a:45:b8:d3 brd ff:ff:ff:ff:ff:ff

información relacionada