Как настроить сеть в Linux с Netplan

Ubuntu Server 18.04 прибыл в этом году, и он внес довольно существенные изменения в работу администраторов с платформой. Одно очень важное изменение (которое может сбить с толку многих пользователей старой школы) — это то, как настроена сеть. Ушел старый метод настройки сети в / etc / network / interfaces. Чтобы настроить сеть в последней итерации, передайте привет Netplan.

Что такое Netplan?

Netplan — это утилита для настройки сети в системе Linux, которая использует описания YAML для каждого сетевого интерфейса, найденного на сервере или рабочем столе. Netplan читает файлы описания YAML, находящиеся в / etc / netplan. На ранних этапах загрузки операционной системы Netplan затем сгенерирует (из созданных пользователем файлов YAML) необходимые файлы конфигурации в каталоге / run, чтобы управление каждым сетевым устройством передавалось конкретному сетевому демону. Другими словами, вы создаете файл описания YAML для сетевого интерфейса, который Netplan может читать и использовать для работы этого конкретного интерфейса.

Не паникуйте. Хотя конфигурация сети на сервере с Netplan значительно отличается от конфигурации предыдущих версий, это не так уж сложно. Это, однако, специфично. Давайте рассмотрим, как настроить сеть через Netplan для установки Ubuntu Server 18.04. Как и следовало ожидать, настройка сети на сервере Linux обычно выполняется из командной строки, поэтому приготовьтесь немного набрать текст.

Настройка статического IP-адреса с помощью Netplan

Поиск имени сетевого интерфейса с помощью команды ip a.

Поскольку мы говорим об установке сервера, мы хотим настроить сервер для статического IP-адреса. Есть одна вещь, которую вы должны знать о файле Netplan YAML. Вы должны придерживаться правильного отступа кода для каждой строки блока. Это не означает, что вы должны делать отступы от конкретной строки до определенной точки. Это означает, что если вы отступите в первой строке блока на три пробела, вы должны сделать отступ на оставшейся части блока на три пробела. Если вы не будете придерживаться этого, Netplan выдаст ошибку.

С учетом сказанного, давайте настроим.

Прежде чем вносить какие-либо изменения, нам нужно знать имя нашего сетевого интерфейса. Для этого выполните команду:

Вы должны увидеть имя сетевого интерфейса в списке (например, ens5 или ens3). Имея это имя интерфейса под рукой, вы готовы к настройке.

Из коробки вы, вероятно, найдете один файл YAML в / etc / netplan. Этот файл будет называться либо 01-netcfg.yaml, либо 50-cloud-init.yaml. Мы хотим отредактировать файл 01-netcfg.yaml. Если он не существует, создайте его с помощью команды:

sudo touch 01-netcfg.yaml

Если файл существует, отредактируйте его с помощью команды:

sudo nano 01-netcfg.yaml

Ваш файл по умолчанию может выглядеть так:

сеть:
версия: 2
рендер: сетевой
Ethernets:
ens5:
dhcp4: правда

Вышеуказанная конфигурация установлена ​​для DHCP. Поскольку это сервер, мы хотим использовать статический IP-адрес (поэтому IP-адрес никогда не меняется). Мы должны отредактировать все, что находится ниже строки ens5. Первое, что нужно сделать, это установить для dhcp4 значение false, например:

dhcp4: ложь

YAML-файл Netplan для настройки статического IP-адреса.

Далее мы собираемся добавить записи для адресов, шлюза и DNS-серверов. Например, вы хотите установить для сервера IP-адрес 192.168.1.206, со шлюзом 192.168.1.254 и DNS-серверами 8.8.4.4 и 8.8.8.8. Эти записи будут добавлены ниже записи dhcp4 и будут выглядеть так:

адреса: [192.168.1.206/24]
gateway4: 192.168.1.254
неймсерверы:
адреса: [8.8.4.4,8.8.8.8]

Помните, что вы должны соответствовать своему отступу, иначе Netplan выдаст ошибку при чтении файла. Также обратите внимание, что вы не устанавливаете маску сети таким же образом, как это было сделано с помощью файла интерфейсов. Вместо того, чтобы задавать адрес и маску сети следующим образом:

адрес = 192.168.1.206netmask = 255.255.255.0

Обе конфигурации обрабатываются одной строкой:

адреса: [192.168.1.206/24]

Сохраните и закройте этот файл с помощью комбинации клавиш Ctrl + x. После сохранения этого файла вы должны уведомить Netplan об изменениях. Чтобы Netplan перечитал и применил файлы конфигурации, введите команду:

применение sudo netplan

Отладка вывода команды netplan.

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

sudo netplan --debug применить

Использование параметра —debug должно дать вам достаточно информации, чтобы помочь устранить неполадки в файле YAML. Если вы не получили никакого вывода, введите команду:

ip a

Вывод вышеуказанной команды должен отражать только что сделанные вами изменения. Ваш сервер теперь имеет статический IP-адрес, благодаря Netplan.

Ссылка на основную публикацию