Quoting Laurent Foucher <[EMAIL PROTECTED]> from ml.debian.fr: :Raphael Manfredi wrote: :> J'ai mis comme regle: :> :> iptables -t nat -A POSTROUTING -o $PPP_IFACE -j SNAT :> -p tcp --to-source $PPP_LOCAL:61000-65000 :> :> et j'interdis (et logge) les entrees depuis $PPP_IFACE (i.e. ppp0) :> hors du range 61000-65000.
:Je suis surpris que les machines du r�seau fonctionnent. En effet, avec cette :configuration, :tous paquets �mis du r�seau revient avec l'addresse PPP_LOCAL et le routeur n'a :aucun moyen :de savoir que ce paquet est destin� � une machine du r�seau. L'option de :masquage r�sout ce probl�me :en modifiant les ports sources et en �tablissant une correspondance entre ce :nouveau port et la machine :�mettrice. L'option simple de masquage est : : :iptables -t nat -A postrouting -o $PPP_IFACE -j MASQUERADE En fait, j'utilise SNAT parce que ma connection ADSL tombe toutes les 24 heures, mais est retablie avant le timeout de TCP (2 minutes) avec la meme adresse IP en general. Dans ce cas, les connections en cours reprennent comme si de rien n'etait. Si j'utilisais MASQUERADE, les connections tomberaient avec l'interface ppp0. En fait, mon probleme est comment forcer le SNAT sur des connections initiees par des processus locaux sur le firewall. Theoriquement, il n'y a pas besoin de faire du masquerading puisque cette machine est connectee, et qu'il y a une route default sur ppp0. Mais pour pouvoir filtrer les ports en entree, en me limitant au range 61000-65000, il faut que je force les connections locale a faire "comme si" elles venaient de 61000-65000, pour que les reponses distantes reviennent sur cet intervalle de ports. D'apres la doc, POSTROUTING est appele avant l'emission sur l'interface. Mais ce n'est pas le cas en pratique. Je suis coince, parce que sur la chaine OUTPUT, je ne peux pas faire de SNAT... D'ou mes questions. Raphael

