Добавление и удаление физических сетевых интерфейсов

Для добавления или удаления физических сетевых интерфейсов необходимо всегда использовать утилиту netifcfg.

Ниже рассмотрены конкретные примеры. Ваши условия могут отличаться, учитывайте это.

1.    Процедура добавления.

1.1.     Войдите в Linux bash.

1.2.     Если вы вручную добавляли виртуальные интерфейсы в файл /etc/ifaliases.cf, - сохраните текущую версию файла (так как файл будет перезаписан), чтобы потом заново добавить ваши виртуальные интерфейсы:

root@Hub1-n2:~# cp /etc/ifaliases.cf /etc/ifaliases.cf.old

1.3.     Перед добавлением нового физического сетевого интерфейса получите список текущих интерфейсов в нотации Linux (это нужно, чтобы после добавления нового сетевого интерфейса можно было однозначно определить его имя в нотации Linux):

root@Hub1-n2:~# ip link show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:7a:a9 brd ff:ff:ff:ff:ff:ff

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:5a:f9 brd ff:ff:ff:ff:ff:ff

4: eth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:6f:d8 brd ff:ff:ff:ff:ff:ff

Видно, что в системе присутствуют три физических сетевых интерфейса eth0, eth1, eth2.

1.4.     Выключите шлюз и добавьте новый сетевой интерфейс (сетевая карта для аппаратного шлюза, либо сетевой адаптер для виртуального шлюза). После чего включите шлюз, дождитесь загрузки и войдите в Linux bash.

Для виртуального шлюза рекомендуется добавлять сетевые адаптеры только одного типа. Например, для гипервизора ESXi либо все адаптеры с типом (Adapter Type) e1000, либо все Vmxnet3.

1.5.     Определите в нотации Linux имя нового сетевого интерфейса:

root@Hub1-n2:~# ip link show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:7a:a9 brd ff:ff:ff:ff:ff:ff

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:5a:f9 brd ff:ff:ff:ff:ff:ff

4: eth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:6f:d8 brd ff:ff:ff:ff:ff:ff

5: __err__eth3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000

    link/ether 00:50:56:9e:dd:57 brd ff:ff:ff:ff:ff:ff

Видно, что новый сетевой интерфейс добавился под именем __err__eth3 (префикс __err__ говорит о том, что данный интерфейс добавлен системой автоматически и для него отсутствует привязка).

При осуществлении привязки, имена интерфейсам назначаются исходя из сортировки по уникальным идентификаторам (в данном случае по адресу PCI шины). Чем больше значение идентификатора, тем больше номер интерфейса (здесь eth<N>).

Если по какой-то причине значение идентификатора окажется меньше, чем у интерфейсов, для которых ранее была осуществлена привязка, сначала интерфейс отобразится как __err__<название><номер>, но после привязки и перезагрузки он получит номер в соответствии с сортировкой по уникальным идентификаторам. Таким образом могут поменяться названия интерфейсов, что в свою очередь нарушит конфигурацию.
Чтобы этого не произошло следует проверить привязки перед выполнением команды map и в случае необходимости изменить номера интерфейсов.

1.6.     Сгенерируйте описание для физических сетевых интерфейсов при помощи netifcfg с опцией enum и посмотрите результат:

root@Hub1-n2:~# netifcfg enum > map.txt

root@Hub1-n2:~# cat map.txt

0000:03:00.0 phye eth0 GigabitEthernet0/0

0000:0b:00.0 phye eth1 GigabitEthernet0/1

0000:13:00.0 phye eth2 GigabitEthernet0/2

0000:1b:00.0 phye eth3 GigabitEthernet0/3

1.7.     Осуществите привязку сетевых интерфейсов:

root@Hub1-n2:~# netifcfg map map.txt

 

 

SUCCESS:  Operation was successful.

1.8.     Если вы ранее вручную добавляли виртуальные интерфейсы в файл /etc/ifaliases.cf и сделали его копию /etc/ifaliases.cf.old, то перенесите ваши виртуальные интерфейсы вручную из файла /etc/ifaliases.cf.old в /etc/ifaliases.cf и пересчитайте его контрольную сумму:

Автоматически сгенерированные строки для физических интерфейсов в данном файле менять запрещено.

root@Hub1-n2:~# integr_mgr calc -f /etc/ifaliases.cf

 

 

SUCCESS:  Operation was successful.

1.9.     Перезагрузитесь:

root@Hub1-n2:~# reboot

2.    Процедура удаления.

2.1.     Процедура удаления выполняется аналогично процедуре добавления.