BGP neighbor’ın Established olması, doğru prefix’in öğrenildiği veya trafiğin doğru yoldan geçtiği anlamına gelmez.
FortiGate üzerinde böyle bir durumda benim kontrol sıram:
Neighbor → Received/Advertised Routes → Policy → Next-Hop → Best Path → RIB/FIB
1. BGP Neighbor Durumunu Kontrol Edin
İlk komut:
get router info bgp summary
Burada özellikle:
- Neighbor IP
- Remote AS
- Up/Down süresi
- State/PfxRcd
- Session’ın stabil olup olmadığı
kontrol edilir. Fortinet de BGP doğrulamasında get router info bgp summary komutunu temel başlangıç noktası olarak kullanıyor. Fortinet Dokümantasyonu
2. Prefix Gerçekten Geliyor mu?
Peer Established olabilir ancak aradığınız route hiç advertise edilmiyor olabilir.
Kontrol:
get router info bgp neighbors <PEER-IP> received-routes
Karşı tarafa gönderdiğiniz route’lar için:
get router info bgp neighbors <PEER-IP> advertised-routes
Bu iki çıktı şu soruya hızlı cevap verir:
“Route karşı taraftan gerçekten geliyor mu ve ben ne advertise ediyorum?” Fortinet Dokümantasyonu
3. Prefix-List ve Route-Map Trafiği Filtreliyor mu?
Route peer’dan geliyor ancak FortiGate üzerinde beklediğiniz gibi görünmüyorsa:
Import route-map
Export route-map
Prefix-list
Community
AS-PATH filter
kontrol edilmelidir.
FortiGate route-map’leri BGP’de hem alınan (route-map-in) hem de gönderilen (route-map-out) route’ları filtrelemek veya attribute’larını değiştirmek için kullanılabilir. Fortinet Dokümantasyonu
Burada küçük ama önemli bir ayrım var:
Uzun AS-PATH tek başına route’un reddedilmesi anlamına gelmez. Genellikle best-path seçimini etkiler. Ancak route’un AS-PATH içerisinde local AS’in bulunması gibi loop-prevention durumlarında route kabul edilmeyebilir.
4. Next-Hop Erişilebilir mi?
BGP route doğru görünse bile next-hop erişilemiyorsa route forwarding için kullanılamayabilir.
Kontrol edilmesi gerekenler:
Route → Interface → ARP/Neighbor → Recursive Next-Hop → Return Path
Özellikle iBGP, SD-WAN veya recursive routing kullanılan yapılarda next-hop reachability kritik hale gelir.
5. Best Path Hangisi?
Aynı prefix için birden fazla BGP path varsa FortiGate yalnızca attribute’lara göre seçilen geçerli best path’i routing table’a taşıyabilir.
Örneğin:
- Local Preference
- AS-PATH
- Origin
- MED
- Weight
- eBGP/iBGP
gibi değerler sonucu etkileyebilir.
Fortinet’in BGP çıktısında:
*
geçerli path’i,
>
ise seçilen best path’i gösterir. Fortinet Dokümantasyonu
Yani route görünmesine rağmen:
“Neden bu path seçilmedi?”
sorusunu ayrıca sormak gerekir.
6. Route RIB ve FIB’e Girmiş mi?
Son olarak route’un gerçekten routing table’da kullanıldığını doğrulayın:
get router info routing-table all
Daha ileri kontrol için:
get router info kernel
kullanılabilir.
FortiGate’te kernel routing table gerçek Forwarding Information Base (FIB) olarak forwarding kararlarında kullanılır. Bu nedenle BGP tablosunda route görmek, onun mutlaka FIB’de aktif olduğu anlamına gelmez. Fortinet Dokümantasyonu
Trafik Hâlâ Geçmiyorsa
BGP tarafı tamamen doğruysa artık kontrol sırası:
Firewall Policy → NAT → Session → SD-WAN/PBR → Return Path
olmalıdır.
Çünkü:
BGP Established ≠ Route öğrenildi
Route öğrenildi ≠ Best Path
Best Path ≠ FIB’e yazıldı
FIB’de route var ≠ Uygulama trafiği çalışıyor
BGP troubleshooting’de asıl soru:
“Neighbor UP mı?”
değil,
“İlgili prefix doğru next-hop ile forwarding table’a kadar ulaştı mı ve dönüş yolu doğru mu?”
olmalıdır.
Cem Kemal Erbaş sitesinden daha fazla şey keşfedin
Subscribe to get the latest posts sent to your email.
Cem Kemal Erbaş Network, Siber Güvenlik ve Teknik Rehberler