STP_LOOP_BROADCAST_STORM
Сетевое оборудование и VPN
Траблшутинг петель Spanning Tree: защита через BPDU Guard, Root Guard и Loop Guard
- Лавинообразный широковещательный шторм (Broadcast Storm) с 100% утилизацией всех портов коммутатора.
- Ошибки
MAC flapping: host 0011.2233.4455 flapping between port Gi0/1 and Gi0/2. - Самовольный перехват роли Root Bridge неуправляемым домашним роутером, включенным в розетку пользователем.
- Переход оптического порта в блокировку из-за повреждения одной жилы Rx/Tx.
1. Защитные механизмы STP и области их применения
| Механизм | Где настраивать | Функция защиты |
|---|---|---|
| BPDU Guard | Access / PortFast порты | При получении любого BPDU мгновенно переводит порт в err-disable. |
| Root Guard | Назначенные транки (Downlink) | Блокирует порт при попытке стороннего свитча стать Root Bridge. |
| Loop Guard | Root и Alternate порты | Предотвращает переход порта в Forwarding при внезапном пропадании BPDU. |
| UDLD | Оптические линки | Обнаруживает однонаправленный обрыв волокна (Unidirectional link). |
2. Конфигурация BPDU Guard на портах доступа
# Глобально для всех PortFast портов:
spanning-tree portfast bpduguard default
# Или на конкретном интерфейсе:
interface GigabitEthernet0/1
spanning-tree bpduguard enable3. Конфигурация Root Guard на портах Core -> Distribution
interface GigabitEthernet0/24
description DOWNLINK_TO_ACCESS_SWITCH
spanning-tree guard root4. Конфигурация Loop Guard и UDLD для оптических магистралей
# Включение Loop Guard
spanning-tree loopguard default
# Включение UDLD в агрессивном режиме
udld aggressive
interface TenGigabitEthernet0/1
udld port aggressive5. Восстановление портов из err-disable
# Автоматический вывод портов из err-disable через 5 минут:
errdisable recovery cause bpduguard
errdisable recovery cause udld
errdisable recovery interval 300
Практический опыт инженера:
Никогда не включайте Loop Guard на портах с настроенным PortFast/BPDU Guard. Loop Guard предназначен исключительно для Uplink портов (Root/Alternate).
Частые вопросы (FAQ)
Почему возникает петля, если оптика повреждена только на прием (Rx)?
Свитч перестает получать BPDU на заблокированном порту, ошибочно считает, что петли больше нет, и переводит порт в состояние Forwarding. Трафик при этом продолжает передаваться по каналу Tx, порождая петлю.
В чем разница между BPDU Guard и BPDU Filter?
BPDU Guard блокирует порт при получении пакета BPDU. BPDU Filter просто запрещает отправку и прием BPDU, что делает работу порта слепой к петлям и крайне опасно.
Как вывести порт из состояния err-disable вручную?
Перейдите в режим конфигурации порта и выполните: shutdown, затем no shutdown.
Что делает Root Guard при получении превосходящего (Superior) BPDU?
Он переводит порт в специальный статус root-inconsistent (блокировка трафика). Как только чужой коммутатор перестает слать Superior BPDU, порт восстанавливается автоматически.