Estou com problemas para entender este tópico.
Eu entendo o iptables
fluxo de pacotes e também kernel hooks
.
Não leve em consideração as iptables
regras, apenas net.ipv4.ip_forward
habilitadas e o iptables vazio.
Considere hospedar com duas NICs. O primeiro está na 192.168.0.0/24
rede, o segundo - 10.10.0.0/24
. O pacote chega à primeira NIC com IP 10.10.0.3
.
Minha pergunta é como o kernel determina para onde rotear pacotes? Apenas verifica a tabela de roteamento e isso é tudo? Se ele encontrar a entrada de roteamento que corresponde a esse endereço, leva o nome da NIC e encaminha esse pacote para a NIC específica? Qual é armazenado na /proc/net/route
RAM do kernel, mas realmente? Mas se não houver essa rota, ele verifica a NIC (interfaces) que talvez uma delas tenha um IP específico, mesmo com a entrada da rota de rede na tabela?
Estou certo ?
fonte