Hsrp

Содержание:

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

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

  • 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, то:
    • иначе:
      • Если значение Preempt режима False

        Сбросить 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
      • иначе:

[править] Конфигурация маршрутизаторов

dyn1

!
version 12.4
!
hostname dyn1
!
track 1 interface FastEthernet1/0 line-protocol
! 
!
!
interface Loopback0
 ip address 1.1.1.1 255.0.0.0
!         
interface FastEthernet0/0
 ip address 192.168.1.1 255.255.255.0
 standby use-bia
 standby version 2
 standby 1 ip 192.168.1.11
 standby 1 timers 5 15
 standby 1 priority 101
 standby 1 preempt
 standby 1 authentication Cisco
 standby 1 name DYN1-Act
 standby 1 track 1 shutdown
 standby 3 ip 192.168.1.33
 standby 3 timers 5 15
 standby 3 preempt
 standby 3 authentication Cisco
 standby 3 name DYN3-Act
 standby 3 track 1 shutdown
!         
interface FastEthernet1/0
 ip address 192.168.2.1 255.255.255.0

dyn3

!
version 12.4
!
hostname dyn3
!
track 1 interface FastEthernet1/0 line-protocol
!
!
interface Loopback0
 ip address 3.3.3.3 255.0.0.0
!
interface FastEthernet0/0
 ip address 192.168.1.3 255.255.255.0
 standby use-bia
 standby version 2
 standby 1 ip 192.168.1.11
 standby 1 timers 5 15
 standby 1 authentication Cisco
 standby 1 name DYN1-Act
 standby 3 ip 192.168.1.33
 standby 3 timers 5 15
 standby 3 priority 101
 standby 3 authentication Cisco
 standby 3 name DYN3-Act
!
interface FastEthernet1/0
 ip address 192.168.2.3 255.255.255.0
!

Introduction

Hot Standby Router Protocol (HSRP) provides redundancy for IP networks, ensuring that user traffic immediately and transparently recovers from first hop router failures. HSRP allows multiple routers on a single LAN to share a virtual IP and MAC address which is configured as the default gateway on the hosts. From the group of routers configured in an HSRP group, there is one router elected as the active router and another as a standby router. The active router assumes the role of forwarding packets sent to the virtual IP address. If the active router fails, the standby router takes over as the new active router.

HSRP Tracking

Tracking is only for HSRP to detect some changes in the routing table. HSRP is not a real routing protocol it just provides a default gateway at Layer 2 and Layer 3.

Interface tracking allows you to specify another interface on the router for the HSRP process to monitor in order to alter the HSRP priority for a given group.

If the specified interface’s line protocol goes down, the HSRP priority of this router is reduced, allowing another HSRP router with higher priority can become active (if it has preemption enabled).

To configure HSRP interface tracking, use the command:

standby track interface

Eg: Router(config-if)# standby 1 track serial 0/0 25

HSRP will track the availability of interface serial 0/0. If serial 0/0 goes down, the priority of the router in group 1 will be decremented by 25.

The track argument does not assign a new priority if the tracked interface goes down. The track argument assigns a value that the priority will be decreased if the tracked interface goes down.

Therefore, if you are tracking serial 0/0 with a track value of 25—standby 1 track serial 0/0 25—and serial 0/0 goes down, the priority will be decreased by 25; assuming a default priority of 100, the new priority will now be 75.

The default value of the track argument is 10.

Tracking allows syncing the HSRP priority to the good state of one or more uplinks. So combining tracking and preemption HSRP Active role can be taken by the router with the best current connectivity to the core providing better performance.

In modern IOS we can track more than simple interface state. Interface tracking enables HSRP process to monitor additional interfaces, the status of which will dynamically change the HSRP priority (Active/Standby).

Imagine the following scenario:

If you have two serial links to two different ISPs(assume primary/backup Internet connections) connected via two different routers, it would be interesting to have the serial interface connecting to your primary ISP tracked in order to minimize service interruption to your local users. If this serial interface goes down, your backup router can take over the gateway functionality to your local network, while maintaining the connectivity to the secondary ISP (backup). Users would still be able to access Internet via the backup router (through Secondary ISP) thanks to the interface tracking functionality in HSRP.

You can consider interface tracking as part of the ‘Normal’ HSRP.

Please refer of Hot Standby Router Protocol Features and Functionality. Also refer the link .

It is possible to track more than one thing at a time within the same HSRP group. We can do interface tracking as well as IP SLA tracking within one HSRP group. Each tracked object will produce a priority decrement if it fails. This helps in scenarios where you want the active router to change role only when multiple events happen or if you want to track multiple aspects.

The purpose of tracking an interface is so that you can decrease the priority of an interface running HSRP if some other interface goes down. If the interface running HSRP goes down you do not want to decrease its priority you want the other standby interface to take completely over.

[править] Описание протокола

GLBP работает аналогично, но не идентично другим протоколам резервирования шлюза, такими как HSRP и VRRP. Эти протоколы позволяют нескольким маршрутизаторам участвовать в сконфигурированной виртуальной группе маршрутизаторов с общим виртуальным IP-адресом. Один член группы выбирается активным маршрутизатором, в то время как другие остаются неактивными до тех пор, пока не произойдет сбой с активным маршрутизатором. При этом эти резервные маршрутизаторы обладают ресурсами, которые почти не используются в течение всего времени эксплуатации этой системы. GLBP обеспечивает распределение нагрузки на несколько маршрутизаторов (шлюзов) используя один виртуальный IP-адрес и несколько виртуальных MAC-адресов. Каждый хост сконфигурирован с одинаковым виртуальным IP-адресом и все маршрутизаторы в виртуальной группе участвуют в передаче пакетов.

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

Члены GLBP группы выбирают один шлюз который будет активным виртуальным шлюзом active virtual gateway (AVG) для этой группы. Другие члены группы обеспечивают резервирование для AVG в случае если AVG станет недоступным. AVG назначает виртуальный MAC адрес для каждого члена GLBP группы. Каждый член группы участвует в передаче пакетов, используя виртуальный MAC адрес, выданный AVG. Этих членов группы называют active virtual forwarders (AVFs).
AVG ответственен за выдачу ответов по протоколу Address Resolution Protocol (ARP) на запросы к виртуальному IP-адресу. Распределение нагрузки достигается тем что AVG отвечает на ARP запросы используя разные виртуальные MAC-адреса.

На следующем рисунке маршрутизатор A является AVG для GLBP группы, и ответственен за виртуальный IP-адрес 10.24.0.1. Маршрутизатор A так же является AVF для виртуального MAC адреса 0007.b400.0204. Маршрутизатор B член той же GLBP группы и назначенный AVF для виртуального MAC адреса 0007.b400.0205. На клиентах устанавливается шлюз по умолчанию с IP-адресом 10.24.0.1 и MAC адресом шлюза 0007.b400.0204. В то время как на другом клиенте MAC-адрес шлюза по умолчанию будет 0007.b400.0205 и таким образом маршрутизатор A будет распределять нагрузку с маршрутизатором B.

В GLBP поддерживает до 4 маршрутизаторов в группе и до 1024 групп

Взаимодействие между маршрутизаторами в группе

Маршрутизаторы отправляют друг другу сообщения hello каждые 3 секунды.
Сообщения отправляются на адрес 224.0.0.102, UDP порт 3222 (отправителя и получателя).

GLBP Gateway Priority

GLBP Gateway Priority определяет роль, которую каждый маршрутизатор AVF играет в группе. Т.е. с помощью этого свойства можно определить последовательность выбора нового AVG, если старый AVG станет недоступным. Приоритет можно определить на каждом маршрутизаторе значением от 1 до 255 командой: glbp priority. Маршрутизатор с большим приоритетом становится AVG.

По умолчанию схема выбора AVG только на основе приоритета выключена. Запасной AVF станет AVG только если текущий AVG станет недоступным. Что бы разрешить выборы AVG на основе приоритета нужно ввести команду: glbp preempt

Режимы балансировки нагрузки

GLBP поддерживает следующие режимы балансировки нагрузки:

  • None — режим, при котором коммутатор не обеспечивает балансировку нагрузки. На все запросы клиентов он отвечает своим МАК адресом. Второй коммутатор начинает работу только после того как основной коммутатор (AVG) выйдет из строя или станет недоступным.
  • Weighted load-balancing — балансировка нагрузки производится в соответствии с весом каждого коммутатора. Вес коммутатора назначается инженером на каждом коммутаторе отдельно. Например если в GLBP группе два коммутатора, у AVG вес 70 а у AVF 140, то нагрузка будет распределяться 1:2. Другими словами из трех полученных запросов на MAC-адрес AVG один раз ответит своим MAC-адресом и дважды MAC-адресом AVF коммутатора.
  • Host-dependent load-balancing — этот режим используется в случае если есть необходимость в реализации трансляции адресов Network Address Translation (NAT), так как этот режим гарантирует возвращение клиенту того же MAC-адреса AVF коммутатора который он использовал ранее и следовательно NAT сессия у клиента не прерывается. Клиенты будут получать те же MAC-адреса AVF до тех пор, пока количество коммутаторов в GLBP группе не изменится.
  • Round-robin load-balancing — режим используется по умолчанию. В этом режиме AVG выдает MAC-адреса AVF попеременно.

Необходимо отметить, что все методы реализуют балансировку количества хостов на один узел, а не трафика.

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

Пример 1. Два маршрутизатора VRRP используют один виртуальный маршрутизатор

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

Два маршрутизатора, 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.

Пример 2. Два маршрутизатора VRRP используют два виртуальных маршрутизатора. Оба маршрутизатора передают трафик

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

Половина компьютеров использует в качестве шлюза по умолчанию 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-адреса шлюза по умолчанию.

[править] Дополнительная информация

Сетевой уровень

Основные понятия
Сетевой интерфейс | IP | IP-адрес | Маска подсети | Широковещательный адрес | Маршрут | IPv6 Маршрутизация | Форвардинг | Таблица маршрутизации | Шлюз по умолчанию Маршрутизация в Linux | Маршрутизация в FreeBSD | Маршрутизация в Cisco
Динамическая маршрутизация
Протоколы: RIP | OSPF | EIGRP | BGP | IS-IS
Демоны: Quagga | GNU Zebra | XORP | bird | OpenBGPD | OpenOSPFD | MRT (заброшен)
Устройства: Cisco Router | ProCurve Router | Vyatta
Отказоустойчивость
Протоколы: CARP| HSRP | VRRP | XRRP | GLBP
Реализация: CARP в OpenBSD | CARP в FreeBSD | UCARP | HSRP в Cisco | VRRP в Cisco | VRRP в ProCurve | XRRP в ProCurve

[править] Недокументированные особенности

Использование NAT — активирует NBAR (Network Based Application Recognition/ механизм распознавания потока данных) при этом выделяется ресурсы маршрутизатора под это приложение
Пример

c871-tsum#sh ip nbar resources
% Error: NBAR has not been activated
c871-tsum#conf t
c871-tsum(config)#int loopback 100
c871-tsum(config-if)#ip nat outside
c871-tsum(config-if)#do show ip nbar resources
NBAR memory usage for tracking Stateful sessions
   Max-age              : 120 secs
   Initial memory       : 2066 KBytes
   Max initial memory   : 6886 KBytes
   Memory expansion     : 68 KBytes
   Max memory expansion : 68 KBytes
   Memory in use        : 2066 KBytes
   Max memory allowed   : 13773 KBytes
   Active links         : 0
   Total links          : 30383

[править] HSRP в Cisco

Основная страница: HSRP в Cisco

Сетевой уровень

Основные понятия
Сетевой интерфейс | IP | IP-адрес | Маска подсети | Широковещательный адрес | Маршрут | IPv6 Маршрутизация | Форвардинг | Таблица маршрутизации | Шлюз по умолчанию Маршрутизация в Linux | Маршрутизация в FreeBSD | Маршрутизация в Cisco
Динамическая маршрутизация
Протоколы: RIP | OSPF | EIGRP | BGP | IS-IS
Демоны: Quagga | GNU Zebra | XORP | bird | OpenBGPD | OpenOSPFD | MRT (заброшен)
Устройства: Cisco Router | ProCurve Router | Vyatta
Отказоустойчивость
Протоколы: CARP| HSRP | VRRP | XRRP | GLBP
Реализация: CARP в OpenBSD | CARP в FreeBSD | UCARP | HSRP в Cisco | VRRP в Cisco | VRRP в ProCurve | XRRP в ProCurve

[править] Конфигурация маршрутизаторов

dyn1

!
version 12.4
!
hostname dyn1
!
track 1 interface FastEthernet1/0 line-protocol
! 
!
!
interface Loopback0
 ip address 1.1.1.1 255.0.0.0
!         
interface FastEthernet0/0
 ip address 192.168.1.1 255.255.255.0
 standby use-bia
 standby version 2
 standby 1 ip 192.168.1.11
 standby 1 timers 5 15
 standby 1 priority 101
 standby 1 preempt
 standby 1 authentication Cisco
 standby 1 name DYN1-Act
 standby 1 track 1 shutdown
 standby 3 ip 192.168.1.33
 standby 3 timers 5 15
 standby 3 preempt
 standby 3 authentication Cisco
 standby 3 name DYN3-Act
 standby 3 track 1 shutdown
!         
interface FastEthernet1/0
 ip address 192.168.2.1 255.255.255.0

dyn3

!
version 12.4
!
hostname dyn3
!
track 1 interface FastEthernet1/0 line-protocol
!
!
interface Loopback0
 ip address 3.3.3.3 255.0.0.0
!
interface FastEthernet0/0
 ip address 192.168.1.3 255.255.255.0
 standby use-bia
 standby version 2
 standby 1 ip 192.168.1.11
 standby 1 timers 5 15
 standby 1 authentication Cisco
 standby 1 name DYN1-Act
 standby 3 ip 192.168.1.33
 standby 3 timers 5 15
 standby 3 priority 101
 standby 3 authentication Cisco
 standby 3 name DYN3-Act
!
interface FastEthernet1/0
 ip address 192.168.2.3 255.255.255.0
!

[править] Label Distribution Protocol (LDP)

Для передачи сообщений LDP использует:

  • UDP, порт 646, для Hello-сообщений,
  • TCP, порт 646, для обновлений.

Multicast адрес для отправки hello-сообщений 224.0.0.2. Отправляются каждые 5 секунд.

Инициирует соединение TCP маршрутизатор с наивысшим LDP ID. В качестве адреса отправителя используется transport адрес (если настроен) или LDP ID, если transport адрес не настроен.

Правила выбора LDP ID:

  1. Назначен административно.
  2. Наибольший IP-адрес присвоенный любому из loopback-интерфейсов.
  3. Наибольший IP-адрес из всех активных интерфейсов.

Метки генерируются для всех маршрутов в таблице маршрутизации, которые были получены не по протоколу BGP.
Все локальные метки хранятся в LIB.

Соответствие между меткой и сетью отправляется всем соседям LDP.

[править] Конфигурация маршрутизаторов

dyn1

interface FastEthernet0/0
 vrrp 1 description DYN1-MasterGR
 vrrp 1 ip 192.168.1.1
 vrrp 1 timers advertise 10
 vrrp 1 timers learn
 vrrp 1 authentication Cisco
 vrrp 3 description DYN3-MasterGR
 vrrp 3 ip 192.168.1.3
 vrrp 3 timers advertise 10
 vrrp 3 timers learn
 vrrp 3 authentication Cisco

dyn3

interface FastEthernet0/0
 ip address 192.168.1.3 255.255.255.0
 vrrp 1 description DYN1-MasterGR
 vrrp 1 ip 192.168.1.1
 vrrp 1 timers advertise 10
 vrrp 1 timers learn
 vrrp 1 authentication Cisco
 vrrp 3 description DYN3-MasterGR
 vrrp 3 ip 192.168.1.3
 vrrp 3 timers advertise 10
 vrrp 3 timers learn
 vrrp 3 authentication Cisco
Добавить комментарий

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