Amaç
iBGP full-mesh gerekliliğini route reflector ile aşmak, next-hop ve döngü önleme mekanizmalarını (originator-id, cluster-list) görmek.
Mimari
AS 65000 içinde R1 route reflector, R2, R3 ve R4 istemcidir. İç yönlendirme için OSPF Area 0 kullanılır ve iBGP komşulukları loopback’ler (system interface) üzerinden kurulur. R2, AS 65100’deki R5 ile eBGP konuşur. R5, Loopback1 üzerindeki 192.168.50.0/24 ağını duyurur. Hedef: bu ağın R3 ve R4’te görünmesi. Platform: Nokia SR OS.
Topoloji
IP planı
| Router | Loopback | Arayüzler | AS |
|---|---|---|---|
| R1 (RR) | 1.1.1.1/32 | 10.0.12.1, 10.0.13.1, 10.0.14.1 | AS 65000 |
| R2 | 2.2.2.2/32 | 10.0.12.2, 10.0.25.1 | AS 65000 |
| R3 | 3.3.3.3/32 | 10.0.13.2 | AS 65000 |
| R4 | 4.4.4.4/32 | 10.0.14.2 | AS 65000 |
| R5 | 5.5.5.5/32 | 10.0.25.2 | AS 65100 |
Görevler ve Canlı CLI
Aşağıdaki parlayan başlığa tıkla, laboratuvar açılsın. Solda cihaz terminalleri, sağda görevler var; bir görevi doğru yapınca yeşil tik yanar. Yanlış görevin üstüne tıklarsan neyin eksik olduğunu ve kısa bir ipucunu görürsün. İlerleme tarayıcında saklanır.
Kontrol soruları
- Full-mesh iBGP’de N router için kaç komşuluk gerekir ve RR bunu nasıl azaltır?
- Rota neden R3’e ilk anda next-hop erişilemez olarak gelebilir?
- originator-id ve cluster-list döngüyü nasıl engeller?
- RR çökerse ne olur ve gerçek bir ağda bu riski nasıl azaltırsın?
- İstemciler arası komşuluk kurmak neden gereksiz hatta sakıncalı olabilir?
- Tam mesh iBGP’de her router diğer tüm router’larla komşu olmalıdır: N×(N−1)/2 oturum. 10 router için 45, 100 router için 4950 oturum eder. Route reflector (RR) kullanınca istemciler yalnızca RR ile komşu olur (yaklaşık N−1 oturum); RR, bir istemciden öğrendiği iBGP rotasını diğer istemcilere yansıtır. Ölçeklenebilirlik doğrusal olur.
- iBGP, rotayı komşuya iletirken next-hop’u değiştirmez; next-hop, rotayı ağa sokan dış (eBGP) komşunun adresi olarak kalır. R3 bu adrese bir IGP rotasına sahip değilse rota ’next-hop erişilemez’ diye işaretlenir ve kullanılamaz. Çözüm: o adresi IGP’ye katmak ya da kenar router’da
next-hop-selfkullanmaktır. - RR, istemciden öğrendiği rotayı yansıtırken originator-id özniteliğine rotayı ağa sokan router’ın kimliğini yazar; bir router kendi router-id’sini taşıyan bir rotayı geri alırsa onu yok sayar. Cluster-list ise rotanın geçtiği RR kümelerinin kimliklerini tutar; bir RR kendi cluster-id’sini listede görürse rotayı reddeder. Böylece iBGP’de rota RR’ler arasında dönüp dolaşamaz.
- Tek RR varsa, istemciler birbirinden rota öğrenemez; yeni rotalar yayılmaz ve RR düşünce yansıtılan rotalar silinir. Gerçek ağlarda en az iki RR kullanılır; her istemci ikisiyle de komşu olur. RR’ler ayrı yerlerde konumlandırılır, birbirleriyle de komşu olur ve (aynı ya da farklı) cluster-id ile döngü koruması sağlanır. Böylece biri düşse de rotalar diğerinden alınır.
- RR, bir istemciden aldığı rotayı zaten diğer istemcilere yansıtır; istemcilerin birbirleriyle komşu olmasına gerek yoktur. Fazladan komşuluk RR’nin ölçeklenebilirlik kazancını geri alır (oturum sayısı tekrar kare olarak artar) ve aynı rota birden çok yoldan geldiği için yol seçimi, yapılandırma ve sorun giderme karmaşıklaşır. Bu yüzden istemciler yalnızca RR(ler) ile konuşur.
Nokia notu: SR OS’te portlar, OSPF/LDP/BGP ve servisler varsayılan olarak
shutdowngelir;no shutdowndemeyi unutma. eBGP/iBGP ile rota duyurmak için export policy (prefix-list + policy-statement) gerekir.