LinuxForum.Fans
Тема

2 провайдера, 1 из них через PPP: распределение загрузки и резервирова

Автор: alegzz 3 сообщений 957 просмотров
#194349

Всем привет!

Простите, если было, но в сети нашел только настройку с 2мя eth интерфейсами. Но с ppp не все так тривиально (на мой взгляд) и танцевать с бубном уже замучался.
Итак, дано:
1 провайдер основной, у которого весь трафик идет через ppp интерфейс (ppp0), на eth никаких настроек не нужно
2 провайдер: все через eth (eth2)
нужно:
распределить нагрузку между двумя провайдерами и в случае падения одного, гнать трафик через второго (даже локальный относительно первого).
выкурил много, но даже при лучших раскладах (отрубаем в настройках ppp defaultroute) трафик идет только через второго. при включении defaultroute соответственно только через первого.
за дельные советы буду благодарен, не дельные можно не давать

#194356

вот что получилось.
Скрипт, исполняемый при старте:

text
#!/bin/bash
ip rule add fwmark 10 lookup mn
ip rule add from $IP1 table mn

ip rule add fwmark 20 lookup 2kom ip rule add from $IP2 table 2kom

ip route add 127.0.0.0/8 dev lo table mn ip route add 127.0.0.0/8 dev lo table 2kom

ip route add 192.168.1.0/24 dev eth0 table mn ip route add 192.168.1.0/24 dev eth0 table 2kom

скрипт, исполняемый при старте и поднятии ppp:

text
#!/bin/bash
ip route flush table mn
ip route flush table 2kom

while read routes do ip route add $routes dev $IF1 src $IP1 table mn ip route add $routes dev $IF1 src $IP1 ip route add $routes dev $IF1 table 2kom done </etc/routes/mn

while read routes do ip route add $routes dev $IF2 src $IP2 table 2kom ip route add $routes dev $IF2 src $IP2 ip route add $routes dev $IF2 table mn done </etc/routes/2kom

ip route add default via $P1 table mn ip route add default via $P2 table 2kom

ip route add default scope global nexthop via $P1 dev $IF1 weight 1 nexthop via $P2 dev $IF2 weight 1

Войдите или зарегистрируйтесь, чтобы ответить.