====== Ubuntu и Netplan ======
Вся документация тут: https://netplan.io
С версии 17.10 используется новая утилита настройки сетевых интерфейсов - netplan
Она позволяет настроить сетевой интерфейс с использованием синтаксиса YAML.
Файлы конфигурации хранятся в папке /etc/netplan/*.yaml
ВНИМАНИЕ! Это YAML! Отступы слева в конфигурациях обязательно должны быть и поставлены они должны быть пробелами!
Если ставить отступы TAB'ами, то на этапе проверки конфигурации вылезет ошибка "Error while loading /etc/netplan/50-cloud-init.yaml, aborting"
Если написать всё в столбик без отступов, получим ошибку "An error occured: the configuration could not be generated"
===== Базовый конфиг =====
network:
ethernets:
ens160:
addresses: [192.168.1.10/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.2, 192.168.1.3]
dhcp4: no
dhcp6: no
routes:
- to: 10.10.10.0/24
via: 10.10.10.1
version: 2
===== Применение и тестирование конфигурации =====
Протестировать конфигурацию (во избежании дальней поездки):
sudo netplan try
Применить конфигурацию:
sudo netplan apply
===== Bonding =====
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
* bonds — блок поясняющий что мы будем настраивать bonding
* bond0 — произвольное имя интерфейса
* interfaces — набор интерфейсов собираемых в bonding (если параметров несколько описываем их в квадратных скобках)
* parameters — описываем блок настройки параметров
* mode — указываем мод по которому будет работать bonding
* mii-monitor-interval — задаем интервал мониторинга 1 сек
Внутри блока с именем bond-а также можно конфигурировать такие параметры как addresses, gateway4, routes и тд.
===== VLAN =====
vlans:
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
gateway: 10.10.10.1
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
* vlans — объявляем блок настройки vlan
* vlan10 — произвольное имя vlan интерфейса
* id — тег нашего vlan
* link — интерфейс через который vlan будет доступен
* routes — объявляем блок описания маршрутов
* — to — задаем адрес/подсеть до которой необходим маршрут
* via — указываем шлюз через которой будет доступна наша подсеть
* on-link — указываем что прописывать маршруты всегда при поднятии линка
===== Полный конфиг =====
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4: no
ensp3s0f1:
dhcp4: no
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
vlan20:
id: 20
link: bond0
dhcp4: no
addresses: [10.10.11.2/24]
gateway: 10.10.11.1
nameserver:
addresses: [8.8.8.8]
{{tag>ubuntu netplan network eth0 ens160 vlan bonding}}