GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué mi interfaz ethernet se llama enp0s10 en lugar de eth0?

Responda a "¿Qué significa enp0s10?" pregunta:

enp0s10:
| | |
v | |
en| |   --> ethernet
  v |
  p0|   --> bus number (0)
    v
    s10 --> slot number (10)

Fuente:udev-builtin-net_id.c en GitHub


Eso es un cambio en la forma en que ahora udevd asigna nombres a los dispositivos ethernet. Ahora sus dispositivos usan los "Nombres de interfaz predecibles", que se basan en (y citan las fuentes):

  1. Los nombres que incorporan firmware/BIOS proporcionaron números de índice para dispositivos integrados (ejemplo:eno1)
  2. Nombres que incorporan firmware/BIOS proporcionados con números de índice de ranura de conexión en caliente PCI Express (ejemplo:ens1)
  3. Nombres que incorporan la ubicación física/geográfica del conector del hardware (ejemplo:enp2s0)
  4. Nombres que incorporan la dirección MAC de las interfaces (ejemplo:enx78e7d1ea46da)
  5. Denominación ethX nativa del núcleo clásica e impredecible (ejemplo:eth0)

El por qué esto cambió está documentado en la página systemd freedesktop.org, junto con el método para deshabilitarlo:

ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules

o si usa versiones anteriores:

ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules

Como se mencionó anteriormente, enp0s10 se refiere a ethernet (en), prefijo 0 (p0), ranura 10 (s10). El número de bus, el número de dispositivo y el número de función se extraen de la función de dispositivo de bus (BDF) para dispositivos PCI para crear las porciones de prefijo, ranura y función del nombre de interfaz de red predecible.

Si la función es 0, se omite la porción f0. Cambié el prefijo de p0 a p4 y la función de f0 a f1, para mayor claridad en este ejemplo.

Ampliando la respuesta publicada por 'DIG mbl':

enp4s10f1                        pci 0000:04:0a.1
| | |  |                                |  |  | |
| | |  |                   domain <- 0000  |  | |
| | |  |                                   |  | |
en| |  |  --> ethernet                     |  | |
  | |  |                                   |  | |
  p4|  |  --> prefix/bus number (4)   <-- 04  | |
    |  |                                      | |
    s10|  --> slot/device number (10) <--    10 |
       |                                        |
       f1 --> function number (1)     <--       1

https://wiki.xen.org/wiki/Bus:Device.Function_(BDF)_Notationhttps://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames

Me encontré con un dispositivo con un u7 al final, para puerto USB. Algunas de las diferentes posibilidades de etiquetas se incluyen en esta documentación:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-understanding_the_predictable_network_interface_device_names


Linux
  1. ¿Por qué se utiliza con tanta frecuencia `while Ifs=Read`, en lugar de `ifs=; Mientras lee..`?

  2. ¿Por qué algunos programadores del kernel usan goto en lugar de bucles while simples?

  3. ¿Por qué se debe evitar eval en Bash y qué debo usar en su lugar?

  4. ¿Qué significa el nombre de la interfaz eth0 en Linux?

  5. ¿Por qué el tráfico de red de Linux solo pasa por eth0?

Por qué uso exa en lugar de ls en Linux

¿Por qué *no* analizar `ls` (y qué hacer en su lugar)?

Linux:¿por qué la interfaz Ethernet se llama Enp0s10 en lugar de Eth0?

¿Razón por la que el primer elemento de una matriz Zsh está indexado por 1 en lugar de 0?

Linux vs Mac OS:15 razones por las que usar Linux en lugar de Mac OS

¿Por qué Kubernetes se llama K8?