Мы в своё время для исключения ложных срабатываний проверяли пингами по три
узла на каждом направлении. Если все три узла легли, значит инет на данном
направлении сдох.


23 мая 2014 г., 17:45 пользователь George Shuklin
<[email protected]>написал:

> 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.
>>
>> Аналогично для остальных линков.
>>
>>  Вечная проблема мелких офисов - в отсутствие нормального BGP, нет
> возможности понять, что провайдер лёг. Как определить, что "нет интернета"?
>  Если определишь как определить покладание интернета, то дальше вопрос
> двустрочного шеллового скрипта по перекидыванию default gateway. У цисок
> это называется sla monitor.
>
> ЗЫ Пинг на восьмёрки или на шлюз не очень хорошая идея (ложные
> срабатывания).
>
>
>
> --
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact
> [email protected]
> Archive: https://lists.debian.org/[email protected]
>
>


-- 
С уважением,
Виталий Поляков

Ответить