Смена названия сетевого интерфейса

Материал из FedoraMD.org Wiki
Версия от 15:52, 3 июля 2008; OlegA (обсуждение | вклад) (Новая: {{Суперпользователь}} Иногда, например при добавлении новой сетевой карты, возникает необходимость п...)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

ВНИМАНИЕ: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду $ su - для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя.


Иногда, например при добавлении новой сетевой карты, возникает необходимость поменять название, которое к ней автоматически привязывает система. В данной статье мы рассмотрим, как поменять местами интерфейсы eth1 и eth0. К примеру, в моём случае, eth0 - это карта Attansic L2, а eth1 - Realtek RTL-8139 - но я хочу, чтобы Realtek был eth0.

udev

Названия устройствам, найденным в системе, задаёт udev - поэтому его и стоит настроить в первую очередь. Так что посмотрим конфигурацию udev для сетевых интерфейсов:

# cat /etc/udev/rules.d/70-persistent-net.rules

что мы видим:

# This file was automatically generated by the /lib/udev/write_net_rules
# program run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.

# PCI device 0x1969:0x2048 (atl2)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1b:fc:b0:5e:24", ATTR{type}=="1", NAME="eth0"

# PCI device 0x10ec:0x8139 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:19:e0:0f:45:94", ATTR{type}=="1", NAME="eth1"

то есть сетевушка с драйвером atl2 и адресом 00:1B:FC:B0:5E:24, закреплена под псевдонимом eth0

Чтобы сменить привязку, достаточно сменить параметры NAME в конце строк на желаемые. После перезагрузки компьютера, Realtek уже будет называться eth0

init

init скрипты так-же привязывают интерфейс к устройству по MAC адресу, так что если их не поправить после переназначения интерфейсов, могут возникнуть ошибки при поднятии интерфейсов.

Исправить их можно при помощи стандартной графической утилиты:

# system-config-network

для этого, во вкладке "устройства", нужно открыть каждое, перейти во вкладку "аппаратное устройство" - и либо отключить там привязку по MAC, либо выяснить изменившийся MAC, нажав соответствующую кнопку.

Так-же можно вручную изменить файлы конфигураций /etc/sysconfig/networking/devices/ifcfg-eth* в моём cслучае,это были ifcfg-eth0 и ifcfg-eth1 соответственно, открыв их любимым текстовым редактором (с root правами!) - правим или удаляем там строки HWADDR, и сохраняем, не отключая жёстких ссылок.