Сохранять конфигурацию /etc/network/interfaces при смене карт PCIe

У меня есть несколько сетевых карт в моей коробке Ubuntu 16.04 (3 из них на данный момент). Насколько я могу судить, их имена связаны с именами PCIe. Моя проблема в том, что при добавлении или удалении карты любого типа (графика, HBA и т. Д.) Имена интерфейсов меняются, а затем загрузка на несколько минут зависает при попытке подключить сеть. Если мне придется перезагрузить компьютер несколько раз, это действительно складывается.

Это мое /etc/network/interfaces:

auto lo
iface lo inet loopback

auto enp8s0
iface enp8s0 inet manual

auto enp5s0
iface enp5s0 inet manual

auto enp6s0f0
iface enp6s0f0 inet manual

auto enp6s0f1
iface enp6s0f1 inet manual

auto br0
iface br0 inet dhcp
    hwaddress 50:e5:49:ed:72:3d
    bridge_ports enp8s0 enp6s0f0 enp6s0f1 enp5s0
    bridge_stp off

1 ответ

У Udev есть механизм для фиксации имени сетевых устройств


Во-первых, обратите внимание на ваши MAC-адреса интерфейсов. Вы можете увидеть их с ip a или же ifconfig -a

Во-вторых, файл /etc/udev/rules.d/70-persistent-net.rules должен быть создан вручную в 16.04.

Используйте свой любимый редактор

sudo nano /etc/udev/rules.d/70-persistent-net.rules

Строка для привязки имени интерфейса сетевого адаптера с MAC-адресом "02: 01: 02: 03: 04: 05" к "eth0":

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="02:01:02:03:04:05", ATTR{dev_id}=="0x0", ATTR{type}=="1", NAME="eth0"

Так что для вашего первого интерфейса называется enp8s0это было бы

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="<the-mac-address>", ATTR{dev_id}=="0x0", ATTR{type}=="1", NAME="enp8s0"

Вы должны сделать запись для каждой сетевой карты. Это вступает в силу при перезагрузке.


  • Отказ от ответственности: для версий Ubuntu до 16.04 вы должны добавить KERNEL=="eth*" *
Другие вопросы по тегам