Настройка сети на Ubuntu Server 18.04 через файл конфигурации Netplan. Три варианта конфигураций: получение настроек по DHCP, указание статического IP-адреса и конфигурацию для двух сетевых интерфейсов.
Настраивать сеть будем c помощью утилиты Netplan.
[Netplan — впервые появилась в Ubuntu 17.10 для облегчения управления сетевыми настройками. Netplan хранит параметры сетевых интерфейсов в формате YAML, конфигурация в формате YAML в свою очередь поддерживается сетевыми рендерами NetworkManager и systemd-networkd, нам предоставляется возможность выбрать, какой из рендеров использовать в качестве основного сетевого демона системы.]
Для того чтобы посмотреть все сетевые интерфейсы введите команду ifconfig -a.(Рис.1)
ifconfig -a
Видим интерфейс «ens160» с IP-адресом — 192.168.3.16. Если у вас другое название интерфейса, то в конфигурациях не забудьте поменять его.
Прописывать конфигурацию интерфейсов будем в файле /etc/netplan/50-cloud-init.yaml, с помощью редактора nano, файл может называться по разному у разных пользователей, но сразу же после установки файл с расширением .yaml в этой папке один. Поэтому для того чтобы приступить к редактированию файла лучше воспользоваться универсальной командой.(Рис.2)
sudo nano /etc/netplan/*.yaml
ВНИМАНИЕ! Отступы слева в конфигурациях должны быть ОБЯЗАТЕЛЬНО и поставлены они должны быть ПРОБЕЛАМИ не «TAB»! В конфигурациях представленных в этой статье количество пробелов правильное, считайте количество, иначе работать не будет.
Если вы поставите отступы клавишей «TAB», то на этапе проверки конфигурации на ошибки, вылезет ошибка — » Error while loading /etc/netplan/50-cloud-init.yaml, aborting. / Ошибка при загрузке «.
Если же вы решите написать всё в столбик без отступов, получите ошибку — » An error occured: the configuration could not be generated / Произошла ошибка: конфигурация не может быть сгенерирована «.
Самые распространенные параметры в файле /etc/netplan/*.yaml
Для начала разберемся какие самые распространенные параметры в этом файле могут быть.
network:
renderer: networkd — Выбор сетевого рендера. Выбран networkd
ethernets: — Блок с настройками сетевых интерфейсов.
ens160: — Имя первого сетевого интерфейса.
addresses: [192.168.3.13/24] — Статический IP-адрес сетевого интерфейса/Маска сети. На данный момент указан IPv4, можно также через запятую указать IPv6(пишется в кавычках) — [192.168.3.13/24,“2001:1::1/64”]
gateway4: 192.168.3.1 — Указание основного шлюза для IPv4.
gateway6: «2001:4::1»— Указание основного шлюза для IPv6.(пишется в кавычках)
dhcp4: yes/no — или true/false — включить/выключить получение сетевых настроек по DHCP для IPv4.
dhcp6: yes/no — или true/false — включить/выключить получение сетевых настроек по DHCP для IPv6.
macaddress: 52.54.00.6d.3c.59 — указание MAC-адреса.
nameservers: — Блок с настройками DNS.
addresses: [8.8.8.8,8.8.4.4] — IP-адреса DNS-серверов, можно несколько через запятую.
ens192: — Имя второго сетевого интерфейса.
addresses: [10.1.0.5/24]
version: 2
Настройка сети на Ubuntu Server 18.04
Настройка динамического IP-адреса [по DHCP]
Так как при установке мы получили IP-адрес по DHCP, следовательно конфигурация рабочая.(Рис.3)
Конфигурация для получения IP-адреса по DHCP (эта настройка идет по умолчанию):
network: ethernets: ens160: addresses: [] dhcp4: true version: 2
Настройка статического IP-адреса [Указание настроек вручную]
Конфигурация для указания настроек сети вручную.(Рис.4)
network: renderer: networkd ethernets: ens160: addresses: [192.168.3.13/24] gateway4: 192.168.3.1 dhcp4: no dhcp6: no nameservers: addresses: [8.8.8.8,8.8.4.4] version: 2
Пример конфигурации для двух интерфейсов
Конфигурация для указания настроек сети для двух интерфейсов «ens160» и «ens192».(Рис.5)
network: renderer: networkd ethernets: ens160: addresses: [] dhcp4: true ens192: dhcp4: no dhcp6: no addresses: [192.168.1.220/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8,8.8.4.4] version: 2
Применение изменений в конфигурации сети и проверка
После настройки необходимо проверить конфигурацию на наличие ошибок и применим изменения.(Рис.6)
sudo netplan try
Если ошибок нет, то вы получите сообщение: «Вы хотите сохранить эти настройки?» Нажмите ENTER (обычно настройки применяются сразу, но все же рекомендуется выполнить команду apply).
sudo netplan apply
Проверим вступили ли изменения в силу:
ifconfig
Проверим доступен ли внешний ресурс (интернет).(Рис.8)
ping ya.ru
Всё отлично IP-адрес поменялся, сеть настроена, доступ в интернет есть!