Найти в Дзене

Резервирование каналов на Mikrotik

Попробуем накидать шпаргалку по настройке резервирования каналов. Как-то так сложилось, что задач балансировки подключений к интернету возникало нечасто, а вот резервирования – на каждом шагу. Точнее, требовалось “чтобы всё работало” и при этом ширины основного провайдера вполне хватало на нужды выхода в интернет. Кроме того, при использовании балансировки регулярно возникают сложности с тем, что запросы наружу почему-то прилетают с разных адресов. Почему – непонятно (#сарказм). Стало быть, будем делать всё же failover, а не balancing. Вкратце, решение следующее – делаем два маршрута в 0.0.0.0 с разным весом. Для основного провайдера поменьше, для резервного побольше. Причем оба маршрута делаем рекурсивными через любые разные высокодоступные адреса в интернете. Ну а чтобы корректно отвечать с того интерфейса, куда прилетел запрос извне, маркируем траффик и разводим его по разным таблицам – суп отдельно, мухи отдельно. Существует вариант со скриптами, но мне нравится он куда меньше, по

Попробуем накидать шпаргалку по настройке резервирования каналов.

Как-то так сложилось, что задач балансировки подключений к интернету возникало нечасто, а вот резервирования – на каждом шагу. Точнее, требовалось “чтобы всё работало” и при этом ширины основного провайдера вполне хватало на нужды выхода в интернет. Кроме того, при использовании балансировки регулярно возникают сложности с тем, что запросы наружу почему-то прилетают с разных адресов. Почему – непонятно (#сарказм). Стало быть, будем делать всё же failover, а не balancing.

Вкратце, решение следующее – делаем два маршрута в 0.0.0.0 с разным весом. Для основного провайдера поменьше, для резервного побольше. Причем оба маршрута делаем рекурсивными через любые разные высокодоступные адреса в интернете. Ну а чтобы корректно отвечать с того интерфейса, куда прилетел запрос извне, маркируем траффик и разводим его по разным таблицам – суп отдельно, мухи отдельно. Существует вариант со скриптами, но мне нравится он куда меньше, поскольку работает нестабильно из моего опыта.

Подробнее? Сейчас всё расскажу. Для начала, разумеется, надо настроить адреса на интерфейсах, которые будут смотреть наружу. Если настройки вы получаете исключительно по DHCP, то не забываем отключить параметр “Add default route”. Хотя я в этом случае поискал бы провайдера, который способен выдать статичный адрес и создавать мне лишних проблем. Да, я знаю про всякие PPPoE, но на дворе 21 век и найти внятного провайдера всё проще. Плюс в базовую настройку я бы добавил мысль объединить WAN-интерфейсы в группу. Как минимум, это упрощает правило NAT. Как максимум – уменьшает общее число правил в файрволе, что в свою очередь ускоряет работу железки.

Далее, нужно настроить маркировку траффика. Это гарантирует, что роутер будет отвечать с того интерфейса, на который пришел запрос. Если мы просто выходим в интернет, это быть может неактуально. А вот если есть какие-то сервисы внутри сети или мы поднимаем туннели, не стОит вводить в заблуждение удаленный роутер отправляя пакеты откуда придётся. Итак, заходим в раздел IP -> Firewall -> Mangle и создаем правила следующего содержания для каждого из провайдеров:

Маркируем входящий трафик

-2

Направляем ответный транзитный трафик в нужную таблицу маршрутизации

-3

Отправляем ответный локальный трафик в нужную таблицу маршрутизации

-4

Осталось настроить таблицу маршрутизации. Для начала требуется добавить маршруты до высокодоступных серверов вне нашей сети. Например, DNS’ы Google или же любые другие. Главное, чтобы они были доступны чуть более, чем всегда и не принадлежали нашей сети. Кроме того, нужно проверить, что значение Scope равно 10, вместо 30 по умолчанию. Так мы говорим, что это типа Connected Route и приоритет у него повыше.

-5

Добавим рекурсивный маршрут наружу с разным весом

-6

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

-7

Микротик сам разберется с рекурсивными маршрутами и сделает соответствующие пометки. У меня эта схема успешно работала и работает. Переключение, конечно, происходит не мгновенно, но достаточно быстро. Для опубликованных сервисов рекомендую ознакомиться со статьей на эту тему.