Всем привет.
Система Gentoo.
Неработает распредиление траффика по 2-м каналам инета :(
Задача такова: есть 2 канала от разных провайдеров, один 256к
анлимный, а другой 512 по траффику. Нада распределить нагрузку таким
образом, чтоб все изначально ломились через анлимного провайдера, и
если канал забит, то ходили через канал по траффику. Я понемаю, что
идеально работать небудет, так как маршруты кешируются.
Делал все по этой доке: http://gazette.linux.ru.net/rus/articles/lartc/x348.html
IF1 - интерфейс на 1-го провайдэра
IF2 - интерфейс на 2-го провайдэра
IP1 - айпишник 1-го интерфейса
IP2 - айпишник 2-го интерфейса
P1 - шлюз 1-го провайдэра
P2 - шлюз 2-го провайдэра
P1_net - подсеть 1-го провайдэра
P2_net - подсеть 2-го провайдэра
IF_LOCAL - интерфейс смотрящий в локальную сеть 192.168.0.0/24
ip route del default 2>/dev/null
ip rule del from $IP1 2>/dev/null
ip rule del from $IP1 2>/dev/null
ip route add $P1_net dev $IF1 src $IP1 table T1 2>/dev/null
ip route add default via $P1 table T1 2>/dev/null
ip route add $P1_net dev $IF2 src $IP2 table T2 2>/dev/null
ip route add default via $P2 table T2 2>/dev/null
ip route add 192.168.0.0/24 dev $IF_LOCAL table T1 2>/dev/null
ip route add $P2 dev $IF2 table T1 2>/dev/null
ip route add 127.0.0.0/8 dev lo table T1 2>/dev/null
ip route add 192.168.0.0/24 dev $IF_LOCAL table T2 2>/dev/null
ip route add $P2 dev $IF2 table T2 2>/dev/null
ip route add 127.0.0.0/8 dev lo table T2 2>/dev/null
ip route add default equalize nexthop via $P2 dev $IF2 nexthop via $P1 dev $IF1
ip route flush cache
ip rule add from $IP1 table T1 2>/dev/null
ip rule add from $IP2 table T2 2>/dev/null
iptables -A POSTROUTING -t nat -o $IF1 -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j SNAT --to-source $IP1
iptables -A POSTROUTING -t nat -o $IF2 -s 192.168.0.0/24 -d ! 192.168.0.0/24 -j SNAT --to-source $IP2
Локально (с сервера) все прекрасно работает, а вот когда 30 компов
ломятся в инет через сервер, то траффик ходит только через одного провайдэра P1.
Хэлп плиз !