BGP小小實驗

IPv4用的BGP,IPv6用的BGP4+

    基於自治系統(AS)的路由協議。IGP是一個一個的小島,BGP是把這些小島連起來的跨海大橋。

AS不一樣時,是eBGP連接,從eBGP鄰居學到的本AS路由,直接丟棄,就像從鄰居那裏聽到自家的事,不可信,丟掉。

AS一樣時,是iBGP連接。從同AS鄰居學到的路由,不告訴AS其它鄰居,因爲大家都在一個AS混的,不需要你告訴它。。

    GTSM通過檢測TTL值,達到保護路由目的。TTL不對勁,說明路由不對勁,而且TTL值也可以避免數據包在網絡一直遊蕩,爲0了就直接丟棄。

    主要方法還是實踐爲主,遇到問題,再去看理論知識,這樣得來的印象才最深刻。


*基本功能

    通過eNSP實驗來學習,AS就是擁有相同選路策略的IP網絡,如上圖兩塊AS65008和AS65009。IBGP就是一個AS內的BGP,路由器B是不會把從A聽到的關於AS65009的閒話告訴路由器D的,因爲他們是一個公司AS65009的,這樣會影響公司團結。

    從路由器C的GE0/0/0抓包,可以看到下面的數據包交互。

    路由器B的GE0/0/0向路由器C的GE0/0/0說:“keepalive,你要活着哦,親愛的。”

    可以看到BGP報文使用的源端口是179,然後路由器C反過來說:“知道了,親愛的。”而且也學路由器B那樣說親愛的要活着,路由器B也說知道了。貌似很無聊,但是這是心中有愛的表現,不然對方路由器掛了都不知道。兩個路由器都叫speaker,而且互稱peer(對等體)。

    路由器ID一般採用loopback地址,比如路由器A的1.1.1.1,路由器B的2.2.2.2.

    現在我想看到交換的各種報文,所以我先關掉了路由器C的GE0/0/0端口,但是路由器B上的bgp peer 路由器C還是連接着,這樣不行,後面肯定會有辦法解決這個問題(加快路由聚合速度)。實際上這是BGP peer會保持30s的連接,即使對方peer不可達,防止bgp不停震盪。

    現在先看BGP的五種報文,如果不看到實際包,肯定沒什麼印象。

    Open用來對等體連接,update用來交換路由,Notification用來中斷連接,keepalive用來保持。Route-refresh刷新路由。


     BGP本身是個鄰居路由協議,不發現路由,需要引進其它路由,import或者network兩種方式,上面例子路由器A就引入import-route direct,直連路由 8.8.8.1。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章