Сетевые интерфейсы в Linux обычно нумеруются как eth[0123...], но их имена не обязательно соответствуют фактическим аппаратным слотам, расположению PCI, номеру порта USB, назначению и т.д.
Начиная с CentOS / RHEL 7 применяется предсказуемое правила именования. В соответствии с правилам имена интерфейсов: имена определяются автоматически на основе информации о прошивке, топологии и местоположении.
Двухсимвольные префиксы в зависимости от типа интерфейса :
- en -- ethernet
- sl -- serial line IP (slip)
- wl -- wlan
- ww -- wwan
Тип имен:
- b <номер> - номер ядра шины BCMA
- ccw <имя> - имя группы шины CCW
- o - порядковый номер устройства
- s [f ] [d ] - порядковый номер слота hotplug
- x - MAC-адрес
- [P]ps[f][d] - географическое положение PCI
- [P]ps[f][u][..][c][i] - цепочка номеров USB-портов
Недостатком этой новой схемы именования является то, что имена интерфейсов несколько труднее читать. Например, можно встретить встретить такие имена, как enp0s1.
Переименование сетевого интерфейса в CentOS / RHEL
Необходимо отключить правила именования добавив в настройки GRUB (/etc/default/grub) параметр net.ifnames=0, изменив значение переменной GRUB_CMDLINE_LINUX .
После чего необходимо запустить команду пересоздания конфигурации GRUB, для обновления параметров ядра
1 | grub2-mkconfig -o /boot/grub2/grub.cfg |
создаем новый файл конфигурации
1 | nano /etc/udev/rules.d/70-persistent-net.rules |
и добавляем параметры переименования
1 | SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:80:10:68", ATTR{type}=="1", KERNEL=="eth*", NAME="net" |
необходимо заменить ATTR{address} на MAC адрес сетевой карты
в параметре NAME, указываем нужное нам имя.
если в системе несколько сетевых карт, добавляем параметры для каждой
1 2 | SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:80:10:68", ATTR{type}=="1", KERNEL=="eth*", NAME="input" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:80:10:72", ATTR{type}=="1", KERNEL=="eth*", NAME="output" |
после чего необходимо перегрузить сервер
1 | reboot |