Eu tenho uma nova instalação do servidor ubuntu 17.10, no entanto, o problema pode afetar as versões anteriores, mas é a primeira vez que encontro essa situação.
O servidor está executando duas placas de rede separadas, uma para comunicações internas da rede local (confiável), a outra é uma conexão pública (não confiável) à Internet com o ISP.
No passado, sempre configurei a conexão interna como estática e sem um gateway padrão, pois a placa externa seria fornecida via DHCP do meu ISP (concessão estática).
/etc/netplan/00-netcfg.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
addresses: [192.168.1.xx/24]
nameservers:
addresses: [8.8.8.8,8.8.4.4]
eth1:
dhcp4: yes
dhcp6: no
Agora isso funcionou bem, pois eu não forneci uma linha de gateway4 na configuração eth0, portanto, vinculou o gateway padrão do ISP e funcionou bem.
Desde então, decidi que queria usar concessões estáticas para o (s) servidor (es) em meu Homelab, e configurei como tal no roteador interno. Mas quando eu configuro a configuração netplan como dhcp para os dois dispositivos, ele adiciona o gateway padrão para as duas interfaces (o que faz sentido porque os dois servidores DHCP estão fornecendo um gateway).
> route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 eth0
0.0.0.0 173.xxx.xxx.1 0.0.0.0 UG 100 0 0 eth1
173.xxx.xxx.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
173.xxx.xxx.1 0.0.0.0 255.255.255.255 UH 100 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.1.1 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
Como posso configurar o netplan para que o adaptador eth0 (interno) desconsidere o gateway padrão fornecido pelo servidor DHCP (sem remover o gateway no próprio servidor DHCP, pois outras máquinas ainda precisam de um gateway padrão).
fonte
Respostas:
O Netplan v0.90 apresenta um novo conjunto de opções:
dhcp4-overrides
( solicitação de recebimento ).Portanto, se sua versão do
netplan.io
pacote for nova o suficiente ( veja as versões disponíveis aqui ), você pode usar o seguinte:fonte