carbhonn
(usa Slackware)
Enviado em 07/01/2008 - 12:27h
E ae amigos!
Bom eu entendi perfeitamente a intençao do SNAT,
o que ta me confundindo de fato é a DNAT.
Se um pacote vem da WAN ele tem como destino o ip da interface 200.200.217.40 que deve ser traduzido para o ip 192.168.1.2 para que esse host possa receber o pacote como se fosse da rede local.
Segundo o que estudei sobre o DNAT ele traduz o ip de destino do pacote entrante vindo da WAN para a LAN, e só pode ser configurada na chain PREROUTING pois é nela que sao tratados os pacotes vindos da internet para a rede local. Isso é o que eu entendi e me corrijam se estou enganado.
Mas vejam essa regra:
iptables -t nat -A PREROUTING -i eth0 -s 192.168.1.0/24 -j DNAT --to 200.200.217.40-200.200.217.50:1024:5000
Segundo essa regra os pacotes com ip de destino 192.168.1.0/24, isso é, qualquer maquina da rede local LAN, será traduzido para o ip 200.200.217.40.
A minha duvida é o seguinte: Isso não é uma contradiçao na regra uma vez que só podem ser traduzidos os IPs de pacotes que entram, nessa regra diz que será traduzido do ip de rede local para o ip da internet como se o pacote fosse sair para a internet. Eu simplesmente nao entendi a intençao dessa regra.
Vejam a próxima:
iptables -t nat -A PREROUTING -s 200.200.217.40 -i eth0 -j DNAT --to 192.168.1.2
Essa última me parece bem logica pois será traduzido o ip do pacote entrante - 200.200.217.40 da WAN para a LAN - 192.168.1.2
Isso é, o ip de destino pode ser esse em especifico ou a rede toda pondo um 0 no lugar do dois e a mascara na frente.
Mas a primeira regra nao parece ser logica, sendo que será traduzido o ip da LAN para a WAN como se ele fosse sair pra a internet, o que seria um contrasenço pois na chain PREROUTING só sao traduzidos IPs de destino da WAN(internet)da inerface do roteador para a LAN(rede local do roteador)
Eu quero entender isso pra poder proseguir nos meus estudos e nao passa pra proxima seçao so livro sem intender bem essa que estou um pouco travado. Valeu pelas futuras ajudas pessoal.