hsrp cisco что это
HSRP в Cisco
Материал из Xgu.ru
|
Данная страница находится в разработке. Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной. |
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
На этой странице описывается настройка протокола HSRP на маршрутизаторах и коммутаторах Cisco.
HSRP настраивается одинаково на маршрутизаторах и коммутаторах 3го уровня, настройки выполняются на интерфейсах 3го уровня. На маршрутизаторе это могут быть физические интерфейсы или подынтерфейсы, а на коммутаторе 3го уровня интерфейсы переведенные в режим работы на 3 уровне или SVI-интерфейсы (interface vlan).
Содержание
[править] Настройка на маршрутизаторах и коммутаторах
[править] Пример топологии
[править] Включение HSRP на интерфейсе
Создание групп и назначение виртуальных IP-адресов на маршрутизаторах (включение HSRP):
Если не указывать номер группы в команде standby ip, то будет использоваться номер 0.
В HSRP существует ещё большое количество настроек, которые могут быть выполнены после включения HSRP на интерфейсе. Однако, рекомендуется сначала выполнить все настройки (например, аутентификация, таймеры), а затем включить HSRP на интерфейсе.
Пример настройки двух групп для dyn1 и dyn3 (настройки одинаковые на обоих маршрутизаторах):
Хотя, для того чтобы HSRP работал достаточно указать виртуальный IP-адрес только на одном маршрутизаторе, Cisco рекомендует указывать адрес на всех маршрутизаторах.
[править] Изменение версии протокола
По умолчанию используется версия 1.
[править] Задание имени группы
Пример настройки имени для группы 1 на маршрутизаторе dyn1:
Имя группы имеет локальное значение.
Имя группы используется для связки HSRP с другими функциями маршрутизатора. Например, при использовании HSRP вместе с IPsec или NAT.
[править] Настройка приоритета маршрутизатора
Настройка приоритета. Диапазон значений от 0 до 255 (по умолчанию значение 100):
Изменение приоритета по умолчанию для группы 1 на dyn1 (на dyn3 аналогично изменен приоритет для группы 3):
[править] Настройка preempt
Режим preempt позволяет маршрутизатору с более высоким приоритетом перехватывать роль active маршрутизатора. По умолчанию режим preempt выключен.
Включение режима preempt:
[править] Виртуальный MAC-адрес
[править] Track
[править] Пример настройки
Пример настройки для маршрутизатора dyn1. Отслеживается состояние интерфейса fa1/0. Если интерфейс не работает, то все HSRP-группы на интерфейсе fa0/0 будут выключены.
Настройка выключения группы 1:
Если теперь выключить интерфейс fa1/0, то группы 1 и 3 на интерфейсе fa0/0 перейдут в состояние Init:
[править] Настройка таймеров
Значение таймеров для всех маршрутизаторов в одной группе должно быть одинаковое. Значения таймеров маршрутизатор может получить от active маршрутизатора.
Изменение таймеров HSRP на интерфейсе:
Изменение таймеров для группы 1 на dyn1:
Так как dyn1 для группы 1 является active маршрутизатором, то аналогичные значения таймеров в этой группе будут и для dyn3.
Если, например, изменить таймеры на маршрутизаторе dyn1 для группы 3, в то время как он не является для неё active маршрутизатором, то реально использоваться будут таймеры пришедшие от active маршрутизатора (dyn3). Если dyn1 станет active в группе 3, то тогда будут использоваться настроенные таймеры.
Пример отображения информации о dyn1, когда для группы 3 он является standby и таймеры отличные от настроенных на active:
[править] Настройка аутентификации
Пример настройки аутентификации для двух групп на маршрутизаторе dyn1:
[править] Настройка параметров HSRP Gratuitous ARP
[править] Задержка включения HSRP на интерфейсе
[править] Отправка trap протокола HSRP
[править] Просмотр информации
Варианты команд просмотра настроек:
Просмотр краткой информации о группах:
Просмотр информации о всех включенных группах HSRP:
Просмотр информации группе 1 на интерфейсе fa0/0:
Просмотр информации о настроенных значениях задержки:
Просмотр информации о соседях:
Просмотр информации о настройках ICMP redirect:
[править] Пример настройки HSRP на коммутаторах 3го уровня
На рисунке изображена топология, которая будет использоваться в данном примере. Настройка HSRP будет выполняться для коммутаторов DSW1 и DSW2.
На коммутаторах DSW1 и DSW2 порты Po1, Po2 и Po3 это агрегированные каналы (EtherChannel), которые переведены в режим 3го уровня и не описаны в настройках.
[править] IP-адресация и VLAN
На рисунке отмечены VLAN:
Принципы назначения адресов одинаковы для всех VLAN, меняется только третий октет в адресах. Адресация на примере VLAN 101:
[править] Spanning-tree
Топология построена таким образом, чтобы в ней не было петель на канальном уровне. Однако, на коммутаторах включен Rapid-PVST+ для защиты от случайных петель.
[править] Настройка HSRP на примере VLAN 101 коммутатора DSW1
[править] Конфигурация коммутаторов
[править] DSW1 и DSW2
[править] ASW1 и ASW2
[править] NAT и HSRP
Использование HSRP вместе с трансляцией адресов описано на странице Cisco NAT.
Hsrp cisco что это
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
HSRP (Hot Standby Router Protocol) — проприетарный протокол Cisco, предназначенный для увеличения доступности маршрутизаторов выполняющих роль шлюза по умолчанию. Это достигается путём объединения маршрутизаторов в standby группу и назначения им общего IP-адреса, который и будет использоваться как шлюз по умолчанию для компьютеров в сети.
Содержание
[править] Терминология протокола
[править] Описание протокола
[править] Версии протокола
Существует две версии протокола HSRP 1 и 2:
[править] HSRP standby группа
Виртуальный MAC-адрес (xx — номер группы HSRP):
Маршрутизатор с наивысшим приоритетом становится active. Если у двух маршрутизаторов одинаковый приоритет, то Active становится тот, у которого больше IP-адрес на участвующем в HSRP интерфейсе.
[править] Взаимодействие между маршрутизаторами
HSRP-маршрутизаторы взаимодействуют между собой обмениваясь hello-сообщениями. Эти сообщения отправляются на multicast адрес 224.0.0.2 или 224.0.0.102 (в зависимости от версии HSRP) на UDP порт 1985.
Адреса отправителя в hello-сообщениях:
[править] Сообщения протокола
[править] Описание состояний маршрутизаторов
Маршрутизатор в HSRP standby группе может быть в одном из таких состояний:
[править] HSRP Gratuitous ARP
[править] Multiple HSRP (MHSRP)
MHSRP используется для балансировки нагрузки. Для того чтобы балансировать нагрузку между существующими избыточными маршрутизаторами настраивается несколько групп HSRP в одном широковещательном сегменте.
Например, если есть два маршрутизатора, которые могут выполнять роль шлюза по умолчанию для сегмента, то на каждом из них необходимо настроить две группы HSRP. В одной группе будет активным один маршрутизатор, в другой — второй.
Кроме того, для того чтобы эта схема работала, необходимо чтобы часть хостов получила в качестве адреса шлюза по умолчанию IP-адрес одного виртуального маршрутизатора, а вторая часть хостов — IP-адрес второго виртуального маршрутизатора.
Также имеет смысл настраивать MHSRP в случае, когда маршрутизаторы используют протокол динамической маршрутизации для доступа к удаленным сетям, и часть подсетей имеет меньшую метрику через первый маршрутизатор, а часть через второй. В таком случае маршрутизатор, получивший пакет, который будет передан через Standby маршрутизатор, отправит клиенту пакет ICMP Redirect, который сразу укажет на HSRP-адрес, в котором второй маршрутизатор будет активным. Таким образом, трафик сразу будет ходить оптимальным маршрутом. При отстутствии активного адреса HSRP на втором маршрутизаторе, ICMP-Redirect по умолчанию не отправляется, и трафик ходит неоптимально.
HSRP в Cisco
Материал из Xgu.ru
|
Данная страница находится в разработке. Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной. |
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
На этой странице описывается настройка протокола HSRP на маршрутизаторах и коммутаторах Cisco.
HSRP настраивается одинаково на маршрутизаторах и коммутаторах 3го уровня, настройки выполняются на интерфейсах 3го уровня. На маршрутизаторе это могут быть физические интерфейсы или подынтерфейсы, а на коммутаторе 3го уровня интерфейсы переведенные в режим работы на 3 уровне или SVI-интерфейсы (interface vlan).
Содержание
[править] Настройка на маршрутизаторах и коммутаторах
[править] Пример топологии
[править] Включение HSRP на интерфейсе
Создание групп и назначение виртуальных IP-адресов на маршрутизаторах (включение HSRP):
Если не указывать номер группы в команде standby ip, то будет использоваться номер 0.
В HSRP существует ещё большое количество настроек, которые могут быть выполнены после включения HSRP на интерфейсе. Однако, рекомендуется сначала выполнить все настройки (например, аутентификация, таймеры), а затем включить HSRP на интерфейсе.
Пример настройки двух групп для dyn1 и dyn3 (настройки одинаковые на обоих маршрутизаторах):
Хотя, для того чтобы HSRP работал достаточно указать виртуальный IP-адрес только на одном маршрутизаторе, Cisco рекомендует указывать адрес на всех маршрутизаторах.
[править] Изменение версии протокола
По умолчанию используется версия 1.
[править] Задание имени группы
Пример настройки имени для группы 1 на маршрутизаторе dyn1:
Имя группы имеет локальное значение.
Имя группы используется для связки HSRP с другими функциями маршрутизатора. Например, при использовании HSRP вместе с IPsec или NAT.
[править] Настройка приоритета маршрутизатора
Настройка приоритета. Диапазон значений от 0 до 255 (по умолчанию значение 100):
Изменение приоритета по умолчанию для группы 1 на dyn1 (на dyn3 аналогично изменен приоритет для группы 3):
[править] Настройка preempt
Режим preempt позволяет маршрутизатору с более высоким приоритетом перехватывать роль active маршрутизатора. По умолчанию режим preempt выключен.
Включение режима preempt:
[править] Виртуальный MAC-адрес
[править] Track
[править] Пример настройки
Пример настройки для маршрутизатора dyn1. Отслеживается состояние интерфейса fa1/0. Если интерфейс не работает, то все HSRP-группы на интерфейсе fa0/0 будут выключены.
Настройка выключения группы 1:
Если теперь выключить интерфейс fa1/0, то группы 1 и 3 на интерфейсе fa0/0 перейдут в состояние Init:
[править] Настройка таймеров
Значение таймеров для всех маршрутизаторов в одной группе должно быть одинаковое. Значения таймеров маршрутизатор может получить от active маршрутизатора.
Изменение таймеров HSRP на интерфейсе:
Изменение таймеров для группы 1 на dyn1:
Так как dyn1 для группы 1 является active маршрутизатором, то аналогичные значения таймеров в этой группе будут и для dyn3.
Если, например, изменить таймеры на маршрутизаторе dyn1 для группы 3, в то время как он не является для неё active маршрутизатором, то реально использоваться будут таймеры пришедшие от active маршрутизатора (dyn3). Если dyn1 станет active в группе 3, то тогда будут использоваться настроенные таймеры.
Пример отображения информации о dyn1, когда для группы 3 он является standby и таймеры отличные от настроенных на active:
[править] Настройка аутентификации
Пример настройки аутентификации для двух групп на маршрутизаторе dyn1:
[править] Настройка параметров HSRP Gratuitous ARP
[править] Задержка включения HSRP на интерфейсе
[править] Отправка trap протокола HSRP
[править] Просмотр информации
Варианты команд просмотра настроек:
Просмотр краткой информации о группах:
Просмотр информации о всех включенных группах HSRP:
Просмотр информации группе 1 на интерфейсе fa0/0:
Просмотр информации о настроенных значениях задержки:
Просмотр информации о соседях:
Просмотр информации о настройках ICMP redirect:
[править] Пример настройки HSRP на коммутаторах 3го уровня
На рисунке изображена топология, которая будет использоваться в данном примере. Настройка HSRP будет выполняться для коммутаторов DSW1 и DSW2.
На коммутаторах DSW1 и DSW2 порты Po1, Po2 и Po3 это агрегированные каналы (EtherChannel), которые переведены в режим 3го уровня и не описаны в настройках.
[править] IP-адресация и VLAN
На рисунке отмечены VLAN:
Принципы назначения адресов одинаковы для всех VLAN, меняется только третий октет в адресах. Адресация на примере VLAN 101:
[править] Spanning-tree
Топология построена таким образом, чтобы в ней не было петель на канальном уровне. Однако, на коммутаторах включен Rapid-PVST+ для защиты от случайных петель.
[править] Настройка HSRP на примере VLAN 101 коммутатора DSW1
[править] Конфигурация коммутаторов
[править] DSW1 и DSW2
[править] ASW1 и ASW2
[править] NAT и HSRP
Использование HSRP вместе с трансляцией адресов описано на странице Cisco NAT.
Разделение нагрузки с HSRP
Параметры загрузки
Содержание
Введение
Этот документ содержит пример настройки протокола Hot Standby Router Protocol (HSRP), которая позволит использовать несколько путей для доступа к определенному получателю.
Предварительные условия
Требования
Для данного документа нет особых требований.
Используемые компоненты
Данный документ не ограничен отдельными версиями программного и аппаратного обеспечения.
Сведения, представленные в данном документе, были получены на тестовом оборудовании в специально созданных лабораторных условиях. При написании данного документа использовались только данные, полученные от устройств с конфигурацией по умолчанию. При работе с реально функционирующей сетью необходимо полностью осознавать возможные последствия выполнения команд до их применения.
Теоретические сведения
HSRP часто используется для повышения отказоустойчивости сетей, но использование этого протокола может также привести к снижению эффективности передачи данных в сети. В примере в данном документе присутствуют два пути от сети узла к сети сервера. Для обеспечения избыточности HSRP поддерживается между R1 и R2, каждый из которых может стать активным маршрутизатором и «завладеть» виртуальным IP-адресом HSRP. Второй маршрутизатор становится резервным, но может вновь стать активным, если предыдущий активный маршрутизатор перестает работать. Дополнительная информация об активном и резервном маршрутизаторах представлена в разделе Как использовать команды standby preempt и standby track.
Адрес шлюза узлов по умолчанию был назначен в качестве виртуального IP-адреса HSRP этих маршрутизаторов. Когда главным узлам требуется послать пакеты на серверную сеть, они посылают их на свои шлюзы по умолчанию или на любой активный маршрутизатор. Поскольку активен только один маршрутизатор, пакеты от узлов к серверам проходят только по одному из двух доступных путей.
Примечание. В зависимости от конфигурации R3 пакеты, возвращаемые с серверов на узлы, могут использовать оба обратных пути. Также пакеты, возвращаемые с серверов на узлы, не должны проходить через активных маршрутизатор.
Условные обозначения
Дополнительные сведения об условных обозначениях см. в разделе Технические советы Cisco. Условные обозначения.
Настройка
В этом разделе приводятся сведения о настройке функций, описанных в данном документе.
Примечание. Для поиска дополнительной информации о командах в данном документе используйте средство Command Lookup ( только для зарегистрированных клиентов ).
Схема сети
В данном разделе используются следующие настройки сети:
Конфигурации
В этом разделе используются следующие конфигурации:
HSRP под прицелом
Содержание статьи
Эффективным средством защиты от сбоев служит построение отказоустойчивых решений. Особенно это актуально там, где малейший простой может обернуться серьезными потерями. Чтобы такого не случилось, были разработаны специальные протоколы: всем известный STP, разнообразные протоколы агрегации каналов, протоколы, обеспечивающие отказоустойчивость шлюза по умолчанию. Однако, концентрируясь на этом свойстве, очень часто упускают из виду безопасность. Чем может обернуться отказоустойчивость шлюза по умолчанию? Давай разберемся!
WARNING!
Вся информация предоставлена исключительно в ознакомительных целях. Ни автор, ни редакция не несут ответственности за любой возможный вред, причиненный материалами данной статьи.
Отказоустойчивость
Как гласит определение, отказоустойчивость — это свойство технической системы сохранять свою работоспособность после отказа одного или нескольких составных компонентов. Представь ситуацию, когда из сети существует один-единственный выход во внешний мир и этот выход является шлюзом по умолчанию. Тогда в случае его падения уже ничто не поможет — неважно будет, насколько качественно спроектирована сеть, клиенты просто не смогут выйти за пределы своей подсети. Именно такие проблемы и призваны решать протоколы отказоустойчивости. Но у них есть свои нюансы, которые могут стать серьезной угрозой для безопасности системы. Поэтому в рамках данной статьи мы коротко коснемся основных видов отказоустойчивости и остановим свое пристальное внимание на безопасности протоколов HSRP и VRRP, призванных обеспечить безотказную работу шлюза по умолчанию. Поехали!
Рассматривать различные виды отказоустойчивости начнем с канального уровня модели OSI. На канальном уровне находится известнейший протокол Spanning Tree. STP просто предотвращает возникновение петель в сети. Если кадр канального уровня приходит на коммутатор, а у того нет в САМ-таблице МАС-адреса получателя, он отправляет фрейм на все свои порты в надежде, что хоть кто-то сможет на него ответить. В среде с одним свичем на этом все и заканчивается, а вот если свичей несколько, то могут быть нюансы. Этот кадр может уходить на все порты на каждом коммутаторе, и в случае наличия петли этот процесс может повторяться бесконечно. STP определяет так называемый root bridge (центр сети, куда сходится все дерево STP) и создает единый путь без петель между всеми коммутаторами. Стоимость пути определятся алгоритмом, основанным на количестве переходов и скорости порта, но может быть легко переназначена вручную. В итоге с единым путем к каждому мосту в сети кадры к неизвестным адресатам проходят каждый свитч один раз и затем отбрасываются, если хост-получатель оказался не в сети.
Казалось бы, при чем здесь отказоустойчивость? В случае отказа канала коммутатор обнаруживает проблему и поднимает резервный линк. На самом деле это не такой уж и простой процесс, но тема сегодняшнего разговора не STP, поэтому не будем сильно углубляться и двинемся дальше.
EtherСhannel
Также на канальном уровне обеспечивает отказоустойчивость EtherСhannel/LACP/PAgP. По сути, это взятие нескольких физических линков и агрегирование их в один логический.
Простейший вариант достижения отказоустойчивости на уровне одиночного порта и на уровне одиночного канала. EtherСhannel собирается ради надежности, увеличение скорости — это уже побочный эффект.
Достаточно распространено заблуждение, что с увеличением каналов увеличивается пропускная способность. Мол, берем четыре канала, 4 · 100 — получаем 400 Мбит/c. Но в реальности дела обстоят несколько иначе. Просто для каждого источника и назначения выбирается путь, условно говоря, трафик от хоста А до хоста Б будет идти по одному линку, а трафик от хоста А до С может идти по другому. В итоге если взять четыре линка, то для четырех одновременных соединений может быть доступно 100 Мбит/c.
Но возможны сценарии, когда скорость никак не поднимется, — например, два мощных сервера смотрят несколькими линками в коммутатор и передают в пределах одной TCP-сессии большой объем данных. В этом случае, независимо от количества каналов, использоваться будет только один линк и никакого увеличения скорости не будет.
NIC teaming
NIC teaming, или агрегирование сетевых адаптеров, — это отказоустойчивость на аппаратном уровне для серверов. Обычно решается установкой дополнительных драйверов, созданием виртуального сетевого адаптера и затем добавлением физического сетевого адаптера для создания агрегации (team).
В большинстве случаев такая агрегация работает как пара активный/пассивный, и пассивный сетевой адаптер включается работу в случае потери канала активным. Но здесь могут быть и нюансы, когда поддерживается стандарт 802.3ad. Тогда уже может включаться балансировка, как и в случае EtherChannel.
HSRP & VRRP
Ну а на третьем уровне модели OSI обитают протоколы HSRP и VRRP. Они-то и обеспечивают отказоустойчивость на сетевом уровне. Если шлюз по умолчанию (в пределах одной подсети) уйдет в офлайн, тогда ни один хост в этой подсети не сможет получить доступ за пределами своего сегмента. Эти два протокола (HSRP и VRRP) призваны настроить дополнительный маршрутизатор (или L3-свитч), который выступит в роли резервного на случай падения основного. Если основной шлюз станет недоступен, то его сразу подменит резервный и клиенты даже не заметят, что что-то произошло.
Кроме отказоустойчивости, эти протоколы помогут решить задачи по обновлению железа и софта с минимальным влиянием на клиентов в обычное рабочее время. Самые известные протоколы, которые входят в эту группу, — HSRP, VRRP и GLBP. HSRP (Hot Standby Router Protocol) существует уже достаточно давно (c 1994 года) и является проприетарным решением от Cisco. VRRP (Virtual Router Redundancy Protocol) — это открытый протокол (появился в 1999-м), текущая его версия определена в RFC 5798. Несмотря на то что этот протокол позиционируется как открытый стандарт, компания Cisco говорит, что похожий протокол был запатентован и лицензирован. И хотя никаких патентных претензий не было, открытость VRRP остается под сомнением. Ну и GLBP (Gateway Load Balancing Protocol), относительно свежий протокол (создан Cisco для Cisco в 2005 году), как можно догадаться из названия, отличается от предыдущих тем, что кроме отказоустойчивости поддерживает и балансировку нагрузки.
Ну а сегодня мы подробно рассмотрим протокол HSRP, причем особое внимание уделим его безопасности.
Как работает HSRP
HSRP может работать для двух и более маршрутизаторов (шлюзов), один из которых будет активный, один standby, а остальные будут просто ожидающими. Надо сказать, что протокол этот не особо масштабируемый. Сделано это и потому, что если активный маршрутизатор забросают пакетами с вопросом, живой ли он, то он наверняка упадет именно по этой причине. MAC-адрес активного генерируется автоматически, а виртуальный IP-адрес назначается вручную. В итоге тот, кто стал активным, отзывается на ARP-запросы про виртуальный IP, отправляя ARP-ответ с виртуальным маком.
Собираем топологию
Хакер #182. Все о Bitcoin
Виртуальная лаборатория
Для того чтобы опробовать все описанное в статье, вовсе не обязательно использовать настоящее оборудование. Для исследований вполне можно обойтись и эмулятором маршрутизаторов Cisco, например используя GNS3/Dynamips.
Сам GNS3 является, по сути, удобной графической оболочкой над непосредственно эмулятором Dynamips. Распространяются они бесплатно, под лицензией GPL, но, естественно, без прошивок роутеров Cisco — подразумевается, что пользователи будут их брать со своих железных роутеров.
Немного ознакомившись, что собой представляет HSRP-протокол, начнем собирать стенд для предстоящих испытаний. R1 будет основным HSRP-роутером, а R2 — резервным (см. рис. 1).
И сконфигурируем их следующим образом. На маршрутизаторе R1:
На маршрутизаторе R2:
Когда мы будем проверять статус HSRP на R1, будет видно, что HSRP содержит виртуальный MAC-адрес, отличающийся от реального физического и сгенерированный с учетом номера группы (0000:0с07:acXX, где номер группы 10 превращается в 0x0a и дописывается вместо XX).
Убедившись, что все работает (R1 числится как Active), можно начать исследование вопросов безопасности протокола HSRP.
Исследуем цель
Для начала давай проснифаем трафик на предмет интересных пакетов. Предположим, что мы находимся в пределах одного широковещательного домена. Результат такого сканирования представлен на рис. 2.
Как оказалось, вся информация передается чистым текстом, более того, несмотря на то что в настройках не устанавливался какой-либо пароль, он все-таки используется, и, как видно, по умолчанию (cisco). Теперь, когда мы знаем номер группы HSRP и ключевое слово, ничто не мешает нам провести атаку.
Для того чтобы провести атаку на протокол HSRP, можно как использовать специализированные утилиты вроде yersinia, так и действовать вручную, при помощи отличного инструмента под названием Scapy. Мы свой выбор остановим, конечно же, на втором варианте. Действовать будем прямо в интерактивном режиме, запускаем и начинаем назначать переменные:
Сразу создали переменные по протоколам IP и UDP, не забывая, что пакеты HSRP ходят по мультикасту. Перед тем как собрать HSRP, не помешает посмотреть, какие вообще есть в нем опции:
Видно, что большинство параметров (в том числе и пароль) уже заполнены разработчиками, нам остается заполнить только несколько:
Все готово, пакет можно окончательно собрать и отправить в путь:
В данном случае пакеты будут отправляться каждые три секунды, через интерфейс eth0, до тех пор пока это действие не будет прервано (например, escape-последовательностью ^C).
Результаты атаки
Как только пакеты начнут разлетаться на мультикаст-адрес, легитимные роутеры сразу же сменят свои статусы (см. рис. 3), а маршрутизатор атакующего станет активным и собственно главным. Что уже, безусловно, предоставит массу возможностей атакующему — фактически весь трафик начнет проходить через него. Теперь уже лишь бы хватило мощности и пропускной способности.
Рис. 3. Реакция маршрутизаторов
Для того чтобы все вернуть на круги своя, нужно просто прервать бесконечную отправку пакетов, и после истечения таймеров роутеры восстановят свои заданные роли.
Бронебойная защита
Тем не менее дела с безопасностью HSRP обстоят не так уж и плохо. Существует возможность использовать MD5-хеширование. MD5-хеш вычисляется в каждом HSRP-пакете, и секретный ключ известен только легитимным участникам группы HSRP. Строка с MD5-хешем отправляется в каждом пакете; как только пакет получен, участники пересчитывают хеш, и если значение совпадает, то сообщение принимается. Сложность проведения атаки в таких условиях в том, что хеш используется не в качестве ключа, а для проверки подлинности сообщения.
Включить использование MD5-хеширования можно следующей командой:
Но можно пойти дальше и использовать не key-string, а key-chain. В итоге создается связка из нескольких ключей, которая затем привязывается к экземпляру HSRP и поочередно меняется. В таком случае защита серьезно усиливается, так как нужно знать все пароли в связке и расположить их в правильном порядке, потому что HSRP будет в цикле перебирать пароли по номеру и периодически их запрашивать.
Рис. 4. Пример HSRP с использованием MD5
К слову, не так давно появились изменения в модуле Scapy, и теперь он умеет разбирать пакеты HSRP, где используется MD5 (даже Wireshark в стандартном варианте этого не умеет).
VRRP, кратко
Если бегло рассмотреть VRRP, то здесь все очень похоже. Вначале конфигурация, опять все очень просто. На R1:
Как можно заметить, основные отличия здесь в синтаксисе команд.
И проверяем результат.
Рис. 6. VRRP после атаки
Как видишь, тут тоже все прошло успешно.
HSRPv1 vs HSRPv2
Основные отличия между первой и второй версией протокола HSRP проявляются в следующем.
Виртуальный MAC-адрес (где x — номер группы HSRP):
Итоги
Протоколы обеспечения отказоустойчивости, или, как их еще называют, FHRP (First Hop Redundancy Protocol), достаточно широко распространены и неплохо делают свою работу. Но при их использовании редко уделяют должное внимание вопросам безопасности. Как ты видел, настройка занимает буквально две-три команды, и все начинает работать. Но при этом остается большая дыра и широкий простор для злоумышленников. Надеюсь, после прочтения данной статьи, что бы ты ни делал, какое бы оборудование ни настраивал, ты всегда будешь оценивать производимые действия с точки зрения безопасности. Будь начеку!