Problemas com o NAT

2

Eu sou um noob de redes, então sinto muito pelo título muito genérico. Eu tenho a configuração de rede da seguinte maneira:

Alguns detalhes sobre a rede:

  • eth0 em todos os dispositivos tem um endereço IP na sub-rede 10.10.10.0, que pode ser acessado em nossa intranet
  • eth1 na máquina 1 está conectada por meio de uma rede privada à eth1 na máquina 2
  • eth1 na máquina 3 está conectada por meio de uma rede privada à eth2 na máquina 2
  • eth1 e eth2 na máquina 2 estão em ponte
  • eth1 e eth2 na máquina 2 não têm IPs

A máquina 1 tem que se comunicar com a máquina 3 através da ponte na máquina 2. Eu tenho as rotas configuradas em todas as máquinas para isso. Ou seja, quando o tráfego é enviado da eth1 na máquina 1, ele alcança a eth1 na máquina 2 e é enviado da eth2 na máquina 2 para a eth1 na máquina 3. Isso funciona perfeitamente.

O problema que tenho é quando a máquina 2 faz NATing (o que não é feito usando iptables, mas por um programa que eu não tenho controle). O que o programa faz é atribuir um IP de eth0 na máquina 2 como o IP de origem quando encaminha os pacotes para a máquina 3. Assim, quando a máquina 3 tiver que responder, ela verá a origem na sub-rede 10.10.0.0 e roteará o pacote. de eth0 na máquina 3 para eth0 na máquina 2.

Minha pergunta: Como posso rotear o pacote da máquina 3 para chegar na eth2 na máquina 2?

O único controle que tenho sobre esse programa que faz o NATing é dizer qual IP de origem usar quando estiver NAT. eth1 e eth2 na máquina 2 não têm IPs, então os únicos IPs que eu posso usar são os aliases que eu tenho para eth0 na máquina 2.

    
por Networking Noob 07.12.2011 / 07:51

1 resposta

2
Tendo ponderado, acho que você pode definir a rota no M3 para (o endereço eth0 do M1) via (eth1 no M3), onde M1 = machine1 e assim por diante. Onde 10.10.10.x é o endereço eth0 da M1, tente

M3% route add -host 10.10.10.x dev eth1

Você deve ser capaz de verificar que, no M3, as respostas aos pacotes do endereço do M1 estão saindo eth1 não eth0, usando tcpdump . Note que isto não garante que o M2 faça a coisa certa com eles ; ele só deve enviá-los de volta do jeito que eles vieram, e esperamos que o M2 os de-NAT e os envie para o M1.

    
por 07.12.2011 / 09:18

Tags