VRRP

VRRP

VRRP (Virtual Router Redundancy Protocol) — сетевой протокол, предназначенный для увеличения доступности маршрутизаторов выполняющих роль шлюза по умолчанию. Это достигается путём объединения группы маршрутизаторов в один виртуальный маршрутизатор и назначения им общего IP-адреса, который и будет использоваться как шлюз по умолчанию для компьютеров в сети.

Содержание

Терминология протокола

  • VRRP-маршрутизатор (VRRP Router) — маршрутизатор, на котором работает протокол VRRP. Он может участвовать в одном или более виртуальных маршрутизаторах.
  • Виртуальный маршрутизатор (Virtual Router, VR) — абстрактный объект, которым управляет VRRP. Выполняет роль маршрутизатора по умолчанию для компьютеров в сети. Фактически, виртуальный маршрутизатор — это группа интерфейсов маршрутизаторов, которые находятся в одной сети и разделяют Virtual Router Identifier (VRID) и виртуальный IP-адрес.
  • Владелец IP-адреса (IP Address Owner) — VRRP-маршрутизатор, который использует IP-адрес, назначенный виртуальному маршрутизатору, как реальный IP-адрес присвоенный интерфейсу.
  • VRRP-объявление (ADVERTISEMENT) — сообщения, которые отправляет Master-маршрутизатор.
  • Виртуальный IP-адрес (Virtual IP address) — это IP-адрес присвоенный интерфейсу одному из маршрутизаторов, которые составляют Virtual Router. Используется также название — основной IP-адрес (Primary IP Address). В VRRP-объявлениях в качестве адреса отправителя всегда используется виртуальный IP-адрес.
  • Virtual Router Master или VRRP Master router — VRRP-маршрутизатор, который отвечает за отправку пакетов, отправленных на IP-адрес, который ассоциирован с виртуальным маршрутизатором и за ответы на ARP-запросы отправленные на этот адрес. Если владелец IP-адреса доступен, то он всегда становится Master.
  • Virtual Router Backup или VRRP Backup router — это группа маршрутизаторов, которые находятся в режиме ожидания и готовы взять на себя роль VRRP Master router, как только текущий VRRP Master router станет недоступным.
  • Виртуальный MAC-адрес (Virtual MAC) — 0000:5E00:01xx, где xx — номер группы VRRP.

Описание протокола

Протокол VRRP предназначен для увеличения доступности маршрутизаторов выполняющих роль шлюза по умолчанию.

Для группы маршрутизаторов настраивается их принадлежность виртуальному маршрутизатору. Фактически, виртуальный маршрутизатор — это группа интерфейсов маршрутизаторов, которые находятся в одной сети и разделяют Virtual Router Identifier (VRID) и виртуальный IP-адрес.

VRRP-маршрутизатор может находиться в нескольких виртуальных маршрутизаторах, каждый с уникальной комбинацией VRID/IP-адрес. Соответствия между VRID и IP-адресом должны быть одинаковыми на всех маршрутизаторах в одной сети.

В любой момент времени только один из физических маршрутизаторов выполняет маршрутизацию трафика, то есть, становится VRRP Master router, остальные маршрутизаторы в группе становятся VRRP Backup router. Если текущий VRRP Master router становится недоступным, то его роль берет на себя один из VRRP Backup маршрутизаторов, тот у которого наивысший приоритет. Задание приоритета позволяет определить более приоритетные пути административно.

Backup-маршрутизатор не будет пытаться перехватить на себя роль Master-маршрутизатора, если только у него не более высокий приоритет, чем у текущего Master-маршрутизатора. VRRP позволяет административно запретить перехват роли Master-маршрутизатора. Единственное исключение из этого правила — VRRP-маршрутизатор всегда будет становиться Master, если он владелец IP-адреса, который присвоен виртуальному маршрутизатору.

В каждом виртуальном маршрутизаторе только Master отправляет периодические VRRP-объявления на зарезервированный групповой адрес 224.0.0.18. На канальном уровне в качестве MAC-адреса отправителя VRRP-объявлений используется виртуальный MAC-адрес.

Примеры использования

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

Два маршрутизатора, R1 и R2, находятся в одном широковещательном сегменте и на интерфейсах, которые смотрят в локальную сеть, назначены IP-адреса, соответственно 10.0.1.1 и 10.0.1.2. Компьютеры в сети используют в качестве шлюза по умолчанию R1 (обозначен DG на рисунке).

Должен быть определен виртуальный маршрутизатор, который поставит в соответствие уникальному идентификатору (VRID) IP-адрес, для которого один из маршрутизаторов является владельцем. R1 владелец IP-адреса 10.0.1.1, а R2 владелец IP-адреса 10.0.1.2. Для примера определен виртуальный маршрутизатор, для которого VRID = 1, а IP-адрес 10.0.1.1. После включения VRRP на маршрутизаторе R1 для VRID = 1, он берет на себя роль Master. Для него приоритет устанавливается равным 255, так как он является владельцем IP-адреса виртуального маршрутизатора. После включения VRRP на маршрутизаторе R2 для VRID = 1, он становится Backup-маршрутизатором. Для него приоритет устанавливается равным 100, так как он не является владельцем IP-адреса виртуального маршрутизатора.

При таких настройках, если маршрутизатор R1 доступен, все компьютеры передают трафик через R1 (обозначено стрелками на рисунке). Если R1 по каким-либо причинам выходит из строя, то VRRP переводит R2 в роль Master. После этого R2 отвечает за передачу трафика, который отправлен на IP-адрес виртуального маршрутизатора.

В первом примере IP-адрес не резервируется и используется только R2, как IP-адрес интерфейса. Следующий пример показывает как выполнить резервирование и IP-адреса R2.

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

Половина компьютеров использует в качестве шлюза по умолчанию R1, вторая половина — R2. Настройки виртуального маршрутизатора с VRID = 1 остаются точно такими же как в первом примере. Добавляется второй виртуальный маршрутизатор с VRID = 2 и IP-адресом 10.0.1.2. Для этого виртуального маршрутизатора R2 будет выполнять роль Master, а R1 — Backup.

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

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

Как правило, IP-адреса компьютерам назначаются с помощью протокола DHCP. Во втором примере DHCP-сервер должен выдавать половине компьютеров в подсети IP-адрес маршрутизатора по умолчанию 10.0.1.1, а другой половине компьютеров — 10.0.1.2. Это можно реализовать с помощью опции 82 DHCP. Идея заключается в том чтобы выдавать компьютерам, которые подключены к разным коммутаторам, разные значения IP-адреса шлюза по умолчанию.

Формат пакета VRRP

VRRP-пакеты передаются для того, чтобы передать всем VRRP-маршрутизаторам информацию о состоянии и приоритете Master-маршрутизатора, который ассоциирован с VRID.

VRRP-пакеты инкапсулируются в IP-пакеты и отправляются на адрес групповой рассылки, который зарезервирован для VRRP.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Version| Type  | Virtual Rtr ID|   Priority    | Count IP Addrs|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Auth Type   |   Adver Int   |          Checksum             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         IP Address (1)                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                            .                                  |
   |                            .                                  |
   |                            .                                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         IP Address (n)                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Authentication Data (1)                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Authentication Data (2)                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Поля пакета:

  • Version — версия протокола. Текущая версия — 2.
  • Type — тип VRRP-пакета:
    • Пакеты с неизвестным типом пакета должны отбрасываться,
    • Единственный тип пакета, который определен в текущей версии протокола: 1 — ADVERTISEMENT,
  • Virtual Rtr ID (VRID) — идентифицирует виртуальный маршрутизатор, о статусе которого передается информация:
    • Диапазон значений от 1 до 255,
  • Priority — указывает приоритет VRRP-маршрутизатора, который отправляет пакет. Чем выше значение поля, тем более высокий приоритет:
    • Приоритет маршрутизатора, который является владельцем IP-адреса (или адресов) должен быть равен 255,
    • У остальных маршрутизаторов значение приоритета должно быть в диапазоне от 1 до 254. По умолчанию используется приоритет 100,
    • Значение приоритета равное 0 имеет специальное назначение — указывает, что текущий Master перестал участвовать в работе VRRP. Это используется для того чтобы быстрее перевести Backup-маршрутизаторы в роль Master, не дожидаясь окончания таймера,
  • Count IP Addrs — количество IP-адресов, которые содержатся в данном VRRP-объявлении
  • Authentication Type — используемый тип аутентификации:
    • Должен быть уникальным для виртуального маршрутизатора,
    • Пакет, тип аутентификации которого не совпадает с локально настроенным типом аутентификации, или у которого указан неизвестный тип аутентификации, должен быть отброшен,
    • Определены такие типы аутентификации:
      • 0 - No Authentication — аутентификация не используется. В поле Authentication Data передаются 0,
      • 1 - Reserved — зарезервированное значение, которое используется для совместимости с RFC 2338,
      • 2 - Reserved — зарезервированное значение, которое используется для совместимости с RFC 2338,
  • Advertisement Interval (Adver Int) — интервал (в секундах) между отправкой VRRP-объявлений. По умолчанию равен 1 секунде;
  • Checksum — контрольная сумма VRRP-пакета;
  • IP Address(es) — один или более IP-адресов, которые ассоциированы с виртуальным маршрутизатором;
  • Authentication Data — поле используется для совместимости с RFC 2338. Должно быть установлено равным 0 и игнорироваться при получении.

Поля IP-пакета

Так как VRRP-пакеты инкапсулируются в IP-пакеты, ниже описаны значения некоторых полей IP-пакета:

  • IP-адрес отправителя — основной IP-адрес интерфейса с которого отправляется пакет;
  • IP-адрес получателя — групповой адрес 224.0.0.18. Так как это адрес из диапазона link local scope, то маршрутизаторы не передают пакет с таким адресом получателя, независимо от значения TTL;
  • TTL — устанавливается равным 255. VRRP-маршрутизатор, получивший пакет с другим значением поля TTL, должен отбросить пакет;
  • Протокол — протоколу VRRP присвоен номер 112.

Параметры виртуального маршрутизатора

Параметры виртуального маршрутизатора:

  • Идентификатор виртуального маршрутизатора (VRID) — настраиваемое значение в диапазоне от 1 до 255. Нет значения по умолчанию
  • Приоритет — значение приоритета, которое будет использоваться этим VRRP-маршрутизатором в выборах Master для этого виртуального маршрутизатора:
    • Значение 255 зарезервировано для маршрутизатора, который является владельцем IP-адреса ассоциированного с виртуальным маршрутизатором
    • Значение 0 зарезервировано для Master-маршрутизатора, to indicate it is releasing responsibility for the virtual router
    • Диапазон значений 1-254 доступен для Backup-маршрутизаторов. По умолчанию используется приоритет 100
  • IP-адрес — один или более IP-адресов присвоенные виртуальному маршрутизатору. Нет значения по умолчанию
  • Advertisement_Interval — временной интервал между отправкой объявлений. По умолчанию 1 секунда
  • Skew Time — время (в секундах), которое используется для отклонения Master Down Interval.
    Высчитывается по формуле: ( (256 - Priority) / 256 )
  • Master Down Interval — временной интервал после которого Backup Router станет Master Router.
    Высчитывается по формуле: (3 * Advertisement Interval) + Skew time
  • Режим preempt — контролирует то будет ли Backup-маршрутизатор с более высоким приоритетом пытаться перехватить на себя роль Master у текущего Master-маршрутизатора с более низким приоритетом.
    • Исключение из этого правила — VRRP-маршрутизатор всегда будет становиться Master, если он владелец IP-адреса, который присвоен виртуальному маршрутизатору независимо от этого флага.
    • Возможные значения режима preempt:
      • True (значение по умолчанию) — разрешить перехватывать роль Master
      • False — запретить перехватывать роль Master
  • Тип аутентификации
  • Данные аутентификации

Таймеры VRRP

  • Adver Timer — таймер, который срабатывает для инициации отправки VRRP-объявлений на основании Advertisement Interval
  • Master Down Timer — таймер, который срабатывает когда VRRP-объявление не приходило в течение Master Down Interval

Описание состояний маршрутизаторов

Возможные состояния:

  • Initialize (инициализации)
  • Backup (резервный)
  • Master (основной)


Диаграмма перехода между состояниями:


Initialize

Цель состояния Initialize — ожидание начала работы (Startup event).

Если VRRP включен на маршрутизаторе, то:

  • Если приоритет равен 255 (маршрутизатор является владельцем IP-адреса присвоенного виртуальному маршрутизатору):
    • Послать VRRP-объявление
    • Отправить gratuitous ARP-запрос содержащий MAC-адрес виртуального маршрутизатора для каждого IP-адреса ассоциированного с виртуальным маршрутизатором
    • Установить Adver Timer равным Advertisement Interval
    • Перейти в состояние Master
  • иначе:
    • Установить Master Down Timer равным Master Down Interval
    • Перейти в состояние Backup

Backup

Цель состояния Backup — мониторинг доступности и состояния Master-маршрутизатора.

Когда VRRP-маршрутизатор находится в этом состоянии он должен делать следующее:

  • Не должен отвечать на ARP-запросы на IP-адрес ассоциированный с виртуальным маршрутизатором
  • Должен отбрасывать пакеты с MAC-адресом получателя равным MAC-адресу виртуального маршрутизатора
  • Не должен принимать пакеты отправленные на IP-адрес ассоциированный с виртуальным маршрутизатором
  • Если на маршрутизаторе отключается VRRP (Shutdown event), то:
    • Отменить Master Down Timer
    • Перейти в состояние Initialize
  • Если срабатывает таймер Master Down Timer, то:
    • Послать VRRP-объявление
    • Отправить gratuitous ARP-запрос содержащий MAC-адрес виртуального маршрутизатора для каждого IP-адреса ассоциированного с виртуальным маршрутизатором
    • Установить Adver Timer равным Advertisement Interval
    • Перейти в состояние Master
  • Если получено VRRP-объявление, то:
    • Если приоритет в VRRP-объявлении установлен равным 0, то:
      • Установить Master Down Timer равным Skew Time
    • иначе:
      • Если значение Preempt режима False или, если приоритет в полученном VRRP-объявлении больше или равен локальному приоритету, то:
        • Сбросить Master Down Timer в значение равное Master Down Interval
      • иначе:
        • Отбросить VRRP-объявление

Master

В состоянии Master маршрутизатор отвечает за отправку пакетов отправленных на IP-адрес ассоциированный с виртуальным маршрутизатором.

Когда VRRP-маршрутизатор находится в этом состоянии он должен делать следующее:

  • Должен отвечать на ARP-запросы на IP-адрес ассоциированный с виртуальным маршрутизатором
  • Должен обрабатывать пакеты с MAC-адресом получателя равным MAC-адресу виртуального маршрутизатора
  • Не должен принимать пакеты отправленные на IP-адрес ассоциированный с виртуальным маршрутизатором, если он не является владельцем IP-адреса
  • Должен принимать пакеты отправленные на IP-адрес ассоциированный с виртуальным маршрутизатором, если он является владельцем IP-адреса
  • Если на маршрутизаторе отключается VRRP (Shutdown event), то:
    • Отменить Adver Timer
    • Отправить VRRP-объявление с приоритетом равным 0
    • Перейти в состояние Initialize
  • Если срабатывает Adver Timer, то
    • Послать VRRP-объявление
    • Сбросить Adver Timer в значение равное Advertisement Interval
  • Если получено VRRP-объявление, то:
    • Если приоритет в VRRP-объявлении установлен равным 0, то:
      • Послать VRRP-объявление
      • Сбросить Adver Timer в значение равное Advertisement Interval
    • иначе:
      • Если приоритет в полученном VRRP-объявлении больше локального приоритета или если приоритет в полученном VRRP-объявлении равен локальному приоритету и основной IP-адрес отправителя больше локального основного IP-адреса, то:
        • Отменить Adver Timer
        • Установить Master Down Timer равным Master Down Interval
        • Перейти в состояние Backup
      • иначе:
        • Отбросить VRRP-объявление

См. также

  • CARP (свободная и безопасная альтернатива протоколу VRRP)



Wikimedia Foundation. 2010.

Нужен реферат?

Полезное


Смотреть что такое "VRRP" в других словарях:

  • VRRP — Saltar a navegación, búsqueda Virtual Router Redundancy Protocol (VRRP) es un protocolo de redundancia no propietario definido en el RFC 3768 diseñado para aumentar la disponibilidad de la puerta de enlace por defecto dando servicio a máquinas en …   Wikipedia Español

  • VRRP — (Virtual Router Redundancy Protocol) Familie: Internetprotokollfamilie Einsatzgebiet: automatische Konfiguration von Routern VRRP im TCP/IP Protokollstapel Vermittlung VRRP IP …   Deutsch Wikipedia

  • VRRP — Virtual Router Redundancy Protocol Virtual Router Redundancy Protocol (protocole de redondance de routeur virtuel, VRRP) est un protocole non propriétaire redondant décrit dans la RFC 3768 dont le but est d augmenter la disponibilité de la… …   Wikipédia en Français

  • VRRP — Virtual Router Redundancy Protocol (Computing » Networking) …   Abbreviations dictionary

  • VRRP — ● ►en sg. m. ►PROT Virtual Router Redundancy Protocol. Protocole d élection permettant de faire fonctionner plusieurs routeurs avec la même adresse IP, l un d eux étant le chef. Si celui ci tombe en panne, les autres prennent le relais …   Dictionnaire d'informatique francophone

  • VRRP — abbr. Virtual Router Redundancy Protocol …   Dictionary of abbreviations

  • VRRP — abbr. Virtual Router Redundency Protocol comp. abbr. Virtual Router Redundancy Protocol …   United dictionary of abbreviations and acronyms

  • Virtual Router Redundancy Protocol — VRRP (Virtual Router Redundancy Protocol) Familie: Internetprotokollfamilie Einsatzgebiet: Hochverfügbarkeit von Routern VRRP im TCP/IP Protokollstapel Vermittlung VRRP IP …   Deutsch Wikipedia

  • Virtual Router Redundancy Protocol — (VRRP) is a non proprietary redundancy protocol described in RFC 3768 designed to increase the availability of the default gateway servicing hosts on the same subnet. This increased reliability is achieved by advertising a virtual router (an… …   Wikipedia

  • Virtual Router Redundancy Protocol — (VRRP) es un protocolo de redundancia no propietario definido en el RFC 3768 diseñado para aumentar la disponibilidad de la puerta de enlace por defecto dando servicio a máquinas en la misma subred. El aumento de fiabilidad se consigue mediante… …   Wikipedia Español


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»