Как настроить сеть в Ubuntu 18.04

В статье мы расскажем, как выполняется настройка сети в операционной системе Ubuntu Server 18.04 при помощи Netplan.

Что такое Netplan

Netplan — это утилита для конфигурации сети. Настройка сети через Netplan выполняется в конфигурационном файле, который находится в папке /etc/netplan/. Это текстовый файл с расширением .yaml.

YAML — это формат данных с простым синтаксисом. YAML использует систему отступов, в качестве которых выступают пробелы. При создании и редактировании конфигурационного файла такого формата легко ошибиться — указать неверное количество пробелов. Из-за этого возникнет ошибка “expected mapping” и файл будет невозможно прочитать. 

Чтобы найти строку, в которой была допущена ошибка, можно использовать онлайн-валидатор YAML:

В более ранних версиях Ubuntu для настройки сети использовался пакет ifupdown с конфигурационным файлом /etc/network/interfaces. Начиная с Ubuntu версии 18.04 по умолчанию для настройки используется утилита Netplan. 

Настроить сеть Ubuntu 18.04 можно при помощи графического интерфейса, однако он не всегда бывает доступен. Поэтому рассмотрим, как выполняется настройка сети в консоли. 

Как открыть конфигурационный файл Netplan

1. Сначала узнаем название конфигурационного файла. Для этого через консоль введите команду:

ls -la /etc/netplan/

Команда выведет на экран список файлов, которые находятся в директории /etc/netplan/. В директории будет один файл, который и является конфигурационным: 

2. Откройте этот файл при помощи команды: 

sudo nano /etc/netplan/config.yaml

Вместо config введите имя файла конфигурации. На экране появится текстовый редактор: 

Включить сетевой интерфейс

Примеры настройки конфигурационного файла Netplan

Содержимое файла в дистрибутиве Ubuntu 18.04 по умолчанию: 

network:
  version: 2
  renderer: NetworkManager

Рассмотрим, что означают эти параметры: 

  • network — начало конфигурационного блока, 
  • version: 2 — версия YAML,
  • renderer: NetworkManager — программа с графическим интерфейсом, которой передаётся управление сетью. Кроме NetworkManager существует systemd-networkd, которая выполняет те же функции, но не имеет графической оболочки. 

Такая конфигурация Netplan позволяет передать управление сетью программе NetworkManager. 

Обратите внимание: вложенные параметры (2 и 3 строки) имеют отступы в 2 пробела. Лишний пробел приведёт к ошибке. 

Как настроить динамический адрес

Разберём другой пример, в котором устройство будет получать IP-адрес автоматически через DHCP: 

network:
    version: 2
    renderer: networkd
    ethernets:
        enp0s3:
            dhcp4: true

Где:

  • renderer: networkd — демон, управляющий сетью вместо NetworkManager, 
  • ethernets: — указывает, что конфигурируем интерфейс Ethernet,
  • enp0s3: — название конфигурируемого адаптера, 
  • dhcp4: true — используемый DHCP-протокол для получения IP-адреса. 

Обратите внимание! Название адаптера сети (в примере это enp0s3) на вашем веб-сервере или компьютере может быть другим. Чтобы узнать его, введите: 

ifconfig -a

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

Ubuntu сетевые интерфейсы

Как настроить DNS

Чтобы вручную указать DNS-серверы, пропишите:

network:
    version: 2
    renderer: networkd
    ethernets:
        enp0s3:
            dhcp4: true
            nameservers:
              addresses: [8.8.8.8, 8.8.4.4]

Где: 

  • nameservers: — начало блока с настройками DNS,
  • addresses: [8.8.8.8, 8.8.4.4] — IP-адрес DNS-серверов. 

Как применить настройки Netplan

Общий вид команды netplan:

netplan опции команда

Netplan позволяет проверить корректность конфигурации перед применением. Для этого введите команду:

sudo netplan try

Если с новой конфигурацией в Ubuntu сеть перестанет работать, через 2 минуты будут восстановлены предыдущие настройки и сетевые подключения восстановятся:

Чтобы применить настройки без проверки, введите команду: 

sudo netplan apply

Чтобы увидеть подробную информацию об ошибках, запустите Netplan в режиме отладки:

sudo netplan -d generate

Возможные ошибки

При запуске команды Netplan вы можете столкнуться с ошибкой "netplan: fatal error: cannot bind to port 2983, is another daemon running?, exiting.”. Эта ошибка связана с тем, что на вашем компьютере или VDS не установлен пакет netplan.io. Чтобы исправить проблему, установите его при помощи команды:

sudo apt install netplan.io

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

В Ubuntu сетевые настройки можно выполнить несколькими способами. В этой инструкции мы показали, как сделать базовую настройку сети.

Если вы не нашли ответ, спросите у нас!
Написать в поддержку