Использование DHCP и статической адресации
Самый простой вариант, когда используется DHCP сервер для получения IP адреса:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
dhcp4: true
Для установки статического IP адреса используйте ключ address, который понимает список адресов (IPv4, IPv6), вместе с маской подсети (например, /24). Тут же можно указать и информацию о серверах DNS, а основной шлюз может быть определен только через маршрут по умолчанию.
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.10.10.2/24
nameservers:
search: [mydomain, otherdomain]
addresses: [10.10.10.1, 1.1.1.1]
routes:
- to: default
via: 10.10.10.1
Подключение нескольких интерфейсов с помощью DHCP
Современные сервера часто используют более одного сетевого интерфейса. Обычно серверам необходимо подключаться к нескольким сетям, и может потребоваться, чтобы трафик в Интернет проходил только через определенный интерфейс.
Можно добиться желаемой маршрутизации через DHCP, указав метрику для маршрутов, полученных у DHCP, что обеспечит предпочтение одних маршрутов по сравнению с другими. В этом примере «enred» предпочтительнее «engreen», так как имеет более низкую метрику:
network:
version: 2
ethernets:
enred:
dhcp4: yes
dhcp4-overrides:
route-metric: 100
engreen:
dhcp4: yes
dhcp4-overrides:
route-metric: 200
Подключение к открытой беспроводной сети
Netplan поддерживает подключение к открытой беспроводной сети (не защищенной паролем), требуя указания имени точки доступа:
network:
version: 2
wifis:
wl0:
access-points:
opennetwork: {}
dhcp4: yes
Подключение к защищенной беспроводной сети WPA
Для указания что сеть беспроводная используют ключ «wifis» и применяют те же параметры конфигурации, что для проводных устройств Ethernet. Необходимо указать имя и пароль беспроводной точки доступа:
network:
version: 2
renderer: networkd
wifis:
wlp2s0b1:
dhcp4: no
dhcp6: no
addresses: [192.168.0.21/24]
nameservers:
addresses: [192.168.0.1, 8.8.8.8]
access-points:
"network_ssid_name":
password: "**********"
routes:
- to: default
via: 192.168.0.1
Подключение к беспроводным сетям WPA Enterprise
Встречаются беспроводные сети, защищенные с помощью WPA или WPA2 Enterprise, что требует дополнительных параметров аутентификации.
Например, если сеть защищена с помощью WPA-EAP и TTLS:
network:
version: 2
wifis:
wl0:
access-points:
workplace:
auth:
key-management: eap
method: ttls
anonymous-identity: "@internal.example.com"
identity: "joe@internal.example.com"
password: "v3ryS3kr1t"
dhcp4: yes
Или, если сеть защищена с помощью WPA-EAP и TLS:
network:
version: 2
wifis:
wl0:
access-points:
university:
auth:
key-management: eap
method: tls
anonymous-identity: "@cust.example.com"
identity: "cert-joe@cust.example.com"
ca-certificate: /etc/ssl/cust-cacrt.pem
client-certificate: /etc/ssl/cust-crt.pem
client-key: /etc/ssl/cust-key.pem
client-key-password: "d3cryptPr1v4t3K3y"
dhcp4: yes
Использование нескольких адресов на одном интерфейсе
Раздел addresses может принимать список адресов для назначения интерфейсу:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.100.1.38/24
- 10.100.1.39/24
routes:
- to: default
via: 10.100.1.1
Псевдонимы интерфейса (например, eth0:0) не поддерживаются.
Использование нескольких адресов с несколькими шлюзами
Как и в приведенном выше примере, интерфейсы с несколькими адресами можно настроить с несколькими шлюзами по умолчанию.
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.0.0.10/24
- 11.0.0.11/24
routes:
- to: default
via: 10.0.0.1
metric: 200
- to: default
via: 11.0.0.1
metric: 300
Настройка объединения сетевых интерфейсов
Для настройки объединения физических интерфейсов объявляем сам интерфейс bond вместе со связанными в нем сетевыми интерфейсами и указанием режима самого объединения. Ниже приведен пример, использующей DHCP:
network:
version: 2
renderer: networkd
bonds:
bond0:
dhcp4: yes
interfaces:
- enp3s0
- enp4s0
parameters:
mode: active-backup
primary: enp3s0
Ниже приведен пример системы, работающей в качестве маршрутизатора, с различными объединенными интерфейсами и разными типами. Обратите внимание на значения ключей «optional: true», которые позволяют выполнять загрузку, не дожидаясь полной активации этих интерфейсов.
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: no
enp2s0:
dhcp4: no
enp3s0:
dhcp4: no
optional: true
enp4s0:
dhcp4: no
optional: true
enp5s0:
dhcp4: no
optional: true
enp6s0:
dhcp4: no
optional: true
bonds:
bond-lan:
interfaces: [enp2s0, enp3s0]
addresses: [192.168.93.2/24]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
bond-wan:
interfaces: [enp1s0, enp4s0]
addresses: [192.168.1.252/24]
nameservers:
search: [local]
addresses: [8.8.8.8, 8.8.4.4]
parameters:
mode: active-backup
mii-monitor-interval: 1
gratuitious-arp: 5
routes:
- to: default
via: 192.168.1.1
bond-conntrack:
interfaces: [enp5s0, enp6s0]
addresses: [192.168.254.2/24]
parameters:
mode: balance-rr
mii-monitor-interval: 1
Настройка сетевых мостов
Чтобы создать простой мост, состоящий из одного устройства, использующего DHCP, напишите:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
dhcp4: no
bridges:
br0:
dhcp4: yes
interfaces:
- enp3s0
Если нужен статический адрес для моста используйте вариант:
network:
version: 2
renderer: networkd
ethernets:
enp6s0:
dhcp4: no
bridges:
br0:
addresses: [10.0.0.10/24]
routes:
- to: default
via: 10.0.0.1
nameservers:
addresses: [8.8.8.8]
interfaces:
- enp6s0