O redirecionamento para a mesma porta local causará um loop infinito?

1

A regra:

-t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 12345 -j DNAT --to-destination "127.0.0.1:12345"

Será que vai dar um loop? Está bem definido? Como evitar o loop (se houver)?

Meu script gera a regra assim (e seria bom não ter 127.0.0.1 como uma exceção):

-t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 12345 -j DNAT --to-destination "$addr:12345"

    
por Velkan 20.09.2017 / 13:59

1 resposta

1

O que você quer dizer com " Será que o loop "? A regra será executada mais de uma vez?

A regra não será revisada (verificada novamente) quando for correspondida por um pacote. Então, como é possível fazer um loop? Além disso, as regras NAT serão verificadas apenas no início da conexão (estabelecimento da conexão). Posteriormente, todos os pacotes serão manipulados pelo módulo de rastreamento de conexão para aplicar a mesma regra já correspondida.

Se você ainda estiver em dúvida, poderá ver quantas vezes uma regra é correspondida usando:

$ sudo iptables -t nat -L -n -v
    
por 20.09.2017 / 14:57

Tags