Настройка netplan (YAML) в Ubuntu
Дано:
Файл конфигурации «/etc/netplan/50-cloud-init.yaml» (название файла может различаться);
Медный интерфейс с именем «enp0s3».
Хотим получить:
IP: 192.168.44.201 (статика);
Маска: 255.255.255.0;
Шлюз: 19.168.44.1;
DNS: 192.168.44.1, 8.8.8.8
Решение.
Открываем на редактирование «/etc/netplan/50-cloud-init.yaml»:
#> mcedit /etc/netplan/50-cloud-init.yaml
Сейчас мы в нем видим, что интерфейс настроен для работы с DHCP:
Удаляем все, что видим. Нам нужен пустой файл для написания своих настроек, иначе будет неразбериха.
Теперь самый главный нюанс! Подразделы от разделов должны отделяться друг от друга двумя пробелами!
Поясняем. Вот, конфигурация, которая должена получиться:
У раздела «network» два подраздела – «version» и «ethernets», поэтому сдвигаем их на два пробела правее «network»;
В свою очередь, у раздела «ethernets» один подраздел – «enp0s3», он же - имя интерфейса.
Ну, и так далее.
Для того, чтобы настройки применить, сохраняем файлик и в консоли набираем:
#> netplan apply
Проверяем ifconfig-ом:
Базовые настройки сети выполнены.
Более развернутое описание настроек и возможностей netplan можно прочитать на Хабре.
Заметки к теме
Как повесить несколько IP-шников на интерфейс?
addresses: [192.168.0.100/24, 10.10.0.20/24]
Как указать несколько DNS серверов: addresses?
[192.168.0.1, 8.8.4.4, 8.8.8.8]
Как применить настройки?
#> netplan apply