La situation est la suivante. Une station équipée de deux interfaces sert, entre autres, de firewall. « enp2s2 » est reliée à une box internet et « enp2s5 » au réseau local. Très classique donc.
Le réseau local a pour adresse 192.168.0.0/24 et celui de la box, 192.168.1.0/24.
Comme j’ai un problème de configuration avec le firewall, j’ai essayé d’interpréter la table de routage. D’après ce que j’ai compris, le noyau opère un « ET » logique entre l’adresse de destination du paquet et le masque (Genmask) d’une ligne de la table, puis compare le résultat à la « Destination » inscrite sur cette même ligne. Si le résultat du « ET » logique et la « Destination » sont équivalents, le paquet est envoyé à l’interface inscrite sur cette ligne. Dans le cas contraire, il passe à la suivante.
Voila la table de routage de ma station « firewall » :
Root /!\ : netstat -rn
Table de routage IP du noyau
Destination Passerelle Genmask Indic MSS Fenêtre irtt Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 enp2s2
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp2s5
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 enp2s2
Root /!\ :
Dans des documentations, qui datent malheureusement, j’ai lu que le noyau commence par la première ligne, puis éventuellement interprète la seconde et ainsi de suite.
Seulement voila, si j’en crois la table de mon firewall, tous les paquets sont envoyés vers la box, puisque un « ET » logique entre une adresse et 0.0.0.0, donnera toujours 0.0.0.0 !
Donc, soit la présentation du résultat de la commande netstat -rn a changé, soit, je n’ai rien compris !
Quelqu’un pourrait il m’éclairer sur le sujet ou me transmettre un lien vers un cours (fr/en) sérieux sur le sujet ?
Merci de votre attention.