Несколько подключений к Интернету (Multi WAN)

В данной инструкций рассматривается:

  • Настройка переключения на резервные WAN-каналы при отказе основного канала
  • Балансировка трафика между WAN-каналами
_images/multiwan_scheme.png

Настройка переключения на резервные WAN-каналы при отказе основного канала

Функционал переключения на запасные каналы при отказе основного канала также известен как Connection Failover. Для его настройки необходимо выполнить следующие действия.


Настройка WAN-адаптеров

В нашем примере, устройство TING подключается к сети Интернет с помощью двух адаптеров - WAN и WAN2. Для адаптеров используются следующие настройки:

Имя адаптера IP-адрес адаптера IP-адрес шлюза, достижимого через адаптер
WAN 192.168.26.254 192.168.26.1
WAN2 192.168.27.254 192.168.27.1

Эти настройки нужно прописать в свойствах адаптеров в разделе Интерфейсы.

Настройки для адаптера WAN:

_images/iface_wan.png

Настройки для адаптера WAN2:

_images/iface_wan2.png


Настройка шлюзов

Пройдите в раздел Система -> Шлюзы -> Все. Модифицируйте имеющиеся записи о шлюзах следующим образом:

Запись GW_WAN:

     
Интерфейс WAN  
Шлюз по умолчанию Флаг установлен Данное подключение будет основным, другие будут резервными
Отключить мониторинг шлюзов Флаг не установлен Убедимся, что мониторинг включен
Мониторинговый IP-адрес 8.8.8.8 В качестве сервера для пропинговки мы используем один из DNS-серверов от Google
Пометить шлюз как недоступный Флаг не установлен  

Запись GW_WAN2:

     
Интерфейс WAN2  
Шлюз по умолчанию Флаг не установлен Данное подключение будет резервными
Отключить мониторинг шлюзов Флаг не установлен Убедимся, что мониторинг включен
Мониторинговый IP-адрес 8.8.4.4 В качестве сервера для пропинговки мы используем один из DNS-серверов от Google
Пометить шлюз как недоступный Флаг не установлен  

После осуществления настроек, мы имеем две записи о шлюзах, которые выглядят следующим образом:

_images/system_routes_all_configured.png

Расширенные настройки шлюзов

Для каждого шлюза могут быть настроены расширенные опции, которые меняют дефолтное поведение / пороги значений, например:

   
Пороговое значение задержки Наименьшее и наибольшее пороговые значения для задержки в миллисекундах.
Пороговые значения потери пакетов Наименьшее и наибольшее пороговые значения для потери пакетов в процентах.
Интервал опроса Как часто посылается мониторинговые пакеты в секундах
Недоступен Период времени в секундах после неудачного ICMP-запроса, по истечении которого шлюз считается недоступным
Средняя задержка Количество ответных пакетов, используемых для вычисления среднего значения задержки.
Среднее количество потеряных пакетов Количество мониориговых пакетов для вычисления среднего значения потерянных пакетов.
Задержка утраченного опроса Задержка после которой вычисляется потеря пакетов.


Настройка шлюзовой группы

Пройдите в раздел Система -> Шлюзы -> Группа и кликните на кнопку Добавить группу в верхнем правом углу страницы. Используйте следующие настройки:

_images/gateway_group.png

Кликните на кнопку Применить изменения.

Мы использовали потерю пакетов в качестве тригера для переключения на резервный интерфейс. Можно использовать и другие настройки:

   
Участник недоступен Срабатывает при 100% потере пакетов.
Потеря пакетов Срабатывает, когда потеря пакетов превышает установленное пороговое значение.
Большая задержка Срабатывает, когда задержка превышает установленное пороговое значение.
Потеря пакетов и высокая задержка Срабатывает, когда потеря пакетов превышает установленное пороговое значение или когда задержка превышает установленное пороговое значение.


Настройка межсетевого экрана

Для правильной работы межсетевого экрана необходимо модифицировать его настройки следующим образом.

Пройдите в раздел Межсетевой экран -> Правила, вкладка LAN.

Найдите преднастроенное правило Default allow LAN to any rule, откройте его на редактирование и в поле Шлюз укажите ранее созданную шлюзовую группу (в нашем примере, она называется GWGRP).

_images/gateway_option.png

Создайте правило Allow LAN to gateway rule со следующими настройками:

Действие Разрешение
Интерфейс LAN
Версия TCP/IP IPv4
Протокол Любой
Отправитель LAN сеть
Диапазон портов источника Любой - любой
Получатель LAN адрес
Диапазон портов назначения Любой - любой
Шлюз По умолчанию
Описание Allow LAN to gateway rule

Разместите правило Allow LAN to gateway rule выше в списке, чем правило Default allow LAN to any rule.

После осуществления манипуляций с правилами, список должен выглядеть аналогично тому, что указано на скриншоте:

_images/firewall_rules.png


Настройка DNS

Сделаем так, чтобы каждый из известных системе DNS-серверов был доступен через разные вышестоящие шлюзы.

Для этого, пройдите в раздел Система -> Настройки -> Общие настройки и осуществите настройки в соответствии со скриншотом:

_images/dns_settings.png


Настройка функционала Connection Failover завершена

Мы настроили два канала подключения к Интернету. Каждый из каналов представлен своим WAN-адаптером, использует собственный вышестоящий шлюз, и свой IP-адрес для мониторинга работоспособности. Работоспособность каждого канала измеряется благодаря отправке мониторинговых ICMP-запросов.

Первый канал представлен адаптером WAN, использует шлюз 192.168.26.1 и мониторинговый IP-адрес 8.8.8.8. Первый канал является основным.

Второй канал представлен адаптером WAN2, использует шлюз 192.168.27.1 и мониторинговый IP-адрес 8.8.4.4. Второй канал является резервным. Переключение на второй канал произойдет, если первый канал окажется неработоспособным.

Балансировка трафика между WAN-каналами

Симметричная балансировка

Для настройки симметричной балансировки нагрузки между Интернет-каналами, выберите одинаковый ранг для обоих шлюзов в настройках шлюзовой группы.

Пройдите в раздел Система -> Шлюзы -> Группа, выберите ранее созданную группу GWGRP и модифицируйте ее настройки следующим образом:

_images/gateway_group_symmetric_balancing.png

В результате, поведение изменится с переключения при отказе на симметричное балансировку трафика между выбранными шлюзами. При этом, осуществляется балансировка на уровне соединений по циклическому алгоритму (round robin).



Асимметричная балансировка

Если у вас имеется два Интернет-канала, и один канал имеет большую пропускную способность чем другой, то можно установить настройки веса для каждого шлюза, и добиться тем самым ассиметричной балансировки нагрузки.

Допустим, шлюз GW_WAN доступен по каналу с пропускной способностью 10 Мбит/c, шлюз GW_WAN2 - по каналу с пропускной способностью 20 Мбит/c. Задайте вес первого шлюза как 1 и второго – как 2.

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

Далее, пройдите в раздел Система -> Шлюзы -> Все, и модифицируйте каждую из двух шлюзовых записей следующим образом:

Для шлюза GW_WAN:

_images/gwwan_weight.png

Для шлюза GW_WAN2:

_images/gwwan2_weight.png

Как результат, через второй шлюз будет маршрутизироваться вдвое больше подключений чем через первый шлюз.



Sticky соединения

На устройстве TING, в абсолютном большинстве случаев, настраивается механизм NAT. В зависимости от того, по какому каналу будет отправляться пакет, в нем будет прописываться соответствующий адрес WAN-адаптера (в нашем примере, это адрес 192.168.26.254 или адрес 192.168.27.254). Это значит, что может случиться ситуация, когда соединения от одного и того же компьютера во внутренней сети, будут восприниматься некоторым хостом в Интернете, как исходящие от разных IP-адресов. Некоторые веб-сайты ожидают того, что в течении сессии все запросы должны исходить от одного и того же IP-адреса. Доступ к таким веб-сайтам через устройство TING может работать некорректно, если включен функционал балансировки.

Для решения данной проблемы можно включить механизм т.н. фиксированных соединений. Пройдите в раздел Межсетевой экран -> Настройки -> Дополнительно и установите флаг Использовать фиксированные соединения.

Настройка балансировка трафика между WAN-каналами завершена!