BGP'de as-path prepend komutu ile yol seçimini belirlemek

Bir ISP de gerçekleşecek olası sorunlardan etkilenmemek için bazı şirketler farklı servis sağlayıcılardan internet hizmeti alarak yedeklilik sağlar. Yedek olarak alınan hat genel olarak daha düşük bir hıza sahiptir. Bu sebeple birincil hattın çalıştığı durumlarda trafiğin bu hat üzerinden akması bu hatta sorun oluşması durumunda ise diğer hattın kullanılması istenir. İstenildiği takdirde iki hat ortak olarak çalıştırılıp belirli rotalar birincil hat üzerinden, geri kalanları ikincil hat üzerinden akıtılabilir. Müşteriler burda belirtilen durumlarda servis sağlayıcı ile arasında BGP konuşurlar. BGPde en iyi yol hesaplanması ile ilgili Cisco da bulunan dökümana bu adres üzerinden erişebilirsiniz. Dökümanda da görüldüğü gibi weight, local_pref, MED, origin gibi değerlerin aynı olması durumunda dış networklerden bize ulaşan paketler distance vektor routing protokollerinde olduğu gibi en kısa AS bulunan rotayı seçer.  Networkümüzden dış dünyaya anons yaparken AS_PATH değeri ile oynayabiliriz. Her ne kadar ISP’mizin istemesi durumunda bunu engelleme yeteneği olsa da yedeklilik durumunda uygulanabilecek sık kullanılan yollardan birisi budur.



Yapılandırmaya girmeden önce konuyu biraz daha açalım. RouterA bizim çıkış routerımız, SP-A birincil hat, SP-B ise yedek hat olsun ve bu routerlara doğrudan bağlı bir B routerı olsun. RouterA üzerinde dış networke çıkan paketlerin 1. rotayı tercih etmesi için farklı yöntemler uygulanabilir şimdilik burda RouterA üzerinde local_pref değeri ile oynanıp dış dünyaya yollanılan paketler bu yoldan gönderilmeye başlandı diyelim. Dış dünyadan bize dönen paketler için ise herhangi bir durum belirtmemiş oluyoruz. Yani B routerına giden bir paket SP-A üzerinden gidebilecken ordan gelen bir paket SP-B üzerinden bize geri dönebilcek. BGP anonslarımız da SP-A üzerinden yapılan anonsları daha iyi olarak göstermek için SP-B ye yapılan anonslarda networkümüzü daha uzakta göstermemiz gerekmektedir. Bunu sağlamak için Bu komuşya yapılan anonslarda sanki network bir kaç AS daha ilerdeymiş gibi davranabiliriz. Bu aynı RIP de bir routerin bir hop ilerisindeki netowrkü sanki on hop ilerisinde gibi anons etmesi gibi bir durumdur. Kısacası SP-A ya yapılan anonsda networkümüzü bir AS uzaklıkta gösterirken, SP-B ye yapılan anonslarda bu değeri istediğimiz kadar arttırabiliriz. Bu yapılandırmayı route-map ile belirtip istediğimiz komşuya yapılan anonslarda out yönünde uygulayabiliriz. Örnek yapılandırma şöyle olabilir;

router bgp 300
neighbor 3.3.3.3 remote-as 200
neighbor 3.3.3.3 description Backup ISP
neighbor 3.3.3.3 route-map prepend out
!
route-map AS-OPT
set as-path prepend 300 300 300 300

Bu durumda SP-B RouterA tarafından anons edilen rotaları aşağıdaki gibi görecektir. Yani burayı 5 AS ileride görcektir. SP-A da ise RouterA ya giden paketlerde aynı yer 1 AS uzaklıkta görünmektedir. Yukarıda da görüldüğü gibi AS-PATH değerine 4 tane aynı AS eklenmiştir yani toplam değer belirtildiği gibi 5 AS e ulaşmıştır. Ekran çıktısını kendi yaptığım küçük bir labdan aldım bir sonraki yazıda bu labı nasıl yaptığımı da belirteceğim. Burda görüldüğü gibi SP-B bile RouterA ya SP-A üzerinden gitmektedir.

As-path prepend komutu uygulanırken kaç adet ekstradan AS eklenmesi gerektiğini hesaplamanın garanti bir yolu yoktur kimi zamanlar burda belirtildiği gibi 4 AS eklemek yeterli olmayabilir, size gelen paketlerin hangi rotayı izlediğini dünyanın farklı notlarından izlemek için http://www.bgp4.as/looking-glasses adresinde bulunan Looking Glass web siteleri aracılığı ile belirleyebilirsiniz.

“BGP'de as-path prepend komutu ile yol seçimini belirlemek” için bir cevap

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir