Eu tenho uma VM Ubuntu 18.04 (ou seja, NetworkManager / netplan / systemd-networkd) que estava funcionando bem até que eu tentei adicionar uma segunda interface. Inicialmente, tive problemas com o DHCP ainda em execução depois de configurar um endereço estático (ainda estava definindo um gw e DNS padrão adicional) que acho que agora está resolvido. A nova interface (ens192) é responsiva, mas não consigo me conectar à interface original (ens160).
Eu testei isso tentando me conectar à interface 10.2.0.20 (ens160) de um cliente em 10.1.1.1 (ou seja, através do roteador configurado como gateway padrão).
Verificando com o dump TCP, vejo o pacote TCP syn chegando do cliente no ens160, mas o host está respondendo (ack) na nova interface. Não há regras do iptables configuradas.
Esta foi a tabela de roteamento:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use
Iface
0.0.0.0 10.2.0.254 0.0.0.0 UG 100 0 0 ens160
10.1.0.0 0.0.0.0 255.255.0.0 U 101 0 0 ens192
10.2.0.0 0.0.0.0 255.255.0.0 U 100 0 0 ens160
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 ens160
(Não tenho ideia de onde veio o endereço 169.254.0.0). Observei que a rota ens192 lan tem uma métrica mais alta que a ens160. Eu esperava que isso explicasse exatamente o oposto do comportamento que vejo (ou seja, a métrica mais alta pode significar que os pacotes enviados para 10.1.0.0 são respondidos acima de 10.2.0.0), mas apenas para verificar, alterei isso para o mesmo valor que o outros:
# ip route del 10.1.0.0/16 dev ens192
# ip route add 10.1.0.0/16 dev ens192 metric 100
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.2.0.254 0.0.0.0 UG 100 0 0 ens160
10.1.0.0 0.0.0.0 255.255.0.0 U 100 0 0 ens192
10.2.0.0 0.0.0.0 255.255.0.0 U 100 0 0 ens160
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 ens160
Isso não teve impacto no comportamento.
Hopw faço as duas interfaces funcionarem conforme o esperado (de preferência sem quebrar o netplan)?
Eu li isso - mas não estou tentando enviar tráfego através de um roteador, apenas para a LAN conectada. Caso seja relevante, aqui está meu netplan atual:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens160:
dhcp4: no
addresses: [10.2.0.27/16]
gateway4: 10.2.0.254
nameservers:
addresses: [10.2.0.52,10.2.0.61]
ens192:
dhcp4: no
addresses: [10.1.0.73/16]
A tabela de roteamento possui uma rota para a
10.1.0.0/26
rede viaens192
, assim os pacotes retornam para10.1.1.1
sair por aquela interface.Os
169.254.0.0/16
endereços são configurados automaticamente. A máquina tem outro endereço IPv4?