Como NAT entre 2 interfaces de rede sem afetar o roteamento

0

Meu roteador baseado em Linux possui 5 portas Ethernet. Atualmente, ele está agindo como um roteador entre as portas 1 e amp; 2 e a porta WAN dedicada, sem NAT. A porta 1 é 192.168.1.1/24, a porta 2 é 192.168.2.1/24, a porta WAN é 192.168.0.1/24.

A conexão WAN de saída passa por um dispositivo de registro que controla o uso, depois passa por um segundo roteador doméstico que faz NAT e usa um IP público na porta WAN.

Para simplificar, a rede é a seguinte, com o prefixo IP 192.168 .-:

server1--------Router1--------Logging device--------Router2----------
   .1.2      .1.1  .0.1                           .0.254  (public ip)

A configuração do roteador1 funciona bem (isso é um roteador simples), o Roteador2 também (esse é um gateway simples). No entanto, gostaria de remover o Router2 e fazer o meu NAT entre as portas 3 & 4 do Router1, com o port4 usando meu IP público real.

Isso seria viável? Eu gostaria de manter um isolamento rigoroso entre as portas 1-2-WAN e 3-4, para garantir que todo o tráfego passe pelo dispositivo de registro (com seu endereço de origem IP original).

A ponte transparente seria a solução? Eu poderia aplicar NAT de origem a essa ponte? O endereçamento IP é bem feito?

    
por user1766244 05.09.2014 / 13:39

1 resposta

0

Assumindo que suas 5 portas ethernet no roteador1 são nomeadas eth0 - eth4, portanto, tendo a WAN no eth3:

iptables -t nat -A POSTROUTING --source 192.168.1.0/24 --out-interface eth3 -j MASQUERADE
iptables -t nat -A POSTROUTING --source 192.168.2.0/24 --out-interface eth3 -j MASQUERADE

Se você tiver um IP fixo como seu endereço IP público, substitua "-j MASQUERADE" por "-j SNAT --to-source $ PUBLIC_IP" (naturalmente substitua $ PUBLIC_IP pelo endereço da WAN!).

É claro que você precisará definir sua rota padrão para eth3, mas isso não fazia parte da pergunta. Você também deseja firewall tráfego de entrada para o endereço IP público.

    
por 05.09.2014 / 14:34