Tabela NAT :
Esta tabela só deve ser usada para NAT (Network Address Translation) em diferentes pacotes. Em outras palavras, ele deve ser usado apenas para traduzir o campo de origem ou o campo de destino do pacote.
Tabela de filtros :
A tabela de filtros é usada principalmente para filtrar pacotes. Podemos combinar pacotes e filtrá-los da maneira que quisermos. Esse é o lugar em que realmente tomamos medidas contra os pacotes e observamos o que eles contêm e DROP ou / ACCEPT, dependendo do conteúdo deles. Claro que também podemos fazer filtragem prévia; no entanto, essa tabela específica é o local para o qual a filtragem foi projetada.
Em Atravessamento de tabelas e correntes , podemos ver que a cadeia FORWARD do filtro é atravessada somente por pacotes encaminhados (pacotes que vêm da rede e saem pela rede), isto é, seu computador está agindo como um roteador, enquanto a cadeia PREROUTING do nat é atravessada por pacotes encaminhados e pacotes cujo destino é o host local.
Você deve usar o PREROUTING de nat apenas para alterar o endereço de destino dos pacotes e o FORWARD do filtro apenas para filtragem (descarte / aceitação de pacotes).
Se obtivermos um pacote na primeira decisão de roteamento que não é destinada à própria máquina local, ele será roteado pela cadeia FORWARD. Se o pacote for, por outro lado, destinado a um endereço IP que a máquina local esteja escutando, enviaremos o pacote através da cadeia INPUT e para a máquina local. Os pacotes podem ser destinados à máquina local, mas o endereço de destino pode ser alterado dentro da cadeia PREROUTING fazendo NAT. Como isso ocorre antes da primeira decisão de roteamento, o pacote será considerado após essa alteração. Por causa disso, o roteamento pode ser alterado antes que a decisão de roteamento seja feita. Observe que todos os pacotes estarão passando por um ou outro caminho nesta imagem. Se você DNAT um pacote de volta para a mesma rede que veio, ainda vai viajar através do resto das cadeias até que seja novamente na rede.