• Как балансировать трафик между двумя провайдерами в двух объединенных ЛВС?

    @res2001
    Developer, ex-admin
    В свое время делал нечто подобное используя в качестве роутера комп с FreeBSD. Настраивал тамошний фаервол ipfw, используя подход "policy routing" + множественные таблицы маршрутизации + statefull firewall.
    Обеспечивалось как балансировка, когда оба канала работали, так и отказоустойчивость - когда один из каналов затыкался, весь трафик переключался на оставшийся. Отказоустойчивость обеспечивалась дополнительным скриптом, который мониторил доступность канала и "выключал" в фаерволе одну из веток, при восстановлении канала выключенная ветка активировалась. Какой из маршрутов выбрать для конкретного исходящего пакета выбиралось случайным образом. Естественно, для TCP случайно выбирался маршрут только для первого пакета для установки соединения, остальные шли уже по сохраненному маршруту.
    Все это достаточно сложно реализовывалось и отлаживалось, времени ушло около месяца, при том, что я хорошо владел и FreeBSD и фаерволом, но делалось все на живой сети, это сильно замедляло процесс.

    В отличие от вашей конфигурации у меня оба канала в интернет приходили в один шлюз. Но это не принципиально. Разница лишь в том, что в вашей конфигурации вам придется подобным образом настраивать одновременно 2 шлюза.

    Если ваши фаерволы не поддерживают такой возможности из коробки, то скорее всего в текущей конфигурации это не возможно.
    Думаю, что на линуксе то же можно было бы что-то подобное соорудить, там по моему, есть все необходимые инструменты.
    Вариант с собственной AS возможен, но думаю, что он реалистичен только для крупных организаций. Я не изучал цену вопроса и пороги вхождения в обладатели AS.
    Ответ написан
    Комментировать