Bu makalede8 bölüm
- Teknoloji
- IEEE 802.1D, 802.1w, 802.1s, IEEE 802.1Q, Cisco PVST+, Rapid PVST+
- Konu
- Katman 2 döngü önleme protokollerinin karşılaştırılması ve tasarımı
- Seviye
- Orta–ileri
- Ön koşullar
- VLAN ve trunk kavramlarına hakimiyet
- Cisco IOS/IOS XE komut satırı deneyimi
- Kampüs topolojisinin güncel çizimi
Uplink’lerin önünde yanıp sönen ışıklar, CPU’su tavan yapmış switch’ler, telefonları kopan bir kat: kampüs ağında Katman 2 döngüsü böyle görünür. Yedekli bağlantı kurmak kolaydır; zor olan, o yedekliliğin döngüye dönüşmesini engellemektir. Aşağıda STP ailesini (802.1D, 802.1w, 802.1s ve Cisco’nun PVST+/Rapid PVST+ uygulamaları) yakınsama ve ölçek açısından karşılaştırıyor, root bridge yerleşimini ve kenar port korumalarını Cisco IOS örnekleriyle veriyor, topoloji değişikliği sorunlarında konsolda hangi sırayla ilerleyeceğinizi gösteriyoruz.
Katman 2 döngüsü ağı neden çökertir?
Ethernet çerçevesinde IP paketindeki TTL gibi bir alan yoktur. Döngüye giren broadcast, multicast veya hedefi bilinmeyen unicast çerçeve her switch tarafından tüm portlara yeniden basılır ve hiç ölmez. Etkisi saniyeler içinde görülür:
- Broadcast fırtınası: Uplink’ler kapasiteye dayanır, switch CPU’su kontrol düzlemi trafiğini işleyemez; çoğu zaman SSH oturumunuz da düşer.
- MAC tablosu kararsızlığı: Aynı kaynak MAC sürekli farklı portlardan öğrenilir. Cisco’da bunun izi
%SW_MATM-4-MACFLAP_NOTIFloglarıdır. - Çoğaltılmış çerçeveler: Uç cihaz aynı çerçeveyi defalarca alır; ARP ve DHCP tutarsız davranmaya başlar.
Döngülerin çoğu tasarım hatasından gelmez. Toplantı odasına getirilen masaüstü switch’e takılan iki kablo, IP telefonun PC portunun duvar prizine geri bağlanması, yarım bırakılmış bir port kanalı yapılandırması: sahada en sık gördüğümüz tetikleyiciler bunlardır. Bu yüzden STP, yedekli topolojisi olmayan ağda bile açık kalır.
Fırtına başladığında switch’e erişmek bile zordur. Önleme, müdahaleden ucuzdur.
STP, RSTP, MSTP ve PVST+ karşılaştırması
Klasik 802.1D STP, port durumları arasında zamanlayıcılarla geçer: varsayılanlarda Max Age 20 saniye, Forward Delay 15 saniyedir. Dolaylı bir arızada yakınsama 30–50 saniye sürebilir. 802.1w RSTP ise noktadan noktaya bağlantılarda proposal/agreement el sıkışmasıyla portu zamanlayıcı beklemeden forwarding’e alır; alternate port rolü sayesinde root port kaybında yedek yola hemen geçer. RSTP sonradan 802.1D-2004’e, MSTP ise 802.1Q-2005 ile 802.1Q standardına dahil edildi.
| Protokol | Ağaç sayısı | Yakınsama | Not |
|---|---|---|---|
| 802.1D STP | Tek ağaç (CST) | 30–50 sn | Yalnız eski cihaz uyumluluğu için |
| PVST+ (Cisco) | VLAN başına bir | 30–50 sn | 802.1D mantığı, VLAN başına |
| 802.1w RSTP | Tek ağaç | Genellikle saniye altı–birkaç sn | VLAN bazlı yük paylaşımı yok |
| Rapid PVST+ (Cisco) | VLAN başına bir | RSTP ile aynı | VLAN sayısı arttıkça CPU ve BPDU yükü artar |
| 802.1s MSTP | Instance başına bir | RSTP ile aynı | Standart, çok üreticili ortama uygun |
Karar pratiktir. Yalnız Cisco switch’lerden oluşan, onlarca VLAN taşıyan bir kampüste Rapid PVST+ yönetimi kolaydır. Farklı üreticilerin switch’leri aynı L2 alanındaysa veya trunk’larda yüzlerce VLAN varsa MSTP’ye geçin. Klasik 802.1D ve PVST+ yeni tasarıma girmez. Hangi modun çalıştığını tahmin etmeyin, show spanning-tree summary ile bakın; varsayılan mod platforma ve yazılım sürümüne göre değişir.
Root bridge yerleşimi ve priority planı
Root, Bridge ID’ye göre seçilir: en düşük priority, eşitlikte en düşük MAC adresi kazanır. Priority 4096’nın katlarıyla ayarlanır, çünkü alt 12 bit extended system ID (VLAN numarası) için ayrılmıştır. Varsayılan 32768 olduğundan switch kurulumu sırasında kimse priority yazmazsa root, MAC’i en düşük cihaza düşer. Bu da çoğu zaman kampüsün en eski erişim switch’idir; bütün trafik o zayıf kutunun üzerinden döner.
Root’u L2 alanının merkezine, yani dağıtım veya collapsed core katmanına sabitleyin. Ağ geçidi yedekliliği (HSRP/VRRP) kullanıyorsanız her VLAN’ın STP root’u ile aktif ağ geçidi aynı cihazda olmalı. Aksi halde trafik iki dağıtım switch’i arasındaki bağlantıyı boşuna dolaşır.
! DIST-SW1: VLAN 10,30,50 için root, VLAN 20,40,60 için yedek root
spanning-tree mode rapid-pvst
spanning-tree vlan 10,30,50 priority 4096
spanning-tree vlan 20,40,60 priority 8192
! DIST-SW2: tersi (VLAN 20,40,60 root, VLAN 10,30,50 yedek)
spanning-tree mode rapid-pvst
spanning-tree vlan 20,40,60 priority 4096
spanning-tree vlan 10,30,50 priority 8192
spanning-tree vlan X root primary makrosu da iş görür; ancak o anki root’a göre bir değer hesaplayıp yapılandırmaya sabit sayı yazar. Değeri açıkça yazmak standart yapılandırma ve denetim için daha öngörülebilirdir. Altı ay sonra konfigürasyona bakan kişi neyin neden root olduğunu ilk satırda görür.
Kenar port korumaları: PortFast ve BPDU Guard
Kullanıcı, yazıcı, IP telefon ve kamera bağlanan erişim portları kenar port olarak işaretlenir. PortFast iki iş yapar: port açılınca listening/learning aşamalarını atlayıp hemen forwarding’e geçer ve durum değişikliğinde topoloji değişikliği (TC) bildirimi üretmez. İkinci etkiyi çoğu kişi bilmez. PortFast’sız bir kampüste her PC açılıp kapandığında MAC tabloları hızlı yaşlandırılır ve gereksiz flooding oluşur.
BPDU Guard, PortFast’ın tamamlayıcısıdır: kenar porttan BPDU gelirse port err-disabled olur. Kullanıcının taktığı switch topolojiye katılamaz, root adayı olamaz.
! Global: tüm PortFast portlarda BPDU Guard
spanning-tree portfast bpduguard default
! Yeni IOS XE sürümlerindeki eşdeğeri:
! spanning-tree portfast edge bpduguard default
interface range GigabitEthernet1/0/1 - 44
switchport mode access
switchport access vlan 10
spanning-tree portfast
! İsteğe bağlı otomatik kurtarma (5 dakika)
errdisable recovery cause bpduguard
errdisable recovery interval 300
Root Guard ve Loop Guard ne zaman kullanılır?
İkisi sık karıştırılır. Farklı arızalara karşı korurlar ve aynı portta birlikte kullanılamazlar.
Root Guard
Dağıtım switch’inin erişim katmanına bakan designated portlarına yazılır. Bu porttan mevcut root’tan daha iyi (superior) bir BPDU gelirse port root-inconsistent durumuna alınır ve superior BPDU kesilene kadar trafik taşımaz. Amaç, erişim katmanına eklenen düşük priority’li bir cihazın root rolünü çalmasını engellemektir. Root Guard’ı root port olması gereken uplink’e yazarsanız normal topolojiyi kendi elinizle bozarsınız.
Loop Guard
BPDU alması beklenen portlara, yani root ve alternate portlara yazılır. Tek yönlü bir fiber arızasında karşı taraftan BPDU gelmez; korumasız alternate port bunu “yol temiz” diye yorumlar, designated’a geçer ve döngü kurulur. Loop Guard bu durumda portu loop-inconsistent durumunda tutar. Fiber uplink’lerde UDLD (Cisco) ile birlikte kullanılması yaygındır.
Tek yönlü fiber nadir değildir. Kirli bir konnektör yeter.
! DIST-SW1: erişim switch'lerine bakan portlar
interface range TenGigabitEthernet1/1/1 - 8
spanning-tree guard root
! ACCESS-SW: dağıtıma giden uplink'ler (root/alternate portlar)
spanning-tree loopguard default
! veya port bazında:
interface TenGigabitEthernet1/1/1
spanning-tree guard loop
MSTP bölge ve instance tasarımı
MSTP’de switch’ler bir bölge (region) içinde aynı ağaçları paylaşır. İki switch’in aynı bölgede sayılması için üç parametre birebir aynı olmalıdır: bölge adı, revizyon numarası ve VLAN–instance eşlemesi. Tek bir VLAN farkı switch’i ayrı bölgeye düşürür. Bölge sınırında yalnız IST (instance 0) bilgisi taşınır ve planladığınız yük paylaşımı çalışmaz.
Tasarımda dikkat edilecekler:
- Instance sayısını gerçekten farklı topoloji gereken yol sayısı kadar tutun. İki dağıtım switch’li bir kampüste genellikle iki instance yeter: biri DIST-SW1, diğeri DIST-SW2 root olacak şekilde.
- Henüz oluşturulmamış VLAN’ları da baştan bir instance’a eşleyin. Eşleme sonradan değişirse tüm switch’lerde aynı anda değiştirmeniz gerekir ve geçiş anında bölge bölünür.
- Instance 0’ın (IST) root’unu da açıkça belirleyin; instance 0’a eşlenen VLAN’lar ve bölge dışı iletişim onun üzerinden yürür.
- Standart bir bölgede en fazla 64 MSTI tanımlanmasına izin verir; platformların desteklediği instance sayısı ve kullanılabilen instance numarası aralığı model ve yazılım sürümüne göre değişir. Çok üreticili bölgede en kısıtlı cihazın sınırını esas alın ve platformun yapılandırma kılavuzundan doğrulayın.
spanning-tree mode mst
spanning-tree mst configuration
name KAMPUS-A
revision 3
instance 1 vlan 10,30,50,100-199
instance 2 vlan 20,40,60,200-299
!
spanning-tree mst 0 priority 4096
spanning-tree mst 1 priority 4096
spanning-tree mst 2 priority 8192
show spanning-tree mst configuration digest
show spanning-tree mst configuration digest çıktısındaki digest değeri bölgedeki tüm switch’lerde aynı olmalıdır. Çok üreticili ortamda ilk karşılaştırılacak değer budur. Digest farklıysa bölge de farklıdır.
Topoloji değişikliklerinin teşhisi
“Ağ birkaç saniyede bir takılıyor” şikayeti geldiğinde ilk şüphelilerden biri sürekli tekrarlanan topoloji değişiklikleridir. Her TC, MAC tablosunun boşaltılmasına ve kısa süreli flooding’e yol açar. Kaynağı bulmak için TC sayacını ve son değişikliğin geldiği portu izleyip zinciri root’a doğru takip edin. Konsolda bakılacak sıra:
show spanning-tree summary
show spanning-tree root
show spanning-tree detail | include ieee|occurr|from|is exec
show spanning-tree inconsistentports
show interfaces status err-disabled
show errdisable recovery
show logging | include SPANTREE|MACFLAP
show spanning-tree detail çıktısındaki “Number of topology changes … last change occurred … ago from GigabitEthernet1/0/14” satırı, değişikliğin hangi porttan geldiğini söyler. O porta bağlı switch’e geçip aynı komutu tekrarlayın. Zincirin sonunda genellikle PortFast tanımlanmamış ve sürekli açılıp kapanan bir uç cihaz portu ya da fiziksel olarak hatalı bir uplink çıkar.
Sahada en sık karşılaştığımız hatalar:
- Root’un planlanmamış olması ve bir erişim switch’ine düşmesi.
- Kenar portlarda PortFast olmadığı için sürekli TC üretilmesi.
- MSTP bölgesinde tek bir switch’te VLAN eşlemesinin farklı olması.
- Root Guard’ın uplink root portuna uygulanması.
- BPDU Guard’ın kapattığı portun sebebi bulunmadan açılması.
- Çok üreticili ortamda Rapid PVST+ ile MSTP sınırının nasıl davrandığının test edilmemesi.
Döngü önleme, segment planından ayrı düşünülemez. VLAN yapısı için kurumsal ağda VLAN tasarımı rehberine, STP’ye bağımlılığı azaltan yaklaşımlar için switch stack, MLAG ve vPC karşılaştırmasına, uplink’leri port kanalında birleştirmek için LACP ve EtherChannel yapılandırma yazısına bakın. Root yerleşimi ve L2 alanının boyutu katman mimarisine bağlıdır; bu kararı üç katmanlı ve collapsed core karşılaştırması ele alıyor. MSTP ve RSTP davranışının normatif tanımı IEEE 802.1Q standardındadır; çalışma grubunun sayfası IEEE 802.1 adresindedir.
Mevcut kampüste root yerleşimini, guard özelliklerini ve MSTP bölge tutarlılığını denetletmek isterseniz VLAN, routing ve ağ segmentasyonu hizmetimiz bu kontrolü kapsar.
Sık sorulan sorular
Rapid PVST+ ile MSTP arasında nasıl seçim yapmalıyım?
Tek üreticili, VLAN sayısı makul ve her VLAN için ayrı topoloji kontrolü isteyen kampüste Rapid PVST+ yönetimi daha basittir. Çok üreticili ortamda veya trunk’larda yüzlerce VLAN taşınıyorsa MSTP doğru seçimdir: standarttır ve VLAN’ları az sayıda instance’a toplar.
Erişim switch’lerinde priority değerini değiştirmeli miyim?
Gerek yok; varsayılan 32768 kalsın. Asıl iş çekirdek veya dağıtım switch’lerine açıkça düşük priority yazmak ve root’un tesadüfen bir erişim switch’ine düşmesini engellemektir.
BPDU Guard bir portu kapattı, ne yapmalıyım?
Önce porta bağlı cihazı bulun; çoğu zaman masaya getirilmiş küçük bir switch veya yanlış kablolanmış bir cihazdır. Sebep ortadan kalkmadan portu açmayın. Port shutdown ve no shutdown ile ya da errdisable recovery süresi dolunca yeniden açılır.
STP’yi tamamen kapatmak mümkün mü?
Teknik olarak mümkün, önerilmez. Stack, MLAG veya vPC ile tüm uplink’ler aktif-aktif çalışsa bile STP güvenlik ağı olarak açık kalmalıdır. Yanlış bir kablo veya hatalı port kanalı tek başına döngü kurar; storm control fırtınanın etkisini sınırlar ama döngüyü kendiliğinden kesen temel mekanizma STP’dir.
- Teknoloji
- IEEE 802.1D, 802.1w, 802.1s, IEEE 802.1Q, Cisco PVST+, Rapid PVST+
- Konu
- Katman 2 döngü önleme protokollerinin karşılaştırılması ve tasarımı
- Seviye
- Orta–ileri
- Ön koşullar
- VLAN ve trunk kavramlarına hakimiyet
- Cisco IOS/IOS XE komut satırı deneyimi
- Kampüs topolojisinin güncel çizimi
Switching ve Segmentasyon