Два интернет-провайдера и перенаправление трафика

У меня есть шлюз с двумя провайдерами, подключенными к eth0 и eth2. Существует также eth1 с локальной сетью. Я пытаюсь сгруппировать некоторые службы в одном интерфейсе, а некоторые во втором:

incoming traffic 1 eth0: 22 sshd, 80 http, 8080 http 2 eth2: 22 sshd outgoing traffic 3 eth2: 22 ssh, 25 smtp, 80 http, 110 pop3, 443 https, 587 smtp 4 eth0: the rest of the ports 

Мне удалось перенаправить трафик в точках 1,3,4, используя iptable, iproute2 с fwmark. Вот настройка интерфейса:

 auto lo iface lo inet loopback auto eth0 iface eth0 inet static address aaa.aaa.aaa.90 netmask 255.255.255.248 gateway aaa.aaa.aaa.89 auto eth2 iface eth2 inet static address bbb.bbb.bbb.137 netmask 255.255.255.192 pre-up /usr/local/bin/firewall.sh auto br0 iface br0 inet static address 192.168.1.1 netmask 255.255.0.0 bridge-ports eth1 post-up ifconfig eth1 0.0.0.0 promisc up 

Вот ip-маршрут и правила ip:

 ip route show table main aaa.aaa.aaa.88/29 dev eth0 proto kernel scope link src aaa.aaa.aaa.90 bbb.bbb.bbb.128/26 dev eth2 proto kernel scope link src bbb.bbb.bbb.137 192.168.0.0/16 dev br0 proto kernel scope link src 192.168.1.1 default via aaa.aaa.aaa.89 dev eth0 ip route show table 4 aaa.aaa.aaa.88/29 dev eth0 proto kernel scope link src aaa.aaa.aaa.90 bbb.bbb.bbb.128/26 dev eth2 proto kernel scope link src bbb.bbb.bbb.137 192.168.0.0/16 dev br0 proto kernel scope link src 192.168.1.1 default via bbb.bbb.bbb.129 dev eth2 0: from all lookup 255 32765: from all fwmark 0x4 lookup 4 32766: from all lookup main 32767: from all lookup default 

И iptables:

  iptables -F iptables -t nat -F iptables -t mangle -F iptables -P INPUT DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p udp --sport 68 --dport 67 -m physdev --physdev-in tap1 -j DROP iptables -A INPUT -i eth1 -j ACCEPT iptables -A INPUT -i eth2 -j ACCEPT iptables -A INPUT -i br0 -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp --dport 22 -s 0/0 -j ACCEPT iptables -t mangle -A PREROUTING -p tcp --dport 22 -d bbb.bbb.bbb.137 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 25 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 80 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 8080 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 110 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 443 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t mangle -A PREROUTING -p tcp --dport 587 -s 192.168.0.0/16 -j MARK --set-mark 4 iptables -t nat -A PREROUTING -p tcp -d aaa.aaa.aaa.90 --dport 80 -j DNAT --to-destination 192.168.1.252:80 iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source aaa.aaa.aaa.90 iptables -t nat -A POSTROUTING -o eth2 -j SNAT --to-source bbb.bbb.bbb.137 iptables -t nat -A POSTROUTING -s 192.168.1.0/16 -j MASQUERADE 

Я не могу получить доступ к eth2 bbb.bbb.bbb.137: 22 извне, даже когда я слушаю все интерфейсы:

 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3111/sshd 

Кто-нибудь выдавал какую-либо нестабильность в работе с помощью fwmark iproute2? Eth2 провайдер намного быстрее, чем eth0, но используя eth2, я испытал некоторые киоски – например, были некоторые проблемы с провайдером, но нет проблем с провайдером интернет-услуг – проверено со вторым маршрутизатором одновременно? Может кто-нибудь, пожалуйста, укажите мне в правильном направлении. СПАСИБО