GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi mon interface Ethernet s'appelle-t-elle enp0s10 au lieu de eth0 ?

Réponse sur "Que signifie enp0s10 ?" questions :

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

Source :udev-builtin-net_id.c sur GitHub


C'est un changement dans la façon dont udevd attribue désormais des noms aux périphériques Ethernet. Désormais, vos appareils utilisent les "Noms d'interface prévisibles", qui sont basés sur (et citant les sources) :

  1. Noms incorporant des numéros d'index fournis par le micrologiciel/BIOS pour les appareils embarqués (exemple :eno1)
  2. Noms incorporant les numéros d'index d'emplacement de connexion à chaud PCI Express fournis par le micrologiciel/BIOS (exemple :ens1)
  3. Noms intégrant l'emplacement physique/géographique du connecteur du matériel (exemple :enp2s0)
  4. Noms intégrant l'adresse MAC des interfaces (exemple :enx78e7d1ea46da)
  5. Nommage ethX natif du noyau classique et imprévisible (exemple :eth0)

La raison pour laquelle cela a changé est documentée dans la page systemd freedesktop.org, ainsi que la méthode pour désactiver ceci :

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

ou si vous utilisez des versions plus anciennes :

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

Comme mentionné ci-dessus, enp0s10 fait référence à ethernet (en), préfixe 0 (p0), emplacement 10 (s10). Le numéro de bus, le numéro de périphérique et le numéro de fonction sont extraits de la fonction de périphérique de bus (BDF) pour les périphériques PCI afin de créer les parties de préfixe, d'emplacement et de fonction du nom d'interface réseau prévisible.

Si la fonction est 0, la partie f0 est omise. J'ai changé le préfixe de p0 à p4, et la fonction de f0 à f1, pour plus de clarté dans cet exemple.

Développant la réponse postée par '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

Je suis tombé sur un appareil avec un u7 à la fin, pour le port USB. Certaines des différentes possibilités d'étiquettes sont incluses dans cette documentation :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. Pourquoi la fonction close est-elle appelée release dans `struct file_operations` dans le noyau Linux ?

  2. Pourquoi certains programmeurs du noyau utilisent-ils goto au lieu de simples boucles while ?

  3. Pourquoi eval devrait-il être évité dans Bash et que dois-je utiliser à la place ?

  4. Configurer un serveur DNS par interface nic (eth0 / eth1) ?

  5. Que signifie le nom de l'interface eth0 sous Linux ?

Pourquoi j'utilise exa au lieu de ls sous Linux

Linux vs Mac OS :15 raisons d'utiliser Linux au lieu de Mac OS

Pourquoi Kubernetes s'appelle-t-il K8s ?

comment utiliser cURL sur une interface spécifique

Pourquoi l'utilisateur le plus puissant d'un système Unix/Linux s'appelle-t-il "root ?"

Pourquoi le trafic réseau Linux ne passe-t-il que par eth0 ?