Ayuda !!!! Problemas de ruteo -- 2 wan + dmz + lan

Forums: 

Objetivo:
Acceder sin problema por el router2 a los servicios de la DMZ.
El problema:
Todo acceso desde el exterior por el adsl1 va correcto entran y salen los paquetes sin problema, pero quiero que todo lo que entre por el router2 salga por él y no coja el router1 (Gateway por defecto) que es lo que me está ocurriendo ahora. He probado el marcado con iptables y no me va me sigue cogiendo el Gateway por defecto, y ya no sé que estoy haciendo mal.
Escenario:
Router/Adsl1=>192.168.2.2/255.255.255.0 (redireccionado Puerto 80=>192.168.3.3)
Router/Adsl2=>192.168.4.2/255.255.255.0 (redireccionado Puerto 80=>192.168.3.4.)
FW (4Placas):
Eth0=>192.168.1.1/255.255.255.0 =>Lan
Eth1=>192.168.3.1/255.255.255.0 => DMZ
Eth2=>192.168.2.1/255.255.255.0 =>Router/Adsl1 => Gateway por defecto
Eth3=>192.168.4.1/255.255.255.0 =>Router/Ads2
Linux Fedora Core8 con iptables e iproute.
DMZ:
WebSever1=>192.168.3.3/255.255.255.0
Correo=>192.168.3.2/255.255.255.0
WebServer2=>192.168.3.4/255.255.255.0
Os dejo el script que estoy haciendo para iproute:
# echo 101 adsl1 >> /etc/iproute2/rt_tables
# echo 102 adsl2 >> /etc/iproute2/rt_tables
ip route flush cache
Tabla rutas router/adsl1
# ip route add 192.168.2.0/24 dev eth2 src 192.168.2.1 table adsl1
# ip route add default via 192.168.2.2 table adsl1
Tabla rutas router/adsl2
#ip route add 192.168.4.0/24 dev eth3 src 192.168.4.1 table adsl2
#ip route add default via 192.168.4.2 table adsl2
Rutas principales
#ip route add 192.168.2.0/24 dev eth2 src 192.168.2.1
#ip route add 192.168.4.0/24 dev eth3 src 192.168.4.1
# ip route add default via 192.168.2.2 (Gateway defecto router1)
Lo que salga del router1 que vaya al router1 y lo del dos al dos
#ip rule add from 192.168.2.1 table adsl1
#ip rule add from 192.168.4.1 table adsl2
Usando el marcado
#ip rule add fwmark 1 table adsl1
#ip rule add fwmark 2 table adsl2

Os dejo el extracto que afecta al marcado y forward del script de iptables :
########################################################################
#Localizacion Iptables
IPTABLES="/sbin/iptables"
#########################################################################
# Cargar Modulos
/sbin/depmod -a
#
# Añade algunas opciones a iptables como LOG,REJECT,MASQUERADE
#
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
############################################################################
# Limpiar las reglas usadas anteriormente
$IPTABLES -F
$IPTABLES -t nat –F
$IPTABLES –t mangle -F
$IPTABLES --delete-chain
$IPTABLES --table nat --delete-chain
$IPTABLES –table mangle –delete-chain

############################################################################
# Activar ip_forward
echo "1" > /proc/sys/net/ipv4/ip_forward

# #####################################################################
# Evitar Spoofing
for F in /proc/sys/net/ipv4/conf/*/rp_filter; do echo "1" > $F; done
#
# Bloqueando todo ICMP "echo requests"
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
# Bloqueando ICMP redirect messages
echo "1" > /proc/sys/net/ipv4/conf/all/accept_redirects
#######################################################################
# REGLAS POR DEFECTO
# #######################################################################
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

# #######################################################################
# Masquerade
# #######################################################################
$IPTABLES -t nat -A POSTROUTING -o eth2 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth3 -j MASQUERADE
he probado tambien:
$IPTABLES -t nat -A POSTROUTING -o eth2 -j SNAT –to 192.168.2.1
$IPTABLES -t nat -A POSTROUTING -o eth3 -j SNAT –to 192.168.4.1

# #######################################################################
# Marcado de paquetes
# #######################################################################
$IPTABLES -t mangle -A PREROUTING -m conntrack –ctorigdst 192.168.2.1 -j MARK –set-mark 1
$IPTABLES -t mangle -A PREROUTING -m conntrack –ctorigdst 192.168.4.1 -j MARK –set-mark 2
también he probado este marcaje
$IPTABLES -t mangle -A PREROUTING -i eth2 -s 192.168.2.1 -m state --state NEW,ESTABLISHED,RELATED -j MARK –set-mark 1
$IPTABLES -t mangle -A PREROUTING -i eth3 -s 192.168.4.1 -m state --state NEW,ESTABLISHED,RELATED -j MARK –set-mark 2
otro metodo probado
$IPTABLES -t mangle -A INPUT -p tcp -i eth2 –dport 80 -j CONNMARK --set-mark 1
$IPTABLES -t mangle -A INPUT -p tcp -i eth3 –dport 80 -j CONNMARK --set-mark 2

# #######################################################################
# FORWARD básico
# #######################################################################
$IPTABLES -A FORWARD -m tcp -p tcp -i eth3 --sport 1024:65535 -o eth1 -d 192.168.3.4 --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -m tcp -p tcp -i eth1 -s 192.168.3.3 --sport 80 -o eth3 --dport 1024:65535 -j ACCEPT