Почему eno1 и eno2 в этом порядке?

Я только что установил систему рабочей станции Fedora 21, и она изменила порядок eno1 а также eno2 от системы CentOS 6, которая была здесь раньше.

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.0 имеет MAC-адрес, оканчивающийся на :4f, в то время как 03:00.0 заканчивается в :50,

Насколько я понимаю, с более низким адресом PCI, :4f станет eno1, но на самом деле он думает, что :50 является eno1,

В чем причина этого, и я должен просто признать, что системы с Fedora 21 будут иметь противоположный порядок с CentOS 6? (Мы развернем десятки этих систем.)

1 ответ

Для сетевых адаптеров, встроенных в материнскую плату, а не в слоты PCI/PCI-x/PCIe, "согласованные" имена сетевых устройств фактически получены из информации, предоставленной системной BIOS.

Процитируем Dell, который помог разработать эту функцию:

BIOS системы указывает порядок расположения встроенных сетевых устройств в ОС через записи SMBIOS типа 41. Системный BIOS предоставляет "информацию о системных слотах" ОС через записи типа 9. Имя biosdevname использует тип 41 SMBIOS, чтобы предлагать имена для встроенных сетевых устройств, и записи типа 9, чтобы предлагать новые имена для дополнительных адаптеров PCI.

Другими словами, BIOS решает, какой встроенный сетевой адаптер является NIC 1, а какой - NIC 2.

Таким образом, я подозреваю, что у вас было обновление системного BIOS в какой-то момент между вашей установкой CentOS 6 и вашей установкой Fedora 21.

Также обратите внимание, что структура самих имен изменилась в RHEL/CentOS 7 и Fedora по сравнению с RHEL/CentOS 6.

В EL6 встроенные сетевые карты начинаются с em и номер, и сетевые карты на картах расширения начинаются с p следуют их автобус, слот и функции. Это была оригинальная функция biosdevname.

В Fedora и RHEL 7 имя biosdevname было заменено на встроенную поддержку systemd, а схема именования устройств изменилась. Все проводные сетевые карты начинаются с enи бортовые сетевые карты продолжают с o и номер, в то время как сетевые карты на картах расширения продолжаются с p, номер автобуса, s, номер слота и опционально f и номер функции.

(Хотя, если вы обновитесь с EL6 до EL7, имена в старом стиле будут сохранены.)

Пример того, что вы увидите из моих собственных систем:

Встроенные сетевые карты (в 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

Сетевые карты на плате расширения (в дерьме 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
Другие вопросы по тегам