Virtual Router Redundancy Protocol (VRRP) - технология, позволяющая формировать отказоустойчивую, прозрачную систему из группы роутеров, работающих как один отказоустойчивый шлюз по умолчанию (первый узел маршрута). Аналогичным функционалом обладает протокол Hot Standby Router Protocol (HSRP).
LAN клиент может использовать динамическую или статическую собственную конфигурацию для определения первого узла маршрута (шлюза по умолчанию) до удаленной точки. Могут использоваться, например, следующие технологии динамического определения роутера:
- Proxy ARP - клиент использует протокол Address Resolution Protocol (ARP) для получения информации о требуемой точке назначения, и роутер отвечает на ARP-запрос собственным MAC-адресом.
- Routing protocol - клиент прослушивает обновления dynamic routing protocol (например, от Routing Information Protocol [RIP]) и формирует собственную таблицу маршрутизации
- IRDP (ICMP Router Discovery Protocol) client - клиент запускает на себе специальное программное обеспечение определения роутера, использующее Internet Control Message Protocol (ICMP).
Недостатком протоколов динамической маршрутизации является усложненное конфигурирование клиентов и значительная их загрузка. Кроме того, в случае отказа роутера построение альтернативного маршрута может происходить медленно.
Статическое конфигурирование клиентов намного проще, но оно создает единственную, незарезервированную точку отказа (на шлюзе), и надежность такого решения оставляет желать лучшего.
Преимущества и особенности VRRP:
- Redundancy - отказоустойчивость шлюза;
- Load Sharing - распределение нагрузки - можно сконфигурировать VRRP таким образом, что прямой и обратный трафик LAN-клиентов может делиться между несколькими роутерами;
- Multiple Virtual Routers - поддерживается до 255 роутеров, входящих в VRRP group.
- Multiple IP Addresses - VRRP virtual router может поддерживать несколько IP-адресов, включая secondary IP addresses (см. Настройка дополнительных адресов на интерфейсе);
- Preemption - схема отказоустойчивости VRRP поддерживает приоритеты и их преемственность во время отказов и восстановлений backup-роутеров при переходе их в роль master и обратно;
- Text Authentication - VRRP-сообщения, принимаемые роутерами, могут включать в себя простой текстовый пароль (для чего это надо, как и что это защищает, и от кого, непонятно);
- Advertisement Protocol - VRRP использует специально выделенный стандартный адрес - Internet Assigned Numbers Authority (IANA) standard multicast address (224.0.0.18) для VRRP advertisements (объявления, или сообщения). Эта схема адресации минимизирует количество роутеров, которые должны обслуживать multicast-сообщения и позволяет тестовому оборудованию точно идентифицировать пакеты VRRP в сегменте сети. IANA назначает для VRRP IP-протокол номер 112.
- VRRP object tracking - обеспечивает метод проверки что master-роутер является наилучшим из всех VRRP-роутеров группы путем изменения приоритетов VRRP и опроса статуса tracked objects, таких как интерфейс или состояние маршрутизации IP.
При использовании VRRP клиент конфигурируется статически. Шлюзом по умолчанию для клиентов является виртуальный роутер, в качестве которого фигурирует специально сконфигурированная с использованием VRRP группа маршрутизаторов.
На рисунке виден пример, в котором роутеры A, B и C образуют VRRP group, иначе называемую VRRP virtual router. IP-адрес виртуального роутера тот же самый, который сконфигурирован на интерфейсе роутера A (10.0.0.1). При этом роутер A несет роль master virtual router (“главный виртуальный маршрутизатор”) известную также как IP address owner (“владелец IP”). Роутеры B и C несут роли backup virtual routers (“запасные виртуальные маршрутизаторы”). Когда отказывает master-роутер A, backup-роутер, который сконфигурирован с наибольшим приоритетом, становится master-роутером. Когда роутер A (бывший master) восстанавливается, он снова получает роль master-роутера.
Можно сконфигурировать до 255 виртуальных роутеров, входящих в группу VRRP. Их реальное количество зависит от ресурсов используемых роутеров (загрузки процессора и памяти), а также от возможности поддержки на интерфейсе нескольких MAC-адресов.
Важнейшим аспектом технологии является VRRP router priority. Приоритет определяет роль, которую играет каждый виртуальный роутер в случае отказа master-роутера. Приоритет может быть сконфигурирован величиной 1..254 (чем больше число, тем выше приоритет получения роли master) с помощью команды vrrp priority. Если роутеры сконфигурированы с одинаковым приоритетом, то первым получит роль master тот роутер, у которого IP-адрес больше (если брать пример на рисунке, то это будет роутер C).
Существует схема преемственности, посредством которой backup-роутер с высшим приоритетом при восстановлении работоспособности получает роль master-роутера. Эту преемственность можно отключить командой no vrrp preempt. В этом случае backup-роутер, получивший роль master, остается в этой роли до тех пор, пока не запустится оригинальный master-роутер.
Master-роутер посылает VRRP advertisements (VRRP-объявления) на другие роутеры VRRP, входящие в ту же группу. Эти сообщения передают приоритет и состояние master-роутера. VRRP advertisements инкапсулированы в IP-пакеты и посылаются на IP Version 4 multicast address, назначенный для VRRP group. По умолчанию это происходит каждую секунду, интервал можно поменять.
VRRP использует специальный Object Tracking - независимый процесс, создающий, опрашивающий и удаляющий специальные объекты, отражающие состояние роутера. Протоколы Hot Standby Router Protocol (HSRP), Gateway Load Balancing Protocol (GLBP), а также VRRP регистрируют свои собственные специфические tracked objects и реагируют на изменение состояния этих объектов.
Настройка VRRP в Cisco IOS 12.4 состоит из следующих процедур (подробности см. в Configuring VRRP):
1. Настройка поведения VRRP (необязательная процедура).
(config)#interface type number
(config-if)#ip address ip-address mask
(config-if)#vrrp group description text
(config-if)#vrrp group priority level
(config-if)#vrrp group preempt [delay minimum seconds]
(config-if)#vrrp group timers advertise [msec] interval
(config-if)#vrrp group timers learn
2. Включение VRRP.
(config)#interface type number
(config-if)#ip address ip-address mask
(config-if)#vrrp group ip ip-address [secondary]
(config-if)#end
#show vrrp [brief | group]
#show vrrp interface type number [brief]
3. Выключение (запрет) VRRP на интерфейсе.
(config)#interface type number
(config-if)#ip address ip-address mask
(config-if)#vrrp group shutdown
4. Настройка VRRP Object Tracking.
(config)#track object-number interface type number {line-protocol | ip routing}
(config)#interface type number
(config-if)#vrrp group ip ip-address
(config-if)#vrrp group priority level
(config-if)#vrrp group track object-number [decrement priority]
(config-if)#end
#show track [object-number]
5. Настройка VRRP Authentication с использованием ключевой строки (key string; другие варианты - использование key chain и простая текстовая аутентификация).
(config)#interface type number
(config-if)#ip address ip-address mask [secondary]
(config-if)#vrrp group priority priority
(config-if)#vrrp group authentication md5 key-string [0 | 7] key-string [timeout seconds]
(config-if)#vrrp group ip [ip-address [secondary]]
Эти шаги надо проделать на всех роутерах, которые будут обмениваться коммуникационными сообщениями.
(config-if)#end
6. Проверка конфигурации VRRP MD5 Authentication (show vrrp и debug vrrp authentication):
Router# show vrrp
Ethernet0/1 - Group 1
State is Master
Virtual IP address is 10.21.0.10
Virtual MAC address is 0000.5e00.0101
Advertisement interval is 1.000 sec
Preemption is enabled
min delay is 0.000 sec
Priority is 100
Authentication MD5, key-string “f00d4s”, timeout 30 secs
Master Router is 10.21.0.1 (local), priority is 100
Master Advertisement interval is 1.000 sec
Master Down interval is 3.609 sec
Этот вывод показывает, что MD5 Authentication сконфигурирована правильно, и используется ключевая строка f00d4s. Величина таймаута установлена в 30 секунд.
Router# debug vrrp authentication
VRRP: Grp 1 Advertisement from 10.24.1.1 has incorrect authentication type 0 expected 254
!MD5 key IDs differ on each router.
VRRP: Grp 1 recalculate MD5 digest: “3n};oHp8_)_7 C”
VRRP: Grp 1 Advertisement from 10.24.1.1 has FAILED MD5 authentication
!The MD5 key strings differ on each router.
VRRP: Grp 1 received MD5 digest:
“_M_^uMiWo^|t?t2m”
VRRP: Grp 1 Advertisement from 10.24.1.1 has FAILED MD5 authentication
!The text authentication strings differ on each router.
VRRP: Grp 1 Advertisement from 172.24.1.1 has FAILED TEXT authentication
Команда debug vrrp authentication используется для проверки обоих роутеров, у которых совпадают MD5 key ID и MD5 key strings.
7. Разрешение отсылки роутером SNMP VRRP Notifications.
VRRP MIB поддерживает SNMP-операцию Get, которая позволяет сетевым устройствам передавать отчеты о VRRP-группах сети для сетевой станции управления (network management station - сервер, на котором хранится база MIB). Разрешение поддержки VRRP MIB trap включается с CLI (Command Line Interface), и MIB используется для получения отчетов (reports). Trap оповещают сетевую станцию управления, когда роутер меняет свое состояние на master или backup.
(config)#snmp-server enable traps vrrp
(config)#snmp-server host host community-string vrrp
|
Комментарии
RSS лента комментариев этой записи