iptables vs route

26

Qual é a diferença entre essas duas ferramentas?

Alguém pode me dizer qual é o principal fluxo de trabalho da rede por trás do Linux (em relação à filtragem de pacotes IPv4, tabela de roteamento NAT e IP)?

Determinante
fonte

Respostas:

27

route é um comando que exibe, adiciona e exclui entradas da tabela de roteamento TCP / IP do kernel (também conhecida como "Base de informações de encaminhamento").

iptablesé um comando que exibe, adiciona e exclui entradas do Netfilter, o subsistema de filtragem e manipulação de pacotes do kernel do Linux. Ele lida com NAT.

Como o encaminhamento IP, ou seja, o roteamento, está basicamente reescrevendo um pacote com um endereço de origem diferente e enviando-o para uma interface de rede diferente, acredito que você poderia tecnicamente fazer o roteamento estático com as iptablesregras apropriadas na mangletabela, mas acredito que geralmente é mais rápido deixe a parte de roteamento do kernel fazer isso.

Existem muitos diagramas que ilustram exatamente como um pacote TCP / IP atravessa o kernel (incluindo o Netfilter e o recurso de roteamento) - um exemplo é o seguinte: http://www.adminsehow.com/2011/09/iptables- mapa-transversal-pacote /

LawrenceC
fonte
11
Esse mapa é ótimo.
Jacob Margason 02/02
a "tabela de roteamento TCP / IP" da rota também in / define a tabela do iptables?
lovespring
11
Eu não tentei, mas acho que você pode compilar o kernel com o Netfilter desativado, mas o encaminhamento ainda funcionará se estiver ativado. Portanto, acredito que o Netfilter e o recurso de roteamento são separados.
21816 LawrenceC