Virtual Router Redundancy Protocol¶
VRRP (Virtual Router Redundancy Protocol) — это сетевой протокол, предназначенный для обеспечения отказоустойчивости шлюза по умолчанию в локальных вычислительных сетях (LAN) путём объединения группы маршрутизаторов в один виртуальный маршрутизатор. Протокол описан в стандарте RFC 5798 (обновление RFC 3768) и позволяет нескольким физическим маршрутизаторам совместно использовать один виртуальный IP-адрес и виртуальный MAC-адрес, обеспечивая непрерывную маршрутизацию при отказе одного из устройств. VRRP является открытым стандартом, в отличие от проприетарного протокола HSRP (Hot Standby Router Protocol) компании Cisco Systems.
¶История
Протокол VRRP был разработан в 1997 году рабочей группой IETF (Internet Engineering Task Force) для устранения недостатков проприетарных решений, таких как HSRP. Первая версия спецификации была опубликована в RFC 2338 в апреле 1998 года. В 2004 году вышла обновлённая версия RFC 3768, которая уточнила механизмы работы и исправила ошибки. Современная версия, VRRPv3, описана в RFC 5798 (март 2010 года) и поддерживает как IPv4, так и IPv6 (ранее VRRPv2 был только для IPv4). В России протокол активно применяется в корпоративных и операторских сетях, а также в системах, требующих высокой доступности (High Availability).
¶Принцип работы
¶Архитектура
VRRP работает на основе модели «один активный, несколько резервных». Группа маршрутизаторов (VRRP-группа) объединяется под одним виртуальным IP-адресом (VIP) и виртуальным MAC-адресом (формата 00-00-5E-00-01-XX для IPv4, где XX — идентификатор группы). Один из маршрутизаторов выбирается мастером (Master), который обрабатывает весь трафик, направленный на VIP. Остальные маршрутизаторы находятся в состоянии резерва (Backup) и мониторят состояние мастера.
¶Выбор мастера
Выбор мастера осуществляется на основе приоритетов (priority), которые могут быть заданы вручную (от 1 до 254, значение 255 зарезервировано для владельца VIP). Маршрутизатор с наивысшим приоритетом становится мастером. Если приоритеты равны, мастером становится маршрутизатор с наибольшим IP-адресом в группе. Мастер периодически отправляет VRRP-анонсы (advertisements) с интервалом по умолчанию 1 секунда (настраивается). Если резервный маршрутизатор не получает анонсы в течение трёх интервалов (по умолчанию 3 секунды), он инициирует выборы нового мастера.
¶Состояния
Протокол определяет три основных состояния:
- Initial — начальное состояние при запуске или сбое.
- Master — активное состояние, маршрутизатор обрабатывает трафик и отправляет анонсы.
- Backup — резервное состояние, маршрутизатор ожидает анонсы и готов взять на себя роль мастера.
¶Виртуальный MAC-адрес
VRRP использует специальный виртуальный MAC-адрес для IPv4: 00-00-5E-00-01-{VRID}, где VRID — идентификатор VRRP-группы (от 1 до 255). Для IPv6 используется формат 00-00-5E-00-02-{VRID}. Этот адрес назначается мастеру, который отвечает на ARP-запросы (для IPv4) или NDP-запросы (для IPv6) для VIP. При смене мастера новый мастер начинает использовать тот же виртуальный MAC-адрес, что обеспечивает прозрачность для конечных устройств.
¶Классификация и версии
¶VRRPv2 (RFC 3768)
- Поддержка только IPv4.
- Максимальное количество групп — 255.
- Интервал анонсов по умолчанию — 1 секунда.
- Используется в большинстве современных сетей.
¶VRRPv3 (RFC 5798)
- Поддержка IPv4 и IPv6.
- Улучшенная поддержка IPv6 (использование link-local адресов).
- Возможность настройки интервала анонсов до 0.1 секунды (для быстрого переключения).
- Обратная совместимость с VRRPv2.
¶VRRP-E (Extreme Networks)
- Проприетарное расширение от Extreme Networks, использующее другой механизм выбора мастера (на основе IP-адреса, а не приоритета).
¶Устройство и характеристики
¶Параметры конфигурации
- VRID — идентификатор группы (1-255).
- VIP — виртуальный IP-адрес (должен принадлежать той же подсети, что и физические интерфейсы).
- Приоритет — от 1 до 254 (по умолчанию 100). Значение 255 автоматически назначается владельцу VIP (маршрутизатору, на котором настроен VIP как реальный адрес).
- Интервал анонсов — время между отправкой VRRP-пакетов (по умолчанию 1 секунда).
- Preempt — режим вытеснения: если включён, маршрутизатор с более высоким приоритетом может стать мастером даже при работающем мастере с меньшим приоритетом (по умолчанию включён).
- Authentication — в VRRPv2 поддерживается простая аутентификация (текстовый пароль), но она считается небезопасной и не рекомендуется к использованию. VRRPv3 аутентификацию не поддерживает.
¶Метрики производительности
- Время переключения (failover time) — зависит от интервала анонсов и количества пропущенных пакетов. При стандартных настройках (1 секунда, 3 пропуска) время переключения составляет около 3 секунд. При настройке интервала 0.1 секунды — около 0.3 секунды.
- Надёжность — протокол обеспечивает отказоустойчивость при отказе одного или нескольких маршрутизаторов в группе (при условии, что хотя бы один остаётся работоспособным).
¶Применение
¶Обеспечение отказоустойчивости шлюза
Основное применение VRRP — создание высокодоступного шлюза по умолчанию для конечных устройств (компьютеров, серверов, принтеров) в локальной сети. Вместо настройки статического шлюза на каждом устройстве используется VIP, который всегда доступен, даже при отказе одного из маршрутизаторов.
¶Балансировка нагрузки (с ограничениями)
Хотя VRRP сам по себе не поддерживает балансировку нагрузки, можно создать несколько VRRP-групп с разными VIP и распределить трафик между ними. Например, для IPv4 можно настроить две группы: одна с мастером на первом маршрутизаторе, другая — на втором. Это позволяет утилизировать оба устройства, но требует ручной настройки клиентов.
¶Интеграция с другими протоколами
VRRP часто используется совместно с:
- STP (Spanning Tree Protocol) — для отказоустойчивости на уровне L2.
- OSPF / BGP — для динамической маршрутизации.
- NAT (Network Address Translation) — для обеспечения отказоустойчивости NAT-шлюзов.
¶Примеры использования в России
- В корпоративных сетях крупных компаний (например, «Газпром», «Сбербанк») для обеспечения бесперебойной работы внутренних сервисов.
- В сетях операторов связи (например, «Ростелеком», «МТС») для резервирования пограничных маршрутизаторов.
- В государственных информационных системах (например, «Госуслуги», «ЕМИАС») для обеспечения высокой доступности.
¶Сравнение с альтернативами
¶HSRP (Hot Standby Router Protocol)
- Проприетарный протокол Cisco Systems.
- Использует виртуальный MAC-адрес 00-00-0C-07-AC-XX.
- Поддерживает до 16 групп (в зависимости от версии).
- Время переключения по умолчанию — 10 секунд (настраивается).
- В России HSRP распространён в сетях на оборудовании Cisco, но с учётом санкций и импортозамещения (например, использование оборудования «Эльбрус» или «Булат») VRRP становится предпочтительным.
¶GLBP (Gateway Load Balancing Protocol)
- Проприетарный протокол Cisco Systems, поддерживающий балансировку нагрузки между несколькими маршрутизаторами.
- Использует несколько виртуальных MAC-адресов.
- В России GLBP редко применяется из-за сложности и отсутствия поддержки в не-Cisco оборудовании.
¶CARP (Common Address Redundancy Protocol)
- Открытый протокол, разработанный как альтернатива VRRP (из-за патентных ограничений VRRP в некоторых странах).
- Используется в операционных системах на базе BSD (FreeBSD, OpenBSD).
- В России CARP применяется в основном в серверных решениях на FreeBSD.
¶Критика и ограничения
¶Патентные споры
В 1998 году компания Cisco Systems заявила о патентных правах на VRRP (патент US 5,473,599), что вызвало критику со стороны сообщества IETF. В результате VRRP был стандартизирован с оговорками, и в некоторых странах (например, в США) использование VRRP могло быть ограничено. В России патентные споры не имеют практического значения, так как протокол широко используется.
¶Безопасность
- VRRPv2 не поддерживает шифрование анонсов, что делает протокол уязвимым для атак типа «человек посередине» (MITM) и подмены мастера.
- Аутентификация VRRPv2 (текстовый пароль) считается небезопасной и не рекомендуется к использованию.
- VRRPv3 полностью отказался от аутентификации, полагаясь на меры безопасности на уровне L2 (например, VLAN, ACL).
¶Ограничения масштабирования
- Максимальное количество групп — 255, что может быть недостаточно для крупных сетей с тысячами VLAN.
- VRRP не поддерживает динамическое добавление/удаление участников группы без перерыва в работе.
¶Интересные факты
- VRRP является одним из немногих протоколов, который был стандартизирован, несмотря на патентные претензии Cisco.
- В некоторых реализациях (например, в Linux через Keepalived) VRRP используется для создания отказоустойчивых кластеров.
- В России VRRP часто применяется в системах «1С-Битрикс» и других веб-сервисах для обеспечения доступности.
- Протокол поддерживается практически всеми сетевыми вендорами: Cisco, Juniper, Huawei, MikroTik, D-Link, Zyxel и другими.
¶Источники
- RFC 5798 — Virtual Router Redundancy Protocol (VRRP) Version 3 for IPv4 and IPv6.
- RFC 3768 — Virtual Router Redundancy Protocol (VRRP) Version 2.
- RFC 2338 — Virtual Router Redundancy Protocol (VRRP).
- «Компьютерные сети. Принципы, технологии, протоколы» — В. Г. Олифер, Н. А. Олифер (издание 2020 года).
- «Сетевые протоколы. Теория и практика» — Д. В. Громов, А. В. Смирнов (издание 2019 года).
- Документация по VRRP от компании Cisco Systems (Cisco IOS Configuration Guide).
- Документация по VRRP от компании MikroTik (RouterOS Manual).
- Статья «VRRP: принципы работы и настройка» на портале Habr (habr.com, 2021 год).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


