İçeriğe Atla
Mustafa Erbay
Rehberler · 8 dk okuma · görüntülenme Read in English
100%

Ağ Altyapısında BGP Komşuluk Savaşları: Bir Operasyonel Kabus

BGP komşuluk savaşlarının ne olduğunu, neden ortaya çıktığını ve bu operasyonel kabusu önlemek için pratik stratejileri öğrenin. Ağ istikrarını koruyun.

Ağ Altyapısında BGP Komşuluk Savaşları: Bir Operasyonel Kabus — kapak görseli

Ağ altyapısının kalbinde yer alan BGP (Border Gateway Protocol), internetin omurgasını oluşturan yönlendirme protokolüdür. Farklı otonom sistemler (Autonomous Systems - AS) arasında prefix bilgilerini değiş tokuş ederek veri paketlerinin doğru hedefe ulaşmasını sağlar. Ancak, BGP’nin karmaşık yapısı ve politikalarındaki en ufak bir hata, ağ operasyoncuları için gerçek bir kabusa dönüşebilir: “BGP Komşuluk Savaşları” (BGP Neighbor Wars).

Bu yazıda, BGP komşuluk savaşlarının ne anlama geldiğini, ağ istikrarını nasıl tehdit ettiğini ve bu operasyonel kabustan kurtulmak için hangi stratejileri uygulayabileceğimizi detaylı bir şekilde inceleyeceğiz. Amacımız, ağ yöneticilerine bu zorlu senaryoları anlama ve çözme konusunda pratik bir rehber sunmaktır.

BGP Komşuluk Savaşları Nedir?

BGP komşuluk savaşları, iki veya daha fazla BGP yönlendiricisi arasında yönlendirme kararlarında sürekli bir tutarsızlık yaşanması durumudur. Bu durum, yönlendiricilerin birbirlerine sürekli olarak farklı yollar teklif etmesi ve her birinin diğerinin teklifini geçersiz kılmaya çalışmasıyla karakterizedir. Sonuç olarak, ağda prefixler için sürekli bir yol değişikliği (route flap) meydana gelir ve bu da ağ performansını ciddi şekilde etkiler.

Bu savaşlar genellikle yanlış yapılandırılmış BGP politikaları, hatalı AS Path Prepending, Local Preference uyuşmazlıkları veya MED (Multi-Exit Discriminator) değerlerinin yanlış yorumlanması gibi nedenlerden kaynaklanır. Ağdaki istikrarsızlık, kullanıcı deneyimini olumsuz etkileyebilir ve hatta servis kesintilerine yol açabilir.

Yaygın BGP Komşuluk Savaşları Senaryoları

BGP komşuluk savaşları, çeşitli konfigürasyon hataları veya yanlış anlaşılmalar sonucu ortaya çıkabilir. Bu senaryoları anlamak, problem tespiti ve çözümü için kritik öneme sahiptir. İşte en yaygın olanları:

AS Path Prepending Miskonfigürasyonları

AS Path Prepending, bir AS’nin belirli bir prefix için kendi AS numarasını AS Path’e birden fazla kez ekleyerek o yola olan tercihini düşürme tekniğidir. Bu, gelen trafiği başka bir yola yönlendirmek amacıyla kullanılır. Ancak, yanlış veya agresif bir AS Path Prepending uygulaması komşuluk savaşlarına yol açabilir.

Örneğin, iki farklı ISS’ye bağlı bir AS düşünün. Eğer bir ISS, diğer ISS’ten daha fazla AS Path Prepending uygulayarak trafik almak istemediğini belirtirse, ancak diğer ISS de benzer bir politika uygularsa, her iki taraf da trafiği diğerine itmeye çalışır. Bu durum, sürekli bir yol değişikliğine ve ağ istikrarsızlığına neden olur.

# Router A (AS 65001) configuration example
router bgp 65001
 neighbor 192.0.2.1 remote-as 65002
 neighbor 192.0.2.1 route-map PREPEND_PATH out

ip as-path access-list 1 permit .*
route-map PREPEND_PATH permit 10
 match ip address prefix-list ADVERTISED_PREFIXES
 set as-path prepend 65001 65001 65001

Local Preference Uyuşmazlıkları

Local Preference, bir AS içindeki yönlendiricilerin aynı prefix için birden fazla çıkış yolu olduğunda hangi yolu tercih edeceğini belirleyen bir BGP özniteliğidir. Daha yüksek Local Preference değeri, o yolun tercih edileceği anlamına gelir. Bu öznitelik genellikle içeriden gelen trafiği yönlendirmek için kullanılır.

Eğer iki AS, aynı prefix için birbirlerine farklı Local Preference değerleri ile reklam yaparsa veya kendi iç ağlarında tutarsız Local Preference politikaları uygularsa, bu bir komşuluk savaşına neden olabilir. Örneğin, AS A, AS B’den gelen bir yolu yüksek Local Preference ile tercih ederken, AS B de aynı prefix için AS A’dan gelen yolu yüksek Local Preference ile tercih ederse, her iki AS de trafiği kendi üzerinden yönlendirmek isteyecektir. Bu, sürekli bir tercih değişikliği döngüsü yaratır.

# Router A (AS 65001) configuration example
router bgp 65001
 neighbor 192.0.2.1 remote-as 65002
 neighbor 192.0.2.1 route-map SET_LOCAL_PREF_OUT out

route-map SET_LOCAL_PREF_OUT permit 10
 set local-preference 200 # Higher preference for routes learned from this neighbor

MED (Multi-Exit Discriminator) Yanlış Anlaşılmaları

MED, komşu AS’ye, kendi ağına birden fazla giriş noktası olduğunda hangi giriş noktasının tercih edilmesi gerektiğini bildirmek için kullanılan bir özniteliktir. Daha düşük bir MED değeri, o giriş noktasının tercih edildiğini gösterir. MED genellikle bir AS’nin kendi içindeki trafik akışını optimize etmek için kullanılır.

Ancak, MED değerleri sadece aynı komşu AS’den öğrenilen yollar arasında karşılaştırılır ve her zaman güvenilir bir yol seçim kriteri olmayabilir. Farklı ISS’ler arasında MED değerlerinin tutarsız veya yanlış uygulanması, yönlendiricilerin en iyi yolu belirlemede zorlanmasına ve komşuluk savaşlarına yol açabilir. Özellikle, bazı BGP uygulamaları MED’i farklı şekillerde yorumlayabilir, bu da beklenmedik davranışlara neden olabilir.

Route Flap Damping

Route Flap Damping, ağda sürekli olarak değişen (flap eden) yolların, bu yolların geçici olarak gizlenerek ağ istikrarını artırmayı amaçlayan bir BGP özelliğidir. Bir yol belirli bir eşik değerinden daha sık değişirse, damping mekanizması devreye girer ve yolu bir süre gizler. Bu, ağdaki yükü azaltmaya yardımcı olur.

Ancak, Route Flap Dampingin agresif ayarları, gerçek bir ağ probleminden kaynaklanan yol değişikliklerini yanlışlıkla gizleyebilir veya sorunları daha da kötüleştirebilir. Aşırı damping, önemli yol güncellemelerini geciktirebilir ve bu da BGP komşuluk savaşlarının belirtilerini maskeleyebilir veya çözümü zorlaştırabilir. Bu nedenle, damping ayarlarının dikkatli bir şekilde yapılandırılması önemlidir.

# Cisco IOS example for BGP route-flap damping
router bgp 65001
 bgp dampening

Max-Prefix Limit İhlalleri

BGP komşuluklarında max-prefix limit belirlemek, bir komşudan alınabilecek maksimum prefix sayısını sınırlamak için kullanılan önemli bir güvenlik önlemidir. Bu, komşunun yanlışlıkla veya kötü niyetle çok sayıda prefix reklamını önler ve yönlendiricinin kaynaklarının (bellek, CPU) aşırı yüklenmesini engeller.

Eğer bir komşu, belirlenen max-prefix limiti aşarsa, BGP oturumu genellikle kapanır ve sıfırlanır. Bu, sürekli olarak tekrarlanırsa, BGP oturumunun sürekli açılıp kapanmasına, yani bir “komşuluk savaşına” yol açar. Bu durum, özellikle komşu tarafında bir konfigürasyon hatası veya beklenmedik bir prefix artışı olduğunda meydana gelebilir ve ağdaki istikrarsızlığı artırır.

# Router A (AS 65001) configuration example
router bgp 65001
 neighbor 192.0.2.1 remote-as 65002
 neighbor 192.0.2.1 maximum-prefix 10000 restart 60

BGP Komşuluk Savaşlarını Tespit Etme Yöntemleri

BGP komşuluk savaşlarını erken aşamada tespit etmek, ağ istikrarını korumak için hayati öneme sahiptir. Çeşitli araçlar ve komutlar kullanarak bu tür problemleri teşhis edebiliriz. İşte bazı etkili yöntemler:

  • BGP Oturum Durumu İzleme: BGP oturumlarının (peers) sürekli olarak “Active” veya “Idle” durumuna geçip geçmediğini kontrol edin. İstikrarlı bir oturum “Established” olmalıdır.
  • Log Kayıtları: Yönlendiricilerin loglarını düzenli olarak inceleyin. BGP oturumlarının sürekli olarak kapanıp açıldığına dair mesajlar, max-prefix limit uyarıları veya diğer BGP hata mesajları savaşın habercisi olabilir.
  • Prefix Sayılarının İzlenmesi: Komşulardan alınan veya komşulara gönderilen prefix sayılarındaki ani veya sürekli dalgalanmalar, bir komşuluk savaşının göstergesi olabilir.
  • CPU ve Bellek Kullanımı: Yönlendiricilerde anormal derecede yüksek CPU veya bellek kullanımı, sürekli BGP güncellemelerinin işlenmesinden kaynaklanabilir.
  • Ağ İzleme Araçları: Grafana, Prometheus, ELK Stack gibi modern ağ izleme araçları, BGP metriklerini (oturum durumu, prefix sayıları, yol değişiklikleri) görselleştirmek ve anormallikleri tespit etmek için kullanılabilir.

Aşağıdaki komutlar, BGP durumunu kontrol etmek için sıkça kullanılır:

# Cisco IOS / Juniper Junos CLI examples

# BGP oturumlarının özetini gösterir
show ip bgp summary
show bgp summary # Juniper

# Belirli bir komşu hakkında detaylı bilgi
show ip bgp neighbors 192.0.2.1
show bgp neighbor 192.0.2.1 # Juniper

# BGP log mesajlarını gösterir
show logging | include BGP
show log messages | match BGP # Juniper

# Alınan veya gönderilen BGP prefixlerini gösterir
show ip bgp neighbors 192.0.2.1 received-routes
show ip bgp neighbors 192.0.2.1 advertised-routes
show route receive-protocol bgp 192.0.2.1 # Juniper
show route advertising-protocol bgp 192.0.2.1 # Juniper

Bu komutlar, BGP oturumlarının durumunu, komşularla olan bağlantı bilgilerini ve değiş tokuş edilen prefixleri hızlıca kontrol etmenizi sağlar. Düzenli kontroller ve otomatize edilmiş uyarılar, komşuluk savaşlarının erken tespiti için hayati öneme sahiptir.

Operasyonel Kabustan Kurtulma Stratejileri

BGP komşuluk savaşlarından kaçınmak ve ağ istikrarını sağlamak için proaktif ve sistematik yaklaşımlar benimsemek gereklidir. İşte bu operasyonel kabustan kurtulmak için uygulanabilecek bazı stratejiler:

Standart Konfigürasyon ve Otomasyon

Ağ cihazlarının konfigürasyonunda tutarlılık sağlamak, BGP komşuluk savaşlarını önlemenin temelidir. Standartlaştırılmış konfigürasyon şablonları kullanmak ve otomasyon araçlarından (Ansible, Puppet, Chef, SaltStack) yararlanmak, insan hatalarını minimize eder. Bu sayede, tüm BGP yönlendiricilerinin aynı politikalara ve en iyi uygulamalara uygun şekilde yapılandırılması sağlanır.

Otomasyon, sadece konfigürasyon hatalarını azaltmakla kalmaz, aynı zamanda hızlı ve hatasız değişiklik yönetimi imkanı sunar. Yeni BGP komşulukları kurulurken veya mevcut politikalar güncellenirken, otomatikleştirilmiş süreçler sayesinde tutarsızlık riski büyük ölçüde azalır.

Proaktif İzleme ve Uyarı Sistemleri

Sürekli ve proaktif izleme, BGP komşuluk savaşlarının ilk belirtilerini yakalamak için kritik öneme sahiptir. Ağ izleme sistemleri (NMS - Network Monitoring System) kullanarak BGP oturum durumlarını, alınan/gönderilen prefix sayılarını ve yol değişikliklerini sürekli olarak takip edin. Belirli eşik değerlerinin aşılması durumunda (örneğin, bir BGP oturumunun belirli bir süre içinde birden fazla kez flap etmesi), otomatik uyarılar tetiklenmelidir.

Bu uyarılar, ağ operasyon ekibine anında bilgi sağlayarak hızlı müdahale imkanı sunar. Böylece, potansiyel bir komşuluk savaşı büyümeden tespit edilip çözülebilir.

BGP Policy Review ve Denetimleri

BGP politikaları, ağın nasıl davranacağını belirleyen kurallardır ve bu politikaların doğru bir şekilde yapılandırılması, komşuluk savaşlarını önlemenin anahtarıdır. Düzenli olarak BGP politikalarını gözden geçirin ve denetleyin. Özellikle, yeni bir peering anlaşması yapıldığında veya mevcut bir anlaşma değiştiğinde, ilgili BGP politikalarının tutarlı ve doğru olduğundan emin olun.

Karşılıklı AS Path Prepending, Local Preference veya MED değerlerinin yanlış anlaşılmasını önlemek için komşularınızla açık iletişim kurun. Periyodik denetimler, potansiyel çakışmaları ve yanlış konfigürasyonları erkenden tespit etmenize yardımcı olacaktır.

Eğitim ve Bilinçlendirme

Ağ operasyon ekibinin BGP’nin incelikleri, yaygın hata senaryoları ve sorun giderme teknikleri konusunda iyi eğitimli olması, komşuluk savaşlarını önlemede hayati bir rol oynar. BGP’nin karmaşık yapısını ve politika mekanizmalarını anlamak, doğru kararlar almayı ve hataları minimize etmeyi sağlar.

Ekip içinde bilgi paylaşımını teşvik edin ve karmaşık BGP sorunlarını çözmek için deneyimli personelin bilgi birikiminden faydalanın. Düzenli eğitimler ve atölye çalışmaları, ekibin BGP yetkinliğini artıracaktır.

Güvenli Konfigürasyon Geçişleri

Ağda yapılan her konfigürasyon değişikliği, potansiyel bir risk taşır. BGP politikalarını veya komşuluk ayarlarını değiştirirken, dikkatli ve kontrollü bir yaklaşım sergileyin. Tüm değişiklikler bir change management sürecinden geçmeli, test edilmeli ve bir geri alma (rollback) planı ile desteklenmelidir.

Küçük adımlarla ve kontrollü bir şekilde değişiklikleri uygulamak, olası sorunların etkisini sınırlayarak hızlı bir şekilde geri dönmenizi sağlar. Bu, özellikle kritik BGP peerings için vazgeçilmez bir stratejidir.

Sonuç

BGP komşuluk savaşları, modern ağ altyapıları için ciddi bir tehdit oluşturabilir ve ağ operatörleri için gerçek bir operasyonel kabusa dönüşebilir. Bu savaşlar, ağ istikrarsızlığına, performans düşüşlerine ve hatta servis kesintilerine yol açabilir. Ancak, doğru stratejiler ve proaktif önlemlerle bu kabustan kurtulmak mümkündür.

Bu rehberde ele aldığımız AS Path Prepending miskonfigürasyonları, Local Preference uyuşmazlıkları, MED yanlış anlaşılmaları, Route Flap Dampingin yanlış kullanımı ve Max-Prefix Limit ihlalleri gibi senaryoları iyi anlamak, bu tür sorunları önlemenin ilk adımıdır. Standartlaştırılmış konfigürasyonlar, güçlü izleme sistemleri, düzenli politika denetimleri ve iyi eğitimli bir ekip, ağınızı bu tür savaşlardan korumanın anahtarıdır.

Unutmayın, iyi yönetilen bir BGP altyapısı, internetin sorunsuz çalışmasının temelini oluşturur. Ağınızı güvende tutmak için bu adımları uygulamaktan çekinmeyin.

Paylaş:

Bu yazı faydalı oldu mu?

Yükleniyor...

Bu yazı nasıldı?

ME

Mustafa Erbay

Sistem Mimarisi · Network Uzmanı · Altyapı, Güvenlik ve Yazılım

2006'dan bu yana sistem mimarisi, network, sunucu altyapıları, büyük yapıların kurulumu, yazılım ve sistem güvenliği ekseninde çalışıyorum. Bu blogda sahada karşılığı olan teknik deneyimlerimi paylaşıyorum.

Kişisel Notlar

Bu notlar sadece sizde saklanır. Tarayıcınızda yerel olarak tutulur.

Hazır 0 karakter

Yorumlar

Sunucu Taraflı AI Moderasyon

Yorumlar sunucuda yapay zeka ile denetlenir ve kalıcı olarak saklanır.

?
0/2000

Sunucu taraflı AI denetim

✉️ Ücretsiz · Spam yok · İstediğin an çık

Haftalık özet — AI değil, bizzat ben seçiyorum

Haftada bir mail: o haftanın en önemli yazısı, perde arkası notları, ve "bu hafta gerçekten kullandığım araç" bölümü. Az gürültü, çok sinyal.

  • 📌
    Haftanın en iyisi Sadece okumaya değer tek yazı
  • 🔧
    Alet çantası Bu hafta kullandığım araçlar
  • 🧠
    Perde arkası Blog'a girmeyen notlar

Spam yapmıyoruz. İstediğiniz zaman ayrılabilirsiniz. · Sadece Umami (self-hosted, Google yok) ile takip.

Okuma İstatistikleriniz

0

Yazı Okundu

0dk

Okuma Süresi

0

Gün Serisi

-

Favori Kategori

İlgili Yazılar