У меня простая проблема. У меня есть компьютер с Ubuntu server 8.04 LTS с двумя сетевыми адаптерами. Одна на материнской плате подключается к Интернету, а одна PCI-карта подключается к внутренней сети. Во время установки он определил сетевой адаптер на материнской плате как eth1, а карту PCI как eth0. Я бы хотел, чтобы они были наоборот. Тем более, что сетевая карта PCI не будет использоваться хост-сервером, только для некоторых виртуальных машин, которые будут на нем работать.
Итак, в настоящее время машина загружается, активирует eth1 (сетевая карта материнской платы), получает IP-адрес с dhcp, оставляя только eth0 (PCI NIC). Это именно то, что я хочу, за исключением переключения eth0 и eth1.
Спасибо.
Как упоминалось tzafrir.net без дополнительных объяснений, в системах на основе Debian, которые включают Ubuntu, вам необходимо проверить /etc/udev/rules.d/70-persistent-net.rules
файл, и вы найдете строку, похожую на:
# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:6d:b1:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Вы, очевидно, найдете один для с ИМЯ = "eth0" и еще один с "ИМЯ = eth1" но каждый будет иметь соответствующие MAC-адреса. Вы можете просто поменять местами NAME
значения и перезагрузите компьютер, и система переименует их. Вы даже можете назвать их как-нибудь иначе, например wan
или lan
это не имеет значения, если ваши маршруты и другие конфигурации используют одинаковые имена.
В системах на базе RedHat, включая Fedora и CentOS, это можно сделать, изменив HWADDR
строка найдена в соответствующем /etc/sysconfig/network-scripts/ifcfg-ethX
файл.
Смысл этого в том, чтобы при перезагрузке поддерживать тот же сетевой адаптер, что и ядро, которое, как было известно в прошлом, изменяет порядок адресации карт PCI, что может поменять порядок сетевых адаптеров.
Вы можете безболезненно изменить названия двух устройств в /etc/udev/rules.d/70-persistent-net.rules