Bonjour à tous,

Je sollicite votre aide pour une simple question à propos du NAT IPTABLES sous Linux (dans mon cas, il s'agit d'une Debian Etch Stable) :

Est-il possible que lorsque l'on émette, depuis une machine cliente, un paquet "ICMP Request" en entrée de l'équipement de routage effectuant le NAT (dans mon cas, un routeur linux avec Quagga mais NAT directement via IPTABLES), ce dernier ne restitue la réponse "ICMP Reply" que s'il y a une certaine (laquelle ?) correspondance avec la requête (une sorte de mode connected, de cache des requêtes, ou de traçage de connexion...) ?

Mon architecture de routage (simplifiée) :


stationA[@privéeA]------------[@privéeA+1]ROUTEUR_QUAGGA[@publiqueA][@TunnelIP]-------------------vers WAN



stationB[@privéeB]------------[@privéeB+1]ROUTEUR_CISCO[@publiqueB][@TunnelIP]--------------------vers WAN


Ma configuration NAT IPTABLES est de type :

- iptables -t nat -A POSTROUTING -s @sous-réseau-privé -o s3gre -j SNAT --to-source @publique --> pour NATer en @publique tout ce qui sort du réseau privé
- iptables -t nat -A PREROUTING -d @publique -i s3gre -j DNAT --to-destination @privéeA --> pour NATer en @privée de l'unique station connectée tout ce qui touche l'adresse publique

Mais peut-être que la seconde ligne est inutile justement à cause de ce possible mécanisme de traçage des connexions...


Tout cela car je suis confronté au cas suivant : pour deux paquets ICMP Reply IDENTIQUES (à part les numéros de séquences et checksum, bien entendu), l'un passe au travers du routeur, l'autre non.
La seule différence constatée se situe au niveau des requêtes ICMP correspondantes à ces réponses, qui ne ciblent pas les mêmes addresses (l'une cible une adresse distante privée, l'autre une adresse distante publique) ; les paquet "request" sont donc différents.

Petite précision : j'ai deux réponses ICMP identiques pour deux requêtes différentes, car le routeur distant NATe aussi les adresses (inside et outside).

Merci beaucoup à tout ceux qui pourront m'apporter quelques éléments de réponse !

Jul