Вечная проблема мелких офисов - в отсутствие нормального BGP, нет возможности понять, что провайдер лёг. Как определить, что "нет интернета"? Если определишь как определить покладание интернета, то дальше вопрос двустрочного шеллового скрипта по перекидыванию default gateway. У цисок это называется sla monitor.On 05/23/2014 05:34 PM, Andrey Tataranovich wrote:
Доброго времени суток всем,
Ситуация такая - маршрутизатор с тремя интерфейсами в интернет:
eth0 - provider1
ppp0 - provider2
ppp1 - provider3
На всех интерфейсах настроен policy routing через iproute2.
- через provider1 (eth0) маршрутизируется большинство хостов в сети;
- через provider2 (ppp0) маршрутизируются несколько определенных хостов
и весь траффик к определенной внешней сети x.x.x.x/28;
- provider3 используется как совсем запасной вариант, на случай отказа
двух предыдущих.
Сейчас все интерфейсы настроены как default, но с разными метриками.
eth0 - metric 0, ppp0 - metric 10, ppp1 - metric 20 - соответственно
пока жив интерфейс eth0, то весь трафик по-умолчанию идет через него,
если его опустить, то пойдет через ppp0 и т.д.
Теперь сама суть вопроса - eth0 никогда сам не "умрет" (в отличии от
ppp). На нем может потеряться связность со шлюзом провайдера или с
интернетом (при этом до шлюза провайдера трафик ходит).
Соответственно ищу инструмент, который сможет отслеживать наличие связи
с интернетом и переключать default route в соответствии с определенной
политикой.
Например:
Если нет выхода в интернет через provider1 в течении 5 минут, то убрать
default route с eth0 и продолжать следить за состоянием линка (при этом
траффик пойдет через ppp0). Если выход в интернет появился через
provider1 и стабилен в течении 5 минут, то вернуть default route с
нужной метрикой на eth0.
Аналогично для остальных линков.
ЗЫ Пинг на восьмёрки или на шлюз не очень хорошая идея (ложные срабатывания).Archive: [🔎] 537F5F02.20407@gmail.com" target="_blank">https://lists.debian.org/[🔎] 537F5F02.20407@gmail.com
--
To UNSUBSCRIBE, email to debian-russian-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org