root guard cisco что это
Spanning Tree Protocol Root Guard Enhancement
Available Languages
Download Options
Contents
Introduction
This document explains the Spanning Tree Protocol (STP) root guard feature. This feature is one of the STP enhancements that Cisco created. This feature enhances switched network reliability, manageability, and security.
Prerequisites
Requirements
There are no specific requirements for this document.
Components Used
This document is not restricted to specific software and hardware versions.
Conventions
Refer to Cisco Technical Tips Conventions for more information on document conventions.
Feature Description
The standard STP does not provide any means for the network administrator to securely enforce the topology of the switched Layer 2 (L2) network. A means to enforce topology can be especially important in networks with shared administrative control, where different administrative entities or companies control one switched network.
The forwarding topology of the switched network is calculated. The calculation is based on the root bridge position, among other parameters. Any switch can be the root bridge in a network. But a more optimal forwarding topology places the root bridge at a specific predetermined location. With the standard STP, any bridge in the network with a lower bridge ID takes the role of the root bridge. The administrator cannot enforce the position of the root bridge.
Note: The administrator can set the root bridge priority to 0 in an effort to secure the root bridge position. But there is no guarantee against a bridge with a priority of 0 and a lower MAC address.
The root guard feature provides a way to enforce the root bridge placement in the network.
The root guard ensures that the port on which root guard is enabled is the designated port. Normally, root bridge ports are all designated ports, unless two or more ports of the root bridge are connected together. If the bridge receives superior STP Bridge Protocol Data Units (BPDUs) on a root guard-enabled port, root guard moves this port to a root-inconsistent STP state. This root-inconsistent state is effectively equal to a listening state. No traffic is forwarded across this port. In this way, the root guard enforces the position of the root bridge.
The example in this section demonstrates how a rogue root bridge can cause problems on the network and how root guard can help.
In Figure 1, Switches A and B comprise the core of the network, and A is the root bridge for a VLAN. Switch C is an access layer switch. The link between B and C is blocking on the C side. The arrows show the flow of STP BPDUs.
In Figure 2, device D begins to participate in STP. For example, software-based bridge applications are launched on PCs or other switches that a customer connects to a service-provider network. If the priority of bridge D is 0 or any value lower than the priority of the root bridge, device D is elected as a root bridge for this VLAN. If the link between device A and B is 1 gigabit and links between A and C as well as B and C are 100 Mbps, the election of D as root causes the Gigabit Ethernet link that connects the two core switches to block. This block causes all the data in that VLAN to flow via a 100-Mbps link across the access layer. If more data flow via the core in that VLAN than this link can accommodate, the drop of some frames occurs. The frame drop leads to a performance loss or a connectivity outage.
The root guard feature protects the network against such issues.
The configuration of root guard is on a per-port basis. Root guard does not allow the port to become an STP root port, so the port is always STP-designated. If a better BPDU arrives on this port, root guard does not take the BPDU into account and elect a new STP root. Instead, root guard puts the port into the root-inconsistent STP state. You must enable root guard on all ports where the root bridge should not appear. In a way, you can configure a perimeter around the part of the network where the STP root is able to be located.
In Figure 2, enable root guard on the Switch C port that connects to Switch D.
Switch C in Figure 2 blocks the port that connects to Switch D, after the switch receives a superior BPDU. Root guard puts the port in the root-inconsistent STP state. No traffic passes through the port in this state. After device D ceases to send superior BPDUs, the port is unblocked again. Via STP, the port goes from the listening state to the learning state, and eventually transitions to the forwarding state. Recovery is automatic; no human intervention is necessary.
This message appears after root guard blocks a port:
Availability
Root guard is available in Catalyst OS (CatOS) for Catalyst 29xx, 4500/4000, 5500/5000, and 6500/6000 in software version 6.1.1 and later. For the Catalyst 6500/6000 that runs Cisco IOS® system software, this feature was first introduced in Cisco IOS Software Release 12.0(7)XE. For the Catalyst 4500/4000 that runs Cisco IOS system software, this feature is available in all releases.
For the Catalyst 2900XL and 3500XL switches, root guard is available in Cisco IOS Software Release 12.0(5)XU and later. The Catalyst 2950 series switches support the root guard feature in Cisco IOS Software Release 12.0(5.2)WC(1) and later. The Catalyst 3550 series switches support the root guard feature in Cisco IOS Software Release 12.1(4)EA1 and later.
Configuration
CatOS Configuration
The root guard configuration is on a per-port basis. On Catalyst switches that run CatOS, configure root guard in this way:
In order to verify whether the root guard is configured, issue this command:
Cisco IOS Software Configuration for Catalyst 6500/6000 and Catalyst 4500/4000
On the Catalyst 6500/6000 or Catalyst 4500/4000 switches that run Cisco IOS system software, issue this set of commands in order to configure STP root guard:
Note: Cisco IOS Software Release 12.1(3a)E3 for the Catalyst 6500/6000 that runs Cisco IOS system software changed this command from spanning-tree rootguard to spanning-tree guard root. The Catalyst 4500/4000 that runs Cisco IOS system software uses the spanning-tree guard root command in all releases.
Cisco IOS Software Configuration for Catalyst 2900XL/3500XL, 2950, and 3550
On the Catalyst 2900XL, 3500XL, 2950, and 3550, configure switches with root guard in interface configuration mode, as this example shows:
What Is the Difference Between STP BPDU Guard and STP Root Guard?
BPDU guard and root guard are similar, but their impact is different. BPDU guard disables the port upon BPDU reception if PortFast is enabled on the port. The disablement effectively denies devices behind such ports from participation in STP. You must manually reenable the port that is put into errdisable state or configure errdisable-timeout.
Root guard allows the device to participate in STP as long as the device does not try to become the root. If root guard blocks the port, subsequent recovery is automatic. Recovery occurs as soon as the offending device ceases to send superior BPDUs.
For more information about BPDU guard, refer to this document:
Does the Root Guard Help with the Two Roots Problem?
There can be a unidirectional link failure between two bridges in a network. Because of the failure, one bridge does not receive the BPDUs from the root bridge. With such a failure, the root switch receives frames that other switches send, but the other switches do not receive the BPDUs that the root switch sends. This can lead to an STP loop. Because the other switches do not receive any BPDUs from the root, these switches believe that they are the root and start to send BPDUs.
When the real root bridge starts to receive BPDUs, the root discards the BPDUs because they are not superior. The root bridge does not change. Therefore, root guard does not help to resolve this issue. The UniDirectional Link Detection (UDLD) and loop guard features address this issue.
For more information on STP failure scenarios and how to troubleshoot them, refer to this document:
Cisco Security
Материал из Xgu.ru
|
Данная страница находится в разработке. Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной. |
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
Содержание
[править] Безопасность канального уровня
[править] CAM table overflow
использовать. Таблица коммутации заполняется и после этого коммутатор работает как хаб.
Это значит, что после выполнения атаки, подключившись к любому порту коммутатора, можно перехватывать весь трафик в пределах широковещательного домена, которому принадлежит порт.
Это не касается тех записей в таблице коммутации, которые были до начала выполнения атаки. Трафик к компьютерам, MAC-адреса которых уже были в таблице коммутации, отправляется не широковещательно.
Атаку можно выполнить, например, с помощью утилиты macof, которая входит в dsniff.
Атака сама по себе не влияет на работу VLAN, но может быть основой для выполнения последующих атак на VLAN или других типов атак.
[править] Пример выполнения атаки
Сначала на трех коммутаторах почистить таблицы коммутации:
После этого начать атаку. Атака с помощью macof утилиты, которая входит в dsniff:
После этого коммутатор работает как хаб.
Если пингануть с машины одного студента машину другого или маршрутизатор, то трафик видят все в одном широковещательном домене.
[править] Защита от атаки
Функция port security.
[править] STP Manipulation
Отправка BPDU корневого коммутатора:
[править] BPDU Guard
Перевод в режим portfast всех access портов:
Посмотреть суммарную информацию о включенных функциях:
Посмотреть включен ли portfast на порту:
Включение bpduguard на всех портах portfast:
[править] Root Guard
The root guard ensures that the port on which root guard is enabled is the designated port. Normally, root bridge ports are all designated ports, unless two or more ports of the root bridge are connected together. If the bridge receives superior STP Bridge Protocol Data Units (BPDUs) on a root guard-enabled port, root guard moves this port to a root-inconsistent STP state. This root-inconsistent state is effectively equal to a listening state. No traffic is forwarded across this port. In this way, the root guard enforces the position of the root bridge.
Если на интерфейсе не должны появляться сообщения корневого коммутатора, то на нем можно настроить Root Guard:
[править] Отличия между STP BPDU Guard и STP Root Guard
BPDU guard and root guard are similar, but their impact is different. BPDU guard disables the port upon BPDU reception if PortFast is enabled on the port. The disablement effectively denies devices behind such ports from participation in STP. You must manually reenable the port that is put into errdisable state or configure errdisable-timeout.
Root guard allows the device to participate in STP as long as the device does not try to become the root. If root guard blocks the port, subsequent recovery is automatic. Recovery occurs as soon as the offending device ceases to send superior BPDUs.
[править] DHCP attack
DHCP starvation DHCP spoofing
[править] DHCP Snooping
[править] ARP-spoofing (ARP-poisoning)
[править] VLAN Trunking Protocol
[править] VLAN Management Policy Server (VMPS)/ VLAN Query Protocol (VQP)
[править] Cisco Discovery Protocol (CDP)
[править] Storm Control
[править] Private VLAN (PVLAN)
[править] Безопасность VLAN
[править] VLAN Hopping
Поднятие транка (атака с использованием протокола DTP). Отправка сообщения DTP для поднятия транка между компьютером атакующего и коммутатором:
Двойное тегирование фрейма
[править] Уязвимости PVLAN
[править] Port Security
[править] IP Source Guard
[править] Dynamic ARP Inspection
[править] Аутентификация при доступе к сети
[править] Cisco Network Foundation Protection
[править] Control Plane
[править] Control Plane Protection
CPPr выделяет три подынтерфейса:
[править] Настройка CoPP
Поддерживаются такие критерии для классификации в class-map:
В policy-map, которая используется для CoPP, такие ограничения:
Применение политики к host-подынтерфейсу:
[править] Настройка Port Filter Policy
Критерии для class-map type port-filter:
Пример настройки class-map для фильтрации портов:
Настройка policy-map (единственное возможное действие drop):
Применение политики к host-подынтерфейсу:
Политика Port Filter может быть применена только к подынтерфейсу host во входящем направлении.
Spanning Tree Protocol (STP)
Прежде чем переходить к пояснению для чего нужен протокол STP, надо ввести понятие широковещательной петли.
Широковещательная петля
Широковещательная петля создается, когда имеется больше одного соединения между двумя коммутаторами (или соединены два порта на одном и том же коммутаторе). Широковещательная петля приводит к тому, что широковещательные фреймы (фреймы, которые коммутатор распространяет на все порты, кроме того откуда он пришел, подробнее тут) будут загружать сеть и в итоге приведут к неработоспособности (широковещательному шторму). Что бы лучше понять что такое широковещательная петля, обратимся к рисунку 7.1.
На рисунке 7.1 мы можем видеть, как PC0 отправляет широковещательный фрейм на коммутатор sw-1, коммутатор отправляет его на все порты, кроме того откуда он пришел. Остальные коммутаторы рассылают этот фрейм по такому же принципу. Таким образом в сети образовался “неубиваемый” широковещательный фрейм, который не только кружит между коммутаторами но и нагружает рабочие станции (при том даже PC0, с которого все началось). Широковещательные фреймы очень популярны в сетях (например, их используют протоколы ARP, DHCP и т.д.), поэтому буквально за минуту их может быть тысяча, а через 5 минут оборудование откажется что-либо передавать из-за того что не справляется со шквалом широковещательных фреймов (широковещательным штормом).
Подведем итог. Широковещательные петли – это плохо.
Spanning Tree Protocol (STP)
Spanning Tree Protocol используется для предотвращения образования широковещательных петель. STP программно выключает “лишние” (или запасные) каналы связи и в итоге создает топологию в виде дерева. STP постоянно отслеживает топологию сети, поэтому при “падении” основных каналов связи, STP по возможности переключится на “запасные”.
Как мы уже выяснили STP создает из коммутаторов топологию в виде дерева, это значит, что в этой топологии есть корень (далее root) и остальные коммутаторы, которые из него “произрастают” (рисунок 7.2). Таким образом можно выделить основные принципы работы STP:
Виды портов в топологии STP
На рисунке 7.3 мы добавили немного “лишних” каналов связи и подписали порты.
Рисунок 7.3 Обозначение портов в топологии STP
Обратите внимание, что у всех коммутаторов есть Root Port (RP), кроме root. Все порты у коммутатора root всегда в состоянии Designated (DP).Non-Designated (NDP) порты разрывают широковещательные петли.
Выбор коммутатора в роли root
Все коммутаторы в топологии STP имеют идентификатор – Bridge ID. Bridge ID состоит из двух параметров: приоритет (далее priority) и MAC-адрес коммутатора. Записывается в таком формате – priority.MAC-адрес, например, 32768.0030.abcf.11e1. Именно благодаря этому параметру выбирается коммутатор в роли root.
На рисунке 7.4 мы добавили значения Bridge ID для всех коммутаторов.
Рисунок 7.4 Bridge ID
Как мы можем заметить коммутатору SW1 не повезло, он не получил роль root, т.к. его MAC-адрес не самый маленький по значению. Зато SW1 возьмет на себя роль root, если текущий корневой коммутатор выйдет из строя, благодаря наименьшему приоритету среди остальных коммутаторов.
Bridge Protocol Data Unit (BPDU)
В самом начале построения топологии STP (например, все коммутаторы перезагрузили), каждый коммутатор считает себя в роли root и рассылает, так называемые hello BPDU – stp-сообщения, помогающие определить кому будет назначена роль root, в этих сообщениях рассылается bridge id (BID).При получении BPDU с меньшим ВID, коммутатор перестает рассылать свои hello BPDU и только передает все остальные BPDU. В итоге, остается только один root с наименьшим ВID.
Когда stp-топология построена, т.е. в топологии найден root, то он начинает рассылать BPDU (stp-сообщения), содержащие следующую информацию:
Давайте разберем более подробно понятие “стоимость пути”. Каждый линк между коммутаторами имеет значение – “стоимость”, это значение определяется из расчета скорости на этом линке. В таблице 7.1 представлены эти соотношения.
Таблица 7.1 Стоимость канала в соответствии с его скоростью
Коммутатор в роли root (далее root bridge) рассылает BPDU каждые 2 секунды. Выходит это сообщение из root bridge со стоимостью пути равной 0, проходя остальные коммутаторы в stp-топологии, стоимости пути увеличивается.
Рисунок 7.5 Движение BPDU по сети
Рассмотрим рисунок 7.5, как уже было сказано, “рождается” BPDU на Root Bridge и рассылается по всем портам. В целях понимания расчета стоимости пути, нам будет достаточно рассмотреть только одну ветку движения сообщения BPDU:
Root Port, Designated Port или Non-Designated port?
После того как Root Bridge был выбран среди коммутаторов, каждый коммутатор определяет у себя Root Port, он может быть только один. В этом выборе участвуют все порты на которые пришло BPDU. Порядок выбора:
Например, на коммутатор SW1 придет два BPDU со стороны root и со стороны SW2, в этом случае все решит первый критерий, т.к. со стороны root поле “Root Path Cost” будет равно 0, а со стороны SW2, это поле равно 19. Теперь коммутаторы SW1 и SW2 знают, что между ними “запасной” канал связи (используется в случае падения основного канала). Им надо определить, кто из них оставит порт в состоянии Designated, а кто переведет в состояние Non-Designated (заблокирован). Коммутатор, у которого следующие критерии, оставляет порт в состоянии Designated:
В нашем примере значение “Root Path Cost” одинаковое, поэтому разрешится “спор” между SW2 и SW1 по второму критерию. Так как у SW1 наименьшей приоритет, следовательно он оставляет порт в состоянии Designated.
Режимы работы порта в STP
Следует начать с режима Disabled – порт не участвует в работе STP. С остальными режимами сложнее.
Когда порт только включили, он проходит следующие режимы:
Теперь, когда мы знаем режимы порта, давайте разберемся как перестраивается STP-топология и сколько времени на это уходит.
Коммутатор понимает, что-то не так, когда на Root Port больше не приходят BPDU, но при этом у него есть Non-Designated порт (находится в режиме Blocking), на который BPDU приходят, и он решает определить новый Root Port. Задержка по времени зависит от того, как “вышел из строя” Root Port. Если он явно выключился (состояние down), то коммутатор сразу переводит Non-Designated порт в режим Listening, итого на переключение уйдет 30 секунд. Если на Root Port не приходят BPDU и при этом он в состоянии up, то вначале он дождется истечения таймера на получение BPDU, а уже потом будет переводить Non-Designated порт в режим Listening, итого 50 секунд.
Разновидности STP
Таблица 7.2 Разновидности STP
Название | Имя стандарта |
---|---|
PVST (Per VLAN) | Только на cisco-устройствах |
RSTP (Rapid) | 802.1w |
R-PVST (Rapid) | Только на cisco-устройствах |
MSTP (Multiple) | IEEE 802.1s, позже вошел в стандарт IEEE 802.1Q-2005 |
PVST (Per VLAN Spanning Tree) – все то же самое что и в STP, только stp-топология на каждый vlan своя.
Rapid STP – способен реагировать на изменения stp-топологии в течении 6 секунд (STP 30-50 секунд). Нет режима Listening и добавили новые состояние вместо Non-Designated – Alternate и Backup.
Общая информация
Packet Tracer version: 6.2.0
Рабочий файл: скачать
Тип: Теория и практика
Версия файла: 2.0
Уже получили: 107 пользователей
Получить достижение
Код активации можно получить выполнив практическое задание
Уже получили 97 пользователей
Начальные данные
В данной практической работе будет использоваться схема сети, которая представлена на рисунке ниже.
Схема сети для практической работы
Все “манипуляции” с коммутаторами можно осуществлять только при помощи PC0. Адреса коммутаторов в сети (пароль cisco123):
Выполнение
Изучить команду show spanning-tree
В cisco-устройствах нет чистого stp, есть pvstp (per vlan, для каждого vlan), поэтому здесь будет рассмотрена работа именно этого протокола.
В выводе содержится очень много информации, давайте разберемся, что есть что. В начале stp для Vlan 1 включен по умолчанию, а т.к. по умолчанию все порты в vlan 1, создать широковещательную петлю не получится (с коммутаторами “из коробки”). Строка Spanning tree enabled protocol ieee означает, что stp включен, а ieee указывает на стандартную версию stp (если бы была реализация Rapid STP, то мы увидели rstp).
Со слов Root ID идет описание stp-корня (root). Приоритет у root – Priority 32769. Root MAC-адрес, который используется в Bridge ID – Address 0002.17D3.89B6. Стоимость до root, в данном случае от sw-core-1, – Cost 38 (у root этот параметр равен 0). Root port – порт который ближе всего к root коммутатору – Port 22(FastEthernet0/22) и таймеры, которые передает root – Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec. Со слов Bridge ID идет описание параметров локального stp (stp настроек на данном коммутаторе, в нашем случае на sw-core-1).
Под описанием stp в каждом vlan, присутствует таблица портов, участвующих в stp-топологии, там расписаны их состояния (Role, можно увидеть, какие порты в режиме Designated и “кто есть” Root Port), стоимости (в колонке Cost), режимы работы (например, FWD – Forwarding), приоритеты и номера (например, 128.22).
Изменить конфигурацию PVSTP
В имеющейся сети stp имеет настройки по умолчанию. Надо сделать так что бы sw-core-1 был Bridge Root (корнем) для vlan 1 и 44 и запасным Bridge Root для vlan 55. sw-core-2 был Bridge Root для vlan 55 и запасным Bridge Root для vlan 1 и 44.
Основной критерий выбора Bridge Root находится в Bridge ID, изменив приоритет, изменится и топология. Задать приоритет можно двумя способами – указав приоритет или вызвав преднастроенную команду. sw-core-1 мы будем настраивать, указывая преднастроенные команды, а в sw-core-2 мы будем явно указывать приоритет.
На рисунке 7.6 для нашего примера представлена схема stp-топологии (stp-дерева) для vlan 44 – без “запасных” (лишних) каналов связи. Вы можете сами отследить заблокированные порты и проверить данную схему.
Рисунок 7.6 STP-топология для vlan 44
Изучить изменение STP-топологии при отключении одного из активных “линков” (каналов связи)
В качестве эксперимента мы отключим порт Fa0/24 на коммутаторе sw-distr-1, который “смотрит” на порт Fa0/24 коммутатора sw-access-1, и посмотрим как изменится топология, но для начала изучим текущую топологию.
Следует заметить, что в понятии cisco, нет интерфейса с состоянием Non-Designated, а есть состояние Alternate (альтернативный).
В выводе команды show spanning-tree vlan 44 нас интересуют таблица интерфейсов. Fa0/24 на данный момент Root Port, т.е. если мы осуществим задуманное, коммутатор sw-access-1 потеряет связь с Root Bridge и начнет искать альтернативный путь.
Чтобы получить достижение не включайте этот порт.
Порт Fa0/24 на коммутаторе sw-access-1 больше не участвует в stp-топологии, зато порт Fa0/23 начинает проходить процедуру перехода в Root Port. Сразу после выключения Fa0/24 (на коммутаторе sw-distr-1) порт Fa0/23 (на коммутаторе sw-access-1) переходит из режима Blocking (BLK) в режим Listening (LSN) и находится в нем 15 секунд, далее переходит в режим Learning (LRN), где тоже находится 15 секунд, наконец переходит в состояние Forwarding (FWD) и становится новым Root портом.. Итого: на переключение ушло около 30 секунд.
Так же между PC1 и PC3 мы можем наблюдать потерю пакетов в момент перестроения stp-топологии. Из чего можно заключить, что перестроение топологии может привести к ошибкам в передаче данных.
На рисунке 7.7 представлена новая топология для vlan 44.
Рисунок 7.7 Измененная STP-топология для vlan 44
Рисунок 7.7.2 Анимированный путь
В примере, показанном выше, перестроение топологии заняло около 30 секунд, благодаря тому что Root Port “явно” выключился (на коммутаторе порт перешел в состояние down). Перестроение может занять 50 секунд, если Root Port останется включен, и на него просто перестанут приходить BPDU. Так и было бы, если бы между sw-distr-1 и sw-access-1 стоял еще один коммутатор. Время указано при условии, что все таймеры настроены по умолчанию.
STP утилиты
PortFast – функция, разрешающая порту пропускать режимы Listening и Learning, таким образом при включении порт сразу переходит в состояние Forwarding.
BPDU Guard – порт с такой функцией выключается, если на него приходит BPDU.
Root Guard – эта функция устанавливается на интерфейс коммутатора, если известно, что этот порт ни при каких условиях не станет Root Port. Если на такой порт приходит BPDU от потенциального Root Bridge, то он переходит в состояние root-inconsistent, что равносильно состоянию listening – через этот порт ничего не передается.
Добавьте на порт Fa0/2 коммутатора sw-access-1 функцию PortFast. Выключите этот порт и сразу включите, в Packet Tracer вы увидите, что он сразу загорится зеленым цветом. Если вы выключите и включите порт Fa0/1, который “смотрит” на PC1, то после включения порт будет подсвечен оранжевым цветом, т.к. после включения он проходит режимы Listening и Learning, и после 30 секунд загорится зеленым цветом (
обязательно настройте PortFast и оставьте эту конфигурацию
Общая информация
Packet Tracer version: 6.2.0
Рабочий файл: скачать
Тип: Самостоятельная работа
Версия файла: 2.0
Уже получили: 107 пользователей