Criando rotas usando o segundo NIC na caixa

1

SO: Linux

Preciso de alguns conselhos sobre como configurar a tabela de roteamento. Eu tenho uma caixa com dois cartões físicos NIC eth0 & eth1 com dois IPs associados IP1 & IP2 (ambos da mesma sub-rede). Eu preciso configurar uma rota que forçará todas as mensagens do IP1 para o IP3 (da mesma sub-rede) para passar pelo IP2. Eu tenho um programa de captura de soquete bruto escutando no IP2 (isso não é para uso malicioso).

Eu configurei a tabela de roteamento como

Destination  Gateway       Genmask        Flags  Metric  Ref  Use  Iface   
   IP3         IP2      255.255.255.255    UGH    0       0    0    eth1

Se eu tentar especificar eth0 ao adicionar a regra acima, recebo um erro "SIOCADDRT: rede inacessível". Eu entendo da página de manual de rota que se o GW especificado é uma interface local, então isso seria usado como a interface de saída.

Depois de configurar esta regra, se eu fizer um traceroute (-i eth0), o pacote vai primeiro para o gateway padrão e depois para o IP3.

Como faço para forçar o pacote originário de eth0 para IP3 a chegar primeiro ao IP2. Não consigo fazer alterações na tabela de roteamento do gateway.

Por favor, sugira.

    
por Aditya Sehgal 26.05.2010 / 12:30

1 resposta

2

Se eu entendi corretamente, você precisa de um roteamento baseado em política, principalmente roteamento baseado em origem. Aqui está um howto simples para fazer exatamente isso.

A idéia é que o roteamento tradicional faça sua escolha de roteamento observando o campo de endereço de destino no cabeçalho IP e comparando-o com sua tabela de roteamento. O roteamento baseado em política pode examinar outros campos ou até mesmo outros itens, como portas TCP. No caso de roteamento baseado em origem, ele olha para o campo de endereço de origem no cabeçalho IP.

    
por 26.05.2010 / 12:46