HSRP

HSRP (Hot Standby Router Protocol, Hot Standby Redundancy Protocol) — протокол маршрутизации семейства FHRP (англ. First-hop redundancy protocols), разработанный компанией Cisco и стандартизованный в RFC 2281.

HSRP
Уровень (по модели OSI) Сетевой
Семейство TCP/IP
Создан в 1997
Порт/ID 1985/UDP
Назначение протокола Резервирование шлюза в ethernet-сетях
Спецификация RFC 2281
Основные реализации (серверы) Cisco, Juniper routers
Расширяемость Protocol version number
Основные расширения HSRP Version 2, MD5 authentication
Разработчик Cisco Systems

Описание

HSRP был разработан компанией Cisco Systems. В марте 1998 года стандартизован в документе RFC 2281, написанном представителями Cisco Systems и Juniper Networks. В дальнейшем на основе HSRP был создан протокол VRRP (англ. Virtual Router Redundancy Protocol), не являющийся проприетарным, но имеющий патентные ограничения из-за того, что основан на HSRP. Полностью свободной от патентных споров альтернативой протоколу HSRP является протокол CARP, разработанный в 2003 году командой разработчиков операционной системы OpenBSD.

Протокол HSRP предназначен для того, чтобы добиться практически 100% доступности и отказоустойчивости первого хопа от отправителя («маршрут по умолчанию», default gateway, также иногда называемый «шлюз последней надежды»). Это достигается путём использования у двух или более маршрутизаторов или маршрутизирующих коммутаторов третьего уровня одного IP-адреса и MAC-адреса так называемого виртуального маршрутизатора. Такая группа называется HSRP-группой.

В терминологии HSRP-протокола существуют несколько основных понятий (терминов):

  • Активный маршрутизатор (Active Router) — маршрутизатор или маршрутизирующий коммутатор третьего уровня, выполняющий роль виртуального маршрутизатора и обеспечивающий пересылку пакетов из одной подсети в другую;
  • Резервный маршрутизатор (Standby Router) — маршрутизатор или маршрутизирующий коммутатор третьего уровня, выполняющий роль резервного виртуального маршрутизатора, ожидающего отказа активного маршрутизатора в рамках одной HSRP группы;
  • Группа резервирования (Standby Group) — группа маршрутизаторов или маршрутизирующих коммутаторов третьего уровня, которые являются членами одной HSRP-группы и обеспечивают работу и отказоустойчивость виртуального маршрутизатора;
  • Таймер приветствия (Hello Time) — промежуток времени, в течение которого маршрутизаторы или маршрутизирующие коммутаторы третьего уровня, находящиеся в рамках одной HSRP группы, ожидают пакеты приветствия (Hello Packet) от активного маршрутизатора;
  • Таймер удержания (Hold Time) — промежуток времени, по истечении которого резервный маршрутизатор посылает пакет, в котором содержится информация об отказе активного маршрутизатора, тем самым осуществляет приоритетное прерывание в группе и берет на себя роль активного маршрутизатора.

Описание протокола, формат пакета и возможных состояний

HSRP протокол реализован поверх стека протоколов TCP/IP, для доставки служебной информации используется протокол UDP. Маршрутизаторы или маршрутизирующие коммутаторы, на которых сконфигурирован и функционирует протокол HSRP, в рамках обмена служебной информацией используют так называемые пакеты приветствия (hello packets). В свою очередь, данные пакеты отправляются на IP-адрес групповой рассылки (multicast) 224.0.0.2 (HSRP Version 1) или на 224.0.0.102 (HSRP Version 2) по протоколу UDP на порт 1985.

Структура пакета
0 7 15 23
Version Type Virtual Rtr ID Priority Count IP Addrs
Auth Type Advet Int Checksum
IP Address (1)
IP Address (n)
Authentication Data (1)
Authentication Data (2)

Принцип действия

Из группы маршрутизаторов HSRP выбирает один активный и один standby маршрутизаторы. Остальные маршрутизаторы выступают как просто члены группы. Активный маршрутизатор отвечает за пересылку пакетов. Standby-маршрутизатор займет место Активного маршрутизатора в случае отказа последнего. Маршрутизатор с наибольшим приоритетом, из оставшихся членов группы, в этом случае, будет выбран в качестве Standby.

Выборы проводятся на основании приоритета маршрутизатора, который может изменяться в пределах от 1 до 255. Приоритет может быть назначен вручную, что позволяет влиять на процесс выбора. Если системный администратор не определил приоритет, используется значение по умолчанию, равное 100. Если ни одному из маршрутизаторов в группе не был назначен приоритет, то приоритеты всех маршрутизаторов совпадут и активным в этом случае станет маршрутизатор с наибольшим IP-адресом интерфейса на котором настроен HSRP. В процессе работы Активный и Standby маршрутизаторы обмениваются hello-сообщениями.

По умолчанию, активный маршрутизатор, каждые 3 секунды, рассылает hello-сообщение, которое сообщает «Ребята, всё ок! Я еще в строю!». Если в течение 10 секунд (три длительности hello-) нет ни одного hello-сообщения от активного маршрутизатора, резервный считает, что активный маршрутизатор «упал» и берет на себя роль активного маршрутизатора.

При подключении нового маршрутизатора к уже существующей группе он не будет выбран в качестве Active, даже при наличии большего приоритета, если не настроена опция preempt. Для повышения безопасности можно использовать процесс аутентификации при обмене сообщениями между маршрутизаторами.

Кроме того, есть возможность отслеживать состояние интерфейсов маршрутизатора, не принимающих участия в группе HSRP (uplink к другим сетям). И в зависимости от их работоспособности менять приоритет маршрутизатора в группе. Приоритет меняется ступенчато. По умолчанию при "падении" одного из интерфейсов он уменьшается на 10. Однако для того чтобы маршрутизатор,приоритет которого в результате этих изменений стал больше, взял на себя роль Active, должна быть настроена опция preempt.

См. также

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.