6.2.5 Virtual Router Redundancy Protocol (VRRP)

6. High Availability

6.2 Обзор и настройка методов обеспечения высокой доступности

6.2.5 Virtual Router Redundancy Protocol (VRRP)

Virtual Router Redundancy Protocol (VRRP) — стандартизированный протокол, с помощью которого можно повысить отказоустойчивость в сети исключением единой точки отказа. Суть — выбирается один из задействованных в VRRP маршрутизатор в качестве шлюза по-умолчанию, а остальные задействованные в VRRP маршрутизаторы являются запасными (backup). Все взаимодействия между VRRP маршрутизаторами осуществляются через коммутатор, к которому они подключены. Протокол VRRP по принципу действия очень похож на протокол Hot Standby Router Protocol (HSRP), созданный компанией Cisco. VRRP описан в RFC 2338.6-2-5-1


Основные определения

  • Маршрутизатор VRRP — любой маршрутизатор (master, backup), задействованный в VRRP.
  • Master VRRP router — маршрутизатор VRRP, который выполняет пересылку трафика в текущем LAN-сегменте; отвечает на ARP-запросы для анонса виртуального маршрутизатора
  • Backup Router — маршрутизатор VRRP, готовый занять место master‘а при выходе его из строя (может быть несколько Backup Router’ов)
  • Virtual Router — виртуальная единица, выступающая в качестве шлюза по-умолчаню. Состоит из Virtual Router ID и IP-адреса, используемого в качестве адреса шлюза по-умолчанию

Как это работает. С точки зрения конечного пользователя существует один единый шлюз по-умолчанию. Этот шлюз по-умолчанию является виртуальным устройством — виртуальный маршрутизатор (Virtual Router). Этот Virtual Router имеет virtual router identifier (VRID) и virtual IP (VIP) адрес. VRID однозначно идентифицирует один из нескольких виртуальных маршрутизаторов. VIP присваивается VRRP-маршрутизатору, который выполняет роль master’а.


Принцип работы VRRP

1). Выбор Master VRRP router происходит на основании приоритета (от 1 до 255, по-умолчанию 100), и маршрутизатор с наивысшим приоритетом станет «мастером». Если Master VRRP router станет недоступен, то его место займёт Backup Router с наивысшим приоритетом. Если в последствии Master VRRP router «очухается», то он займёт своё прежнее место (preempting включен по-умолчанию).

2). Взаимодействия между маршрутизаторами в VRRP версии 2 осуществляются с помощью обмена пакетами, которые отправляются каждую секунду (можно поменять от 1 до 255 сек), между VRRP-маршрутизаторами. Если необходима более частая отправка пакетов, то используем опцию «fast-interval«, которая позволяет задать интервал от 100 до 999 миллисекунд (все участвующие в VRRP маршрутизаторы должны поддерживать эту опцию). Пакеты используются для передачи приоритета маршрутизатора в VRRP и деталей о состоянии master-маршрутизатора. Пакеты инкапсулируются в IP пакеты и отправляются на multicast-адрес 224.0.0.18. Пакеты имеют TTL = 255 (значение нельзя поменять и пакеты с другим TTL будут отброшены), и не могут быть отправлены за пределы подсети, в которой были созданы. Параметры, передаваемые в VRRP-сообщениях должны совпадать на маршрутизаторах VRRP-группы.

3). При отправке клиентом ARP-запроса на разрешение IP-адреса VIP в MAC-адрес, master-маршрутизатор отвечает виртуальным MAC-адресом, назначенным для виртуального маршрутизатора или группы. Виртуальный MAC-адрес использует формат 00-00-5E-00-01-VRID, т.е. использует либо VRID, либо номер группы.
Когда VRRP-маршрутизатор отправляет VRRP-пакет, он использует виртуальный MAC-адрес в качестве MAC-адреса источника.


Состояния в VRRP

  • Initialize — маршрутизатор согласовывает роли и параметры в VRRP, маршрутизаторы не выполняют пересылку трафика
  • Mastermaster-маршрутизатор выбран на основании наивысшего приоритета, остальные VRRP-маршрутизаторы принимают роль backupMaster-маршрутизатор отвечает на ARP-запросы, посланные клиентскими компьютерами на VIP и пересылает пользовательский трафик. Master-маршрутизатор отправляет периодические анонсы всем маршрутизаторам в пределах VRRP-группы, в которых содержатся данные о состоянии и приоритете master-маршрутизатора. Если в течение определённого интервала времени эти анонсы поступать не будут, то backup-маршрутизатор с наибольшим значением приоритета займёт роль master-маршрутизатора. Также следует учесть, что при появлении в VRRP-группе нового маршрутизатора с приоритетом выше, чем у текущего master-маршрутизатора, то этот новый маршрутизатор займёт роль master-маршрутизатора. Так будет до тех пор, пока административно не отключить preempting
  • Backup — маршрутизаторы в этом состоянии отслеживают состояние master-маршрутизатора с целью занять его место при выходе его из строя
  • Transition — кратковременное состояние перехода маршрутизатора из состояния Master в состояние Backup или обратно; трафик в этом состоянии не пересылается.

Настройка VRRP

6-2-5-2

На основании конфигурации, R1 станет VRRP Master-маршрутизатором (у него выше приоритет).

Для балансировки нагрузки необходимо настроить несколько VRRP-групп с разными VIP-адресами для каждой группы. Также необходимо настроить один маршрутизатор Master-маршрутизатором для одной группы, а другой маршрутизатор — Master-маршрутизатором для другой группы. Такая настройка подразумевает создание 2-ух шлюзов по-умолчанию для одной подсети. Далее на конечных устройствах необходимо настроить один из 2-ух шлюзов по-умолчанию (VIP адрес одной из VRRP группы).

Дополнительные настройки VRRP включают в себя следующие опции:

  • track — отслеживает состояние интерфейса (track interface) (обычно WAN-интерфейса) или маршрута (track route), и при выходе их «из строя» уменьшает приоритет маршрутизатора для VRRP-группы до настроенного администратором значения, т.о. позволяя инициировать перевыбор Master-маршрутизатора
  • accept-data — позволяет Master-маршрутизатору отвечать на ICMP-запросы, отправленные на VIP-адрес, даже если этот Master-маршрутизатор не «владеет»  VIP-адресом (по-умолчанию не отвечает), однако идёт вразрез с RFC 2338.
  • authentication-type и authentication-key — задействует аутентификацию сообщений между VRRP-маршрутизаторами в одной группе. Аутентификация может быть: выключена, простая, MD5 и должна совпадать на всех маршрутизаторах в пределах VRRP-группы.
  • no-preempt — по-умолчанию, маршрутизатор на наибольшим VRRP приоритетом занимает место master‘а даже, если это роль уже принадлежит другому маршрутизатору. Команда задаётся для того, чтобы роль master‘а занимал маршрутизатор с наивысшим только, если текущий master становится недоступным.

Вышеописанные опции настраиваются в «секции» конфигурирования интерфейса:
[edit interfaces ge-x/x/x unit 0 family inet address X.X.X.X/X vrrp-group Y]

С помощью команды vrrp-inheret-from можно наследовать настройки из одной VRRP-группы в другую, когда на интерфейсе настроено несколько VRRP-групп, а также позволяет уменьшить кол-во трафика, проходящего через этот интерфейс. Только активная группа обменивается VRRP-сообщениями, а наследуемые группы только наследуют состояние, ассоциированное с активной группой.


Проверка VRRP

Основной командой для проверки VRRP является show vrrp с дополнительными опциями:

6-2-5-3

К оглавлению

Добавить комментарий