On Fri, Oct 01, 2004 at 04:21:10PM +0200, Leopoldo Ghielmetti wrote:
> Seulement que iptables fait le DNAT puis le routing et ensuite le SNAT
> et il n'y a pas moyen de faire l'inverse. Et qui plus est il n'y a pas
Si, c'est possible. Voir les commandes ip rule et ip route. On peut
cr�er plusieurs tables de routage, activ�es en fonction de r�gle de
marquage du firewall.
Par exemple (exemple compliqu�, peut-�tre n'est-il pas n�cessaire
d'aller jusque-l�). Ce que �a fait: les paquets provenant de la machine
locale sont rout�es en fonction de l'adresse source. Les paquets
traversants sont marqu�s � l'entr�e en fonction de leur adresse source,
puis � la sortie la marque est utilis�e.
La seule particularit� est qu'on utilise un patch � iptables qui permet
de rendre les marques *persistantes* sur un nexus (si tu veux une
`connexion' au sens du firewall stateful iptables: pas forc�ment du TCP).
Sans ce patch `--save-mark' est impossible.
Sans ce patch il est difficile de router correctement les paquets en
retour dans le cas g�n�ral.
Je ne suis pas s�r que tu as besoin d'une solution si complexe, mais
peut-�tre que cela te mettra dans la bonne direction (tables de routage
multiples d�cid�es en fonction d'une marque du firewall).
# New routing table
ip route add default via 192.168.2.1 table 4
# For local host both ways
ip rule add from 192.168.2.10/32 table 4
# No martians
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
iptables -t mangle -F
iptables -A PREROUTING \
-i eth0 -s 192.168.3.0/24 -p tcp --sport 25 \
-t mangle -j CONNMARK --restore-mark
iptables -A PREROUTING \
-i eth0 -s 192.168.3.0/24 -p tcp --sport 25 \
-m mark --mark 2 \
-t mangle -j MARK --set-mark 4
iptables -A PREROUTING -t mangle -m mark ! --mark 0 -j ACCEPT
iptables -A PREROUTING \
-i eth1 -d 192.168.2.10/32 -p tcp --dport 25 \
-t mangle -j MARK --set-mark 2
iptables -A PREROUTING \
-i eth1 -d 192.168.2.10/32 -p tcp --dport 25 \
-t mangle -j CONNMARK --save-mark
# Special routing depending on mark
ip rule add fwmark 4 table 4
_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull