Sistem/DevOps•7 dk okuma

Cisco Anahtarlarda Spanning Tree (Rapid-PVST+), PortFast ve BPDU Guard ile Döngüleri Engelleme

Bir personelin switch'in iki portuna aynı kabloyu takmasıyla tüm fabrikanın veya holding ağının çökmesini (Broadcast Storm) engelleyen Spanning Tree protokolü, PortFast, BPDU Guard ve Root Bridge hiyerarşisi.

AE

Ahmet Ertekin

12 July 2023

Cisco Anahtarlarda Spanning Tree (Rapid-PVST+), PortFast ve BPDU Guard ile Döngüleri Engelleme

Cisco Anahtarlarda Spanning Tree (Rapid-PVST+), PortFast ve BPDU Guard ile Döngüleri Engelleme

Bir çağrı merkezi veya holding binasında bir kullanıcının masasının altındaki küçük 5 portluk masaüstü switch'in iki ucunu birden duvardaki prizlere takmasıyla onlarca switch'in tüm ışıklarının çılgınca yanıp sönmeye başladığına ve ağın dakikalar içinde kilitlendiğine şahit oldunuz mu? Buna Yayın Fırtınası (Broadcast Storm) denir. Ethernet katmanında (Layer 2) paketlerin sonsuza dek dönmesini engelleyen can simidi Spanning Tree Protocol (STP)'dir.

1. Klasik STP vs Rapid PVST+ (Neden Klasik STP Kullanılmaz?)

Eski 802.1D standart STP'de bir portun açılması (Blocking -> Listening -> Learning -> Forwarding) tam 50 saniye sürer. Bir sunucuyu veya IP telefonu yeniden başlattığınızda 50 saniye ağ alamaması kabul edilemez.

Bu nedenle modern Cisco ağlarında varsayılan olarak Rapid-PVST+ (Rapid Per-VLAN Spanning Tree - 802.1w) kullanılmalıdır. Rapid STP döngü engelleme süresini 1 saniyenin altına indirir.

! Global Olarak Rapid-PVST Modunu Aktif Etme
spanning-tree mode rapid-pvst

2. Root Bridge (Kök Anahtar) Seçimini Şansa Bırakmayın!

Spanning Tree mantığında ağın merkezinde bir Root Bridge seçilir. Eğer siz Root Bridge'i manuel belirlemezseniz, switchler Bridge ID (MAC adresi) en küçük olanı kök seçer. Bu durumda veri merkezindeki 50 bin dolarlık omurga switch yerine, çay ocağındaki eski 100 Mbps'lik kenar switch ağın kökü haline gelebilir!

! Core Switch 01 (Birincil Kök):
spanning-tree vlan 1-4094 priority 4096

! Core Switch 02 (Yedek Kök):
spanning-tree vlan 1-4094 priority 8192

(Not: STP öncelik değeri 4096'nın katları olmak zorundadır. En küçük sayı en önceliklidir.)

3. Uç Portlarda PortFast ve BPDU Guard Zorunluluğu

Kullanıcı bilgisayarlarının, yazıcıların ve sunucuların bağlandığı uç portlarda (Access Ports):

  • PortFast: Port takıldığı an dinleme beklemeden doğrudan "Forwarding" moduna geçer. DHCP'den anında IP alınmasını sağlar.
  • BPDU Guard: Kullanıcı o porta izinsiz bir switch takıp BPDU paketi gönderdiği anda portu cezalandırır ve anında kapatır (err-disable)!
! Global Seviyede Tüm Access Portlar İçin Varsayılan Yapılandırma
spanning-tree portfast default
spanning-tree portfast bpduguard default

! Veya Port Bazlı Yapılandırma:
interface GigabitEthernet1/0/15
 description PERSONEL_PC
 switchport mode access
 switchport access vlan 30
 spanning-tree portfast
 spanning-tree bpduguard enable

Karşılaşılan Kritik Hatalar ve Çözüm İpuçları

  • Err-Disable Durumuna Düşen Portu Kurtarma: BPDU Guard bir döngü tespit edip portu kapattığında show interfaces status err-disabled çıktısında port görünür. Döngü yaratan kablo söküldükten sonra portu kurtarmak için:
interface GigabitEthernet1/0/15
 shutdown
 no shutdown

(İpucu: errdisable recovery cause bpduguard komutu verilirse switch portu 300 saniye sonra otomatik açmayı dener.)

  • Root Guard Koruması: Kenar anahtarlara bağlı uplink portlarına spanning-tree guard root komutu verilmelidir. Böylece dışarıdan sisteme bağlanan sahte bir switch kök anahtar tahtını ele geçiremez.

Mühendis Notu

Tüm omurga ve kenar anahtarlarınızda STP konfigürasyonunu eksiksiz yapın. PortFast açıp BPDU Guard koymadığınız her port, şirketinize getirilen 50 liralık bir masaüstü switch ile tüm şirketin ağını çökertmeye hazır açık bir kapıdır.