Повысить надежность соединения путем объединения шлюзов в отказоустойчивый кластер позволяет протокол VRRP. Поддержку протокола VRRP обеспечивает пакет keepalived.
Использование приведенных ниже команд позволяет настроить в качестве шлюза по умолчанию виртуальный маршрутизатор, состоящий из нескольких VRRP-маршрутизаторов (маршрутизаторов, на которых работает протокол VRRP), объединенных в группу и имеющих общий виртуальный IP-адрес (VIP) и общий идентификатор (VRID - Virtual Router Identifier). VRRP-маршрутизатор может находиться в нескольких виртуальных маршрутизаторах, каждый с уникальной комбинацией VRID/IP-адрес. Соответствия между VRID и IP-адресом должны быть одинаковыми на всех VRRP-маршрутизаторах в одной сети.
Один из группы VRRP-маршрутизаторов, в зависимости от установленного приоритета, всегда находится в состоянии master и отвечает за маршрутизацию трафика, он же является владельцем виртуального IP-адреса. Если маршрутизатор, находящийся в состоянии master становится недоступным (или его приоритет понизился), то его роль начинает выполнять один из резервных (backup) маршрутизаторов в группе с наивысшим приоритетом.
В режиме Global configuration применяются команды:
• vrrp ip route - задает маршрут по умолчанию с source-маршрутизацией;
• vrrp notify - запускает скрипт, соответствующий состоянию, в которое перешел VRRP-маршрутизатор.
Кроме приведенных выше команд, для работы с vrrp используются также команды настройки интерфейса, описанные в соответствующем разделе:
• vrrp VRID authentication - задает пароль для аутентификации пакетов протокола vrrp;
• vrrp VRID ip - настраивает IP-адрес виртуального маршрутизатора (кластерный адрес);
• vrrp VRID preempt - разрешает резервному VRRP-маршрутизатору переходить в состояние master, если его приоритет будет выше, чем у текущего master;
• vrrp VRID priority - устанавливает приоритет для VRRP-маршрутизатора;
• vrrp VRID sync-group - синхронизирует состояния VRRP-маршрутизатора в группе;
• vrrp VRID timers advertise - устанавливает интервал между отправкой VRRP-объявлений;
• vrrp VRID timers garp - устанавливает периодический интервал, с которым VRRP-маршрутизатор, находящийся в состоянии master отправляет gratuitous ARP-сообщения;
• vrrp VRID state - устанавливает начальное состояние VRRP-маршрутизатора;
• vrrp VRID track interface - проверяет состояние сетевого интерфейса;
• vrrp VRID track processes-group - отслеживает состояние групп процессов и меняет состояние VRRP-маршрутизатора в зависимости от статуса процессов.
При выходе из конфигурационного режима настройки VRRP прописываются в файл настройки keepalived - /etc/keepalived/keepalived.conf.
Некоторые настройки VRRP задаются в файле/opt/VPNagent/etc/cs_vrrp.ini. Формат файла описан в разделе «Приложение».