Como posso garantir que o tráfego de saída use a mesma interface do tráfego de entrada no Linux?

Como posso garantir que o tráfego de saída use a mesma interface do tráfego de entrada no Linux?

Tenho uma caixa Linux com duas interfaces: uma para dados e outra para gerenciamento. Se ambos estiverem na mesma rede, adicionei uma rota para ambas as interfaces.

Imagine que a tabela de roteamento seja:

192.168.132.0 255.255.255.0 eth0
192.168.132.0 255.255.255.0 eth1 ( management interface)

O problema é que mesmo que uma conexão seja iniciada com o IP mgmt ( eth1), o tráfego de retorno estará ativado eth0.

Como posso garantir que o tráfego de retorno em uma conexão use a mesma interface do tráfego encaminhado?

Responder1

Idealmente, ambas as interfaces devem fazer parte de sub-redes IP diferentes, mas se você estiver convencido de que precisa seguir apenas esse caminho, deverá usar o roteamento de acesso dividido do Linux.

Descrição do acesso dividido no Linux

Exemplo de acesso dividido da Novell

Primeiro, crie duas tabelas de roteamento, T1 e T2, para serem usadas para pacotes enviados de ou para essas NICs, adicionando as linhas

252 T1
251 T2

para /etc/iproute2/rt_tables.

A seguir, configure as regras de roteamento para rotear pacotes de entrada e saída por meio destas tabelas:

ip route add 10.105.16.0/24 dev eth0 src 10.105.16.100 table T1
ip route add default via 10.105.16.2 dev eth0 src 10.105.16.100 table T1
ip rule add from 10.105.16.100 table T1

ip route add 10.105.16.0/24 dev eth1 src 10.105.16.101 table T2
ip route add default via 10.105.16.2 dev eth1 src 10.105.16.101 table T2
ip rule add from 10.105.16.101 table T2

informação relacionada