В данной статье расcкажу как можно легко переименовать сетевые интерфейсы в Ubuntu 18.04|20.04|22.04.

Ещё в Ubuntu 16.04 для настройки сети мы использовали файл /etc/network/interfaces и при помощи команды service networking restart запускали сделанные изменения, в указанном выше файле, в работу. Но уже начиная с Ubuntu 18.04 разработчики внедрили новый тип настройки сети — NetPlan, а также пересмотрели названия сетевых интерфейсов. Это вызвало некоторые неудобства с настройкой сети. Представьте что вы используете USB-modem, который в свою очередь поднимает сетевой интерфейс, и вместо названия eth0 выдает вам что-то вроде этого: nse45trg6504. Как вы думаете в конфигурационном файле утилиты netplan будет удобно вбивать данное название? Думаю что НЕТ!

Но как изменить название интерфейса на более привычное? Да очень просто.

Переименовываем сетевой интерфейс в Ubuntu 18.04|20.04|22.04

Запускаем терминал на нашей системе. Сделать это можно нажав ctrl+T, ну или при помощи ssh подключения.

Далее смотрим какие интерфейсы присутствуют в нашей системе, для этого вводим следующую команду:

ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens0f1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether 4c:ed:fb:da:8c:c9 brd ff:ff:ff:ff:ff:ff

Альтернатива данной команде может быть старая команда ifconfig -a, но разработчики в сборках удалили её. Если хотите можете установить и её, для меня же она более наглядно выводит результат.

Для установки вводим:

sudo apt install net-tool

ну а далее

sudo ifconfig -a
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 35  bytes 4950 (4.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 35  bytes 4950 (4.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens0f1: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 4c:ed:fb:da:8c:c9  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Как видно из вывода у меня в системе присутствует всего два интерфейса — это локальная петля lo и сетевой интерфейс ens0f1. Вот как раз второй интерфейс мы и будем переименовывать.

Для этого запоминаем или скопируйте у данного интерфейса его MAC-адрес (информация в выводе выше). У меня он следующий: 4c:ed:fb:da:8c:c9

Далее открываем файл настроек утилиты netplan:

sudo nano /etc/netplan/00-installer-config.yaml
  • у вас может быть другое название файла, но суть от этого не меняется.

Вот теперь внесем изменения в данный файл.

Помните что в данном файле нужно четко соблюдать количество пробелов для блоков и ни в коем случае не использовать табуляцию.

Было

# This is the network config written by 'subiquity'
network:
  version: 2
  ethernets:
    ens0f1:
      dhcp4: true

Стало

# This is the network config written by 'subiquity'
network:
  version: 2
  ethernets:
    eth0:
      dhcp4: true
      match:
        macaddress: 4c:ed:fb:da:8c:c9
      set-name: eth0

После изменений вводим команду для проверки и применении настроек

sudo netplan try

если ошибок в файле не было, то должно появится вот такое окно с отчетом в 120 секунд:

 Warning: Stopping systemd-networkd.service, but it can still be activated by:
  systemd-networkd.socket
Do you want to keep these settings?


Press ENTER before the timeout to accept the new configuration


Changes will revert in 120 seconds
Configuration accepted.

Если же появились ошибки, то их необходимо исправить. В выводе будет указанна строка и порядковый номер в котором допустили ошибку. Еще раз повторюсь — не забываем о yaml синтаксисе при редактировании конфигурационного файла.

[endtxt]

. . . .

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

5 1 голос
Рейтинг статьи
2
0
Можете поделится своими мыслями.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов cookie) с использованием трекеров "Google Analytics" и "Yandex.Metrics". Порядок обработки Ваших персональных данных, а также реализуемые требования к их защите, содержатся в Политике конфиденциальности.
Принять