Защита Edge-портов с помощью STP BPDU Guard
В документе описывается работа функции BPDU Guard при включении в глобальном режиме настройки STP (режим stp), а также приводятся рекомендации по её применению совместно с Edge-портами, в том числе при использовании команды глобального назначения портов Edge — stp edge-default enable.
Информация о версиях STP
Команды настройки, приведенные в данной статье совместимы с версиями STP:
- Spanning Tree Protocol (STP, IEEE 802.1D)
- Rapid Spanning Tree Protocol (RSTP, 802.1W)
- Multiple Spanning Tree Protocol (RSTP, 802.1s)
Допущения и общие данные: аббревиатура STP обозначает все семейство протоколов STP, если не указано иное.
Особое внимание уделено:
- различиям работы с Edge-портом и без него;
- переводу порта в состояние err-disable (error-down) при приёме BPDU;
- использованию команды автоматического восстановления после срабатывания защиты;
- использованию глобальной настройки Edge-портов (
stp edge-default enable) и её приоритету; - рекомендациям по порядку включения
edge-defaultиbpdu-guard; - пояснению использования BPDU Guard без дополнительных настроек Edge-port
Необходимые условия и предварительные требования
Перед включением BPDU-Guard в глобальном режиме настройки STP, рекомендуется выполнить один из вариантов настройки Edge портов. Невыполнение требований может привести к блокировке трафика.
- Вариант 1:
- настройка Edge-port должна быть активирована для всех портов глобально (
stp edge-port enble) - настройка Edge-port должна быть выключена (
stp edge-port disable) на портах , участвующих в топологии STP и/или к которым могут быть подключены коммутаторы - Вариант 2:
- настройка Edge-port должна быть выключена глобально для всех портов (
stp edge-default disable) - настройка Edge-port применена индивидуально к порту или группе портов, не предназначенных для подключения коммутаторов
- на коммутаторе должен быть включён и настроен один из вариантов STP
- aдминистратор должен понимать L2-топологию: какие порты подключены к конечным устройствам, а какие к другим коммутаторам (uplink/транки).
Назначение BPDU Guard
Описание функциональности и назначение
BPDU Guard — это защитный механизм, который отключает любой Edge-порт, если на нём обнаружены BPDU-кадры, в целях предотвращения возможности подключение коммутатора к пользовательскому Edge-порту;
На коммутаторах CIT 3200 активация BPDU Guard включается глобально в режиме настройки STP (режим config-stp) и безусловно активирует BPDU Guard для всех портов, которые являются Edge-портами.
Важно: команда
stp bpdu-guard enableоказывает влияние только на порты, настроенные как Edge-port и не зависит от их состояния Edge-port. Порт будет выключен при получении BPDU кадра, даже его состояне Edge порта не активно по факту самоопределенияPort Edged : config=enable / active=disable
Команды настройки
Выполнение предварительных требований
Пример выполнения предварительных треребований (вариант 2) описывается ниже.
Отключение функциональности Edge портов в режиме глобальной команды stp edge-default disable
Switch#configure
%Enter configuration commands.End with Ctrl+Z or command "quit" & "end"
Switch(config)#stp
Switch(config-stp)#stp edge-default disable
Switch(config-stp)#exit
Явное отключение функциональности Edge-port на Ulink интерфейсе (STP Root Port) на случай, если он был включен на нем индивидуально;
Switch(config)#interface 10gigaethernet 1/0/2
Switch(config-10ge1/0/2)#stp edge-port disable
Switch(config-10ge1/0/2)#exit
Активирование Edge-port на защищаемых пользовательских портах
Switch(config)#interface group 1/0/10-1/0/20
Switch(config-if-group)#stp edge-port enable
Switch(config-if-group)#exit
Анализ состояния STP до включения BPDU Guard
Ниже приведен пример блокировки порта при получении кадра STP BPDU.
Не включайте защиту STP BPDU Guard на STP Root портах в работающией сети
Интерфейс 10GE1/0/2 до включения BPDU Guard является "выделенным" портом - его роль designated и находится в состоянии forwarding. Порт направлени "вниз" по топологии STP. Данный порт не предполагает подклювчение коммутатора и является выделенным портом для подключения конечного хоста.
Switch#show stp interface 10gigaethernet 1/0/10
...
--------[PORT Info instance 0]--------
Description : 10ge1/0/10
Port Role : designated
STP State : forward
...
Port Edged : config=disable / active=disable
...
Protection Type : N/A
До включения Edge-режима и BPDU Guard:
- порт — Designated Port, НЕ участвует в построении топологии STP;
- предназначен для подключение конечных хостов (не коммутаторов)
- не является Edge (
Port Edged : disable); - защиты (
Protection Type) нет.
Включение BPDU Guard для Edge-портов.
Активации защиты произойдет для группы ранее настроенных портов (10gi1/0/10 - 10gig1/0/20)
Конфигурация
Включение защиты в глобальном режиме настройки STP для всех Edge портов.
Switch# configure
Switch(config)# stp
Switch(config-stp)# stp bpdu-guard enable
Switch(config)# end
Switch#
На этом этапе BPDU Guard включён, ранее сконфигурированные порты 10gi1/0/10 - 10gi1/0/20 защищены от подключения коммутатора.
Проверка состояния порта
$$$$$ привести команду show для порта под защитой в режиме работы без блокировки $$$$$ когда будет доступна консоль
Пример блокировки Edge порта защитником BPDU-GUARD
Заблокированый порт переходит в специальный режим работы: error-shutdown при получении на него кадра STP BPDU
$$$$$ привести команду show для для заблокированного порта $$$$$ когда будет доступна консоль
Пример блокировки порта при получении кадра BPDU
В случае подключения коммутатора к защищенному порту, подключаемый коммутатор отправит STP BPDU кадр на защищенный порт.
Результат работы BPDU Guard виден по сообщениям системного журнала:
2025/12/10 13:40:06.794 Switch %01-2-IFM-LINKDOWN(l): ... 10GigaEthernet1/0/10], AdminStatus=[up], OperStatus=[down], Reason=[link-down])
2025/12/10 13:40:06.806 Switch %01-5-IFM-LINKDOWN(t): ... Interface 10gigaethernet1/0/10(...) link down Reason=[bpdu-guard].
2025/12/10 13:40:06.818 Switch %01-5-STP-TRAP(t): ... stp Received BPDU on 10gigaethernet1/0/10 with BPDU Guard enabled, this edged-port will be shutdown!
Активация заблокированного порта
Чтобы вернуть работоспособность порта, нужно: - Переключить порт (shut/no shut) для выхода из error-down, если авто-восстановление ещё не сработало.
Пример:
Switch(config-stp)# interface 10gi 1/0/2
Switch(config-10ge1/0/2)# shutdown
Switch(config-10ge1/0/2)# no shutdown
В случае отсутсвия STP BPDU кадров после выполненных действий порт перейдет в активное состояние.
2025/12/10 13:40:36.630 Switch %01-2-IFM-LINKUP(l):The interface status changes. (ifName=[10GigaEthernet1/0/2], AdminStatus=[up], OperStatus=[up], Reason=[link-up])
...
Автоматическое восстановление порта после BPDU Guard
В случае необходимости, возможно настроить коммутатор для автоматической проверки о прекращении событий, повлекших блокировку порта. Функционально необходимо настройть механиз auto-recovery и выбрать причину из-за которой порт переходил в заблокированное состояние, далее указать интервал проверки в секундах.
Switch(config)#error-down auto-recovery cause bpdu-protection interval 30
- включает автоматическое восстановление после перевода порта в error-down по причине BPDU-защиты;
- через 30 секунд после срабатывания BPDU Guard коммутатор попытается активировать порт;
- если BPDU всё ещё приходят и порт всё ещё считается Edge, он будет снова отключён.
Полный вывод команд настройки
configure
!
error-down auto-recovery cause bpdu-protection interval 30
stp
stp edge-default disable
exit
!
interface 10gigaethernet 1/0/2
stp edge-port disable
exit
!
interface group 1/0/10-1/0/20
stp edge-port enable
exit
!
stp
stp bpdu-guard enable
end
Рекомендации по использованию BPDU Guard и Edge-портов
- не используйте глобальную команду
stp edge-default enable|disableна ранее настроенном коммутаторе, так как команда приоритетно и безусловно переопределяет состояние Edge порта - для ранее нестроенных коммутаторов используйте команды индивидуальной настройки порта или группы портов (
stp edge-port enable|disable) - не включайте защиту STP BPDU Guard на портах, где есть или планируется подключение коммутаторов и/или порт должен участвовать в расчете STP топологии
- при необходимости используйте механизм авто-восстановление портов, находящихся в состоянии error-down
История возникновения команды
Команды в данной главе применимы для
- аппаратных плаформ CIT серии L3200, с уставленной версией ПО v1.0.2.
- являются актуальными с версии ПО v.1.0.2