У меня есть проблема с конфигурацией сети в сервере человечности 18.04. Мой хост не применяет маршрут шлюза по умолчанию с dhcp сервера.
Моя конфигурация netplan:
network:
version: 2
ethernets:
enp0s8:
addresses: []
dhcp4: true
optional: true
IP маршрут:
172.16.0.0/22 via 192.168.26.1 dev enp0s8 proto dhcp metric 100
172.20.0.0/24 via 192.168.26.1 dev enp0s8 proto dhcp metric 100
192.168.0.0/16 via 192.168.26.1 dev enp0s8 proto dhcp metric 100
192.168.26.0/24 dev enp0s8 proto kernel scope link src 192.168.26.227
IP netplan арендует enp0s8:
ADDRESS=192.168.26.227
NETMASK=255.255.255.0
ROUTER=192.168.26.1
SERVER_ADDRESS=172.16.0.100
NEXT_SERVER=172.16.0.100
T1=1000000
T2=1750000
LIFETIME=2000000
DNS=172.16.0.250 172.16.0.100
NTP=172.16.0.1
DOMAINNAME=domain.name
ROUTES=172.20.0.0/24,192.168.26.1 172.16.0.0/22,192.168.26.1 192.168.0.0/16,192.168.26.1
CLIENTID=ffaf818f7d00020000ab11546f22c88c98f9a0
Я также пытался добавить gateway4 опцию в конфигурацию netplan - она не имеет никакого эффекта.
Но если я вручную добавляю маршрут для установки по умолчанию gw - все начинает хорошо работать.
Проблема, что DHCP устанавливает правила для статических маршрутов (dhcp опция 121), и в таком случае шлюз маршрутизаторов игнорируется, как объяснено здесь
Вы видите от того, какие netplan IP арендные договоры возвращает на предпоследней строке, правила DHCP устанавливают статические маршруты.
Одна опция, кажется, работает в Ubuntu 16 путем добавления другого правила маршрутизации для 0.0.0.0, как объяснено в ответе @greecemonkey (хотя я не попробовал это и не могу подтвердить, работало ли это в netplan над Ubuntu 18),
Другой данный ответ включает игнорирование статических маршрутов, обеспеченных сервером DHCP, как объяснено в ответе, данном @Flash5k. К сожалению, это не работает в netplan над Ubuntu 18.04. Редактирование/etc/dhcpcd.conf файла не имеет никакого влияния, поскольку netplan не использует этот файл (это использует внутреннего клиента DHCP).
В более новых версиях netplan у них есть новая опция для dhcp-переопределений, которая позволяет игнорировать маршруты, обеспеченные сервером DHCP (а также другая установка, обеспеченная DHCP). К сожалению, на данный момент это не было назад портировано к Ubuntu 18.04.