Ok, pode ser porque eu sou densa ou talvez não esteja encontrando a fonte certa, mas não consigo entender por que uma dessas configurações do IPTABLES seria melhor que a outra.
Aqui está a minha configuração:
Eu tenho uma caixa que está servindo como um proxy transparente e um roteador ou classificação. Ele possui duas interfaces, ETH0 e ETH1, e o seguinte esquema de endereço:
ETH0 = DHCP ETH1 = 192.168.5.1/24 servindo DHCP para a rede 192.168.5.0/24 para clientes atrás dela na LAN
Eu tenho o privoxy instalado e escutando na porta 8080 como um proxy transparente. O que estou realizando com essa configuração é poder soltar essa caixa em uma rede existente com configuração mínima e clientes conectados ao proxy.
Aqui está o meu arquivo IPTABLES original
*nat
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-port 8080
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
COMMIT
Essa configuração funciona bem e o tráfego flui para frente e para trás sem problemas. Recebo o endereço IP dos clientes de origem nos arquivos de log privoxy, e a vida é boa.
Minha confusão surge quando começo a olhar para as configurações de outras pessoas e vejo que elas estão usando DNAT em vez de REDIRECT, e estou tentando entender o verdadeiro benefício de uma sobre a outra. Aqui está um exemplo de configuração:
*nat
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to 192.168.5.1:8080
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
COMMIT
Novamente, essa configuração também funciona e me fornece tudo o que preciso da perspectiva de log ...
Qual é o certo, ou talvez MAIS certo, do que o outro?
Obrigado por reservar um tempo para ler até aqui ...