====== 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}}