Várias NIC na mesma sub-rede com uma porta desconectada

Várias NIC na mesma sub-rede com uma porta desconectada

Eu tenho um sistema Linux com 3 NICs dedicadas e todas as 3 estão na mesma sub-rede com os seguintes IPs

ETH0: 192.168.1.10
ETH1: 192.168.1.11
ETH2: 192.168.1.12

Configurei três tabelas de roteamento e rotas e regras de IP correspondentes para isolar o tráfego das 3 portas. Abaixo é mostrado o mesmo para ETH1. ETH0 e ETH2 também têm entradas semelhantes.

default via 192.168.1.1 dev eth1
192.168.1.0/24 dev eth1  src 192.168.1.11

32752:  from all to 192.168.1.11/24 lookup 1
32753:  from 192.168.1.11/24 lookup 1

Se ETH1 e ETH2 estiverem desconectados enquanto ETH0 estiver conectado, quando eu executar ping em IPs ETH1 e ETH2, recebo uma resposta de ETH0. Em outra pergunta,Ping fantasma em um sistema Linux multi-NICDescobri que isso é causado pelo preenchimento da tabela ARP com o mesmo endereço MAC para todas as 3 portas.

Eu configurei arp_ignore & arp_announce conforme especificado aquiUbuntu Linux - vários NICs, mesma LAN… As respostas ARP sempre saem de um único NIC& Posso ver as entradas ARP no PC contendo os endereços MAC corretos.

No entanto, ainda vejo que apenas uma porta se torna o "padrão" nesta circunstância. Isso pode ser visto facilmente quando, digamos, ETH1 e ETH2 já estão conectados e o cabo para ETH0 agora está conectado, mas ETH0 está conectado a um switch isolado (que não tem conexão com a sub-rede). Agora, ETH0 se torna o padrão e devido ao isolamento, os pings para ETH1 e ETH2 também falham.

Existe uma maneira de realmente isolar o tráfego nas três portas?

informação relacionada