MASQUERADE
faz o que o nome sugere: Ele esconde tudo "por trás" do host. Você faria isso para fornecer Internet para vários hosts quando você tiver apenas um endereço IP de uplink. Essa tecnologia é usada na maioria dos roteadores de acesso à Internet, chamados de "NAT".
Quando o servidor de contatos do host A S via MASQUERADE
ing router R, o servidor não será capaz de ver a conexão se origina do host A. Em vez disso, para o servidor parece que está se comunicando com o roteador R. Router R no entanto sabe que essa conexão era originalmente do host A e encaminhará as mensagens de acordo. O host A sabe que está conectado ao servidor S e que o servidor S enviou a resposta.
No IPTables, você normalmente usa isso apenas na interface voltada para a Internet. Algo assim:
-t nat -A POSTROUTING -i eth0 -j MASQUERADE
Significa que todo pacote IP que foi roteado e sai por eth0
receberá o tratamento.
Quando usado em seu exemplo, ele parece em 13.37.42.1
(host S) como se sua máquina (daqui em diante host Y) iniciasse a conexão. Isso significa que a resposta chegará ao host Y, que o encaminha para o destino real (host A). Para hospedar A, parecerá que a mensagem veio do host Y. Não é possível ver ou saber que o host S realmente a enviou, porque MASQUERADE
funciona nos dois sentidos aqui.
Se você não usar essa regra, o host S verá uma mensagem originada do host A. Ele enviará a resposta diretamente para o host A. O host A, no entanto, não conhece o host S. Ele está conectado ao host Y e espera uma resposta de lá. Como tal, a resposta do host S é tratada como tráfego não solicitado e descartada. A conexão irá expirar.