Со временем обрывки знаний и умений становится все труднее удержать в голове. Они расползаются по уголкам памяти заполняя все свободное место. Извлекать необходимое на свет становится все сложнее. Этот блог - рабочая записная книжка.

Thursday, August 23, 2007

HSRP

[upd, 28.08.2007]
При настройках по умолчанию, активный рутер выбирается по старшинству IP адреса.


HSRP


0. Официальная документация
Описание HSRP
http://cisco.com/en/US/products/sw/iosswrel/ps5207/products_feature_guide09186a00801d2d21.html

Troubleshooting HSRP
http://www.cisco.com/en/US/tech/tk648/tk362/technologies_tech_note09186a0080094afd.shtml


Для чего?
HSRP - host standby router protocol, используется в решениях отказоустойчивости.
Два рутера могут "делить" один IP-адрес между собой. Решение работает только в режиме active/standby при пропадании active рутера адрес забирает себе standby рутер.
Сообщения между рутерами посылаются на мультикаст адрес используется протокол UDP порт 1985.
Замечание: происходит переключение быстро, поскольку рутеры разделяют также и МАС адрес, который выбирается из диапазона:
- 0000.0c07.ac** (версия 1);

- 0000.0C9F.F*** (версия 2).
где последние * отображают номер группы в шестнадцатеричном виде.



Существует две версии HSRP (1 и 2).
Основные отличия:
- Версия 1 использует для работы мультикаст 224.0.0.2, что конфликтует с CGMP. Версия 2 использует мультикаст 224.0.0.102
- Версия 2 позволяет использовать большее количество групп (до 4096), тогда как версия 1 только до 255

1. Минимальная настройка.
Команды вводятся в режиме конфигурации интерфейса

// Основной адрес интерфейса
RouterA(config-if)# ip address 10.0.0.254 255.255.255.0


// Версия HSRP
Router(config-if)# standby version 2

// Группа в пределах которой работает HSRP и "разделяемый" адрес
Router(config-if)# standby 400 ip 10.0.0.1


2. Дополнительная настройка
Команды вводятся в режиме конфигурации интерфейса

2.1. Выбор основного рутера. Добавляется приоритет. Основным будет рутер с большим приоритетом. Может быть от 1 до 255.
По умолчанию равен 100.
Неясно как выбирается active/standby при настройках по умолчанию.
Router(config-if)# standby 400 priority 120

2.2. Обращать внимание на приоритет. Без этой команды приоритет просто не учитывается.
Задержка указывает сколько подождать перед "отдачей" активной роли.
Router(config-if)# standby 400 preempt [delay]

2.3. Мониторинг дополнительного интерфейса. Если он падает то приоритет рутера уменьшается на указанную величину, 50 в данном случае.
Если величина уменьшения приоритета не указана значением по умолчанию принимается 10.
Может указываться несколько раз для мониторинга нескольких интерфейсов.
Router(config-if)# standby 400 track
Serial0 50

2.4. Аутентификация. Строка должна быть одинаковой на всех рутерах в одной группе.
Есть возможность использовать md5
Router(config-if)# standby 400 authentication PREVED



3. Старое железо
Если используется старые модели маршрутизаторов, которые не поддерживают более одного МАС на интерфейсе можно использовать команду:
Router(config-if)# standby use-bia [interface]

Которая заставляет использовать аппаратный адрес вместо выбираемого дополнительно виртуального. Запомнить просто: bia -
burned-in address



4. Команды диагностики
Пример вывода команды диагностики.


Router#show standby
Ethernet0 - Group 1
Local state is Active, priority 70 (confgd 120), may preempt
Hellotime 3 sec, holdtime 10 sec
Next hello sent in 2.544
Virtual IP address is 10.0.0.5 configured
Active router is local
Standby router is unknown
Virtual mac address is 0000.0c07.ac01
2 state changes, last state change 00:00:48
IP redundancy name is "hsrp-Et0-1" (default)
Priority tracking 2 interfaces, 1 up:
Interface Decrement State
Serial0 10 Down (line protocol down)
Serial1 10 Up



8 comments:

EvilIT said...

жаль что это неработает с .1q интерфейсами

darksid said...
This comment has been removed by the author.
darksid said...
This comment has been removed by the author.
darksid said...

#Неясно как выбирается active/#standby при настройках по #умолчанию.

выбирается по старшенству ip адреса

pablo said...

Спасибо за комментарий. В самом начале заметки есть update от 28.08.2007, возможно он не так заметен...

darksid said...

Виноват не заметил:)
Сорри

Anonymous said...

>> Неясно как выбирается active/#standby при настройках по умолчанию.

> выбирается по старшенству ip адреса

"по старшинству" содержит неопределённость (год рождения, или количество лет -- противоположные значения).

лучше сказать: при равных приоритетах выбирается маршрутизатор с бОльшим ip адресом.

Anonymous said...

EvillT> жаль что это неработает с .1q интерфейсами

А почему он не работает? Это же обычный UDP multicast. По идее должен работать.