LINUX.ORG.RU
решено ФорумAdmin

Наименование сетевых интерфейсов или глюк?

 


0

1

Доброго времени суток

Установил на сервер СуперМикро Debian 10. Теперь наблюдаю глюк в наименовании сетевых интерфейсов.

«lspci» выдаёт:

«Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01)»

Таких у меня 4 шт.

А «ip a» выдаёт:

lo: (тут всё ясно)
eno1: (тоже ожидаемо)
rename2: (что это?)
rename4: (опять, что это?, и где «3»?)
rename5: (ну вы поняли)

Что за глюк? И как исправить?

★★★★

Ответ на: комментарий от gremlin_the_red
:# udevadm test-builtin net_id /sys/class/net/eno1
Load module index
Parsed configuration file /usr/lib/systemd/network/99-default.link
Created link configuration context.
Using default interface naming scheme 'v240'.
ID_NET_NAMING_SCHEME=v240
ID_NET_NAME_MAC=enx002590f48baf
ID_OUI_FROM_DATABASE=Super Micro Computer, Inc.
ID_NET_NAME_ONBOARD=eno1
ID_NET_NAME_PATH=enp6s0f1
Unload module index
Unloaded link configuration context.
:# udevadm test-builtin net_id /sys/class/net/rename2
Load module index
Parsed configuration file /usr/lib/systemd/network/99-default.link
Created link configuration context.
Using default interface naming scheme 'v240'.
ID_NET_NAMING_SCHEME=v240
ID_NET_NAME_MAC=enx002590f48bae
ID_OUI_FROM_DATABASE=Super Micro Computer, Inc.
ID_NET_NAME_ONBOARD=eno1
ID_NET_NAME_PATH=enp6s0f0
Unload module index
Unloaded link configuration context.
# udevadm test-builtin net_id /sys/class/net/rename4
Load module index
Parsed configuration file /usr/lib/systemd/network/99-default.link
Created link configuration context.
Using default interface naming scheme 'v240'.
ID_NET_NAMING_SCHEME=v240
ID_NET_NAME_MAC=enx002590f48bb0
ID_OUI_FROM_DATABASE=Super Micro Computer, Inc.
ID_NET_NAME_ONBOARD=eno1
ID_NET_NAME_PATH=enp6s0f2
Unload module index
Unloaded link configuration context.
# udevadm test-builtin net_id /sys/class/net/rename5
Load module index
Parsed configuration file /usr/lib/systemd/network/99-default.link
Created link configuration context.
Using default interface naming scheme 'v240'.
ID_NET_NAMING_SCHEME=v240
ID_NET_NAME_MAC=enx002590f48bb1
ID_OUI_FROM_DATABASE=Super Micro Computer, Inc.
ID_NET_NAME_ONBOARD=eno1
ID_NET_NAME_PATH=enp6s0f3
Unload module index
Unloaded link configuration context.
ivanlex ★★★★ ()
Последнее исправление: ivanlex (всего исправлений: 1)
Ответ на: комментарий от ivanlex

Ну вот, как видишь, в биосе косяк, все интерфейсы один номер имеют (то, что в итоге образует eno1). А onboard по дефолту более высокий приоритет имеет, чем path, отчего udev и начинает переименовывать интерфейсы. Скопируй /usr/lib/systemd/network/99-default.link в /etc/systemd/network/99-default.link, b поменяй там onboard и path местами. Чтобы вместо NamePolicy=keep kernel database onboard slot path получилось NamePolicy=keep kernel database path slot onboard, тогда твои интерфейсы примут вид enp6s0f.

gremlin_the_red ★★★ ()
Последнее исправление: gremlin_the_red (всего исправлений: 1)
Ответ на: комментарий от ivanlex

А чем тебя сразу proxmox не устраивает? Зачем тебе его переизобретать из желудей и пластилина когда готовый дистрибутив proxmox это уже и есть debian c proxmox, только допиленный и заточенный? Не хочешь за лицензию платить? Так он прекрасно и бесплатный работает и даже обновляется. Занудное окошко вымогающее деньги в админке можно легко отломать или забить на него. Функционал у него не урезан. Там за деньги только доступ к уже преднастроенным lxs, их обновления и расширенная техподдержка.

Jameson ★★★ ()
Ответ на: комментарий от Jameson

Думаешь это решит проблему с наименованием сетевых интерфейсов? Уверю тебя - нет. Вопрос не в Debian+Proxmox vs Proxmox-on-Debian, а в том, что на конкретном экземпляре сервера проблема с сетевыми интерфейсами.

ivanlex ★★★★ ()
Ответ на: комментарий от ivanlex

Возможно что и решит, так как там другая система наименования, из-за чего я предполагаю что и система инициализации их тоже отличается. Поскольку сам не дебианщик проверить и сравнить свежий прокс и дебиан 10 не могу.

Jameson ★★★ ()
Ответ на: комментарий от gremlin_the_red

Сеть завёл.

:# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:ae brd ff:ff:ff:ff:ff:ff
3: rename3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:af brd ff:ff:ff:ff:ff:ff
4: rename4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:b0 brd ff:ff:ff:ff:ff:ff
5: rename5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:b1 brd ff:ff:ff:ff:ff:ff
:# dmesg | grep -i eth
               Initialized Local Variables for Method [_L24]:
[    1.727539] No Arguments are initialized for method [_L24]
[    1.727542] ACPI Error: Aborting method \_GPE._L24 due to previous error (AE_NOT_FOUND) (20190816/psparse-531)
[    1.727600] ACPI Error: AE_NOT_FOUND, while evaluating GPE method [_L24] (20190816/evgpe-515)
[    3.161950] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.6.0-k
[    3.230152] igb 0000:06:00.0: added PHC on eth0
[    3.230154] igb 0000:06:00.0: Intel(R) Gigabit Ethernet Network Connection
[    3.230156] igb 0000:06:00.0: eth0: (PCIe:5.0Gb/s:Width x4) 00:25:90:f4:8b:ae
[    3.230230] igb 0000:06:00.0: eth0: PBA No: 105900-000
[    3.284498] igb 0000:06:00.1: added PHC on eth1
[    3.284500] igb 0000:06:00.1: Intel(R) Gigabit Ethernet Network Connection
[    3.284501] igb 0000:06:00.1: eth1: (PCIe:5.0Gb/s:Width x4) 00:25:90:f4:8b:af
[    3.284577] igb 0000:06:00.1: eth1: PBA No: 105900-000
[    3.340075] igb 0000:06:00.2: added PHC on eth2
[    3.340078] igb 0000:06:00.2: Intel(R) Gigabit Ethernet Network Connection
[    3.340080] igb 0000:06:00.2: eth2: (PCIe:5.0Gb/s:Width x4) 00:25:90:f4:8b:b0
[    3.340155] igb 0000:06:00.2: eth2: PBA No: 105900-000
[    3.396344] igb 0000:06:00.3: added PHC on eth3
[    3.396347] igb 0000:06:00.3: Intel(R) Gigabit Ethernet Network Connection
[    3.396350] igb 0000:06:00.3: eth3: (PCIe:5.0Gb/s:Width x4) 00:25:90:f4:8b:b1
[    3.396429] igb 0000:06:00.3: eth3: PBA No: 105900-000
[    3.398247] igb 0000:06:00.0 eno1: renamed from eth0
[    3.429236] igb 0000:06:00.1 rename3: renamed from eth1
[    3.469152] igb 0000:06:00.2 rename4: renamed from eth2
[    3.509110] igb 0000:06:00.3 rename5: renamed from eth3
ivanlex ★★★★ ()
Ответ на: комментарий от gremlin_the_red

Подумал, что изменения не сохранились, но нет:

:# cat /usr/lib/systemd/network/99-default.link
#  SPDX-License-Identifier: LGPL-2.1+
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

[Link]
NamePolicy=keep kernel database onboard slot path
MACAddressPolicy=persistent
:# cat /etc/systemd/network/99-default.link
#  SPDX-License-Identifier: LGPL-2.1+
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

[Link]
NamePolicy=keep kernel database path slot onboard
MACAddressPolicy=persistent
ivanlex ★★★★ ()
Ответ на: комментарий от gremlin_the_red

Я бы оставил все так, ну и пусть будут такие имена «rename*». Но у них нумерация постоянно прыгает.

Сначала были интерфейсы: eno1, rename2, rename4, rename5.

Потом вдруг rename2 исчез, вместо него rename3 появился.

Сейчас опять изменения, на текущий момент наименование интерфейсов: eno1, rename2, rename3, rename5.

Они постоянно меняются, что делать?

ivanlex ★★★★ ()

Итог, проблема решена.

Совет по изменению 99-default.link оказался неудачным. Что бы там не писал, проблема сохранялась.

Воспользовался вторым советом gremlin_the_red

Создал для каждого интерфейса .link следующего вида:

#/etc/systemd/network/10-lan0-net.link
[Match]
MACAddress=00:25:90:f4:8b:ae

[Link]
Name=lan0

Теперь все работает, наименование интерфейсов не прыгает.

Всем спасибо.

:# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: lan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:ae brd ff:ff:ff:ff:ff:ff
3: lan1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:af brd ff:ff:ff:ff:ff:ff
4: lan2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:b0 brd ff:ff:ff:ff:ff:ff
5: lan3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:f4:8b:b1 brd ff:ff:ff:ff:ff:ff

Всем бобра.

ivanlex ★★★★ ()