Cisco BGP笔记
一:BGP術語
-將企業網連接到ISP:
1.共有ip地址空間
2.連接類型和路由選擇 mpls+vpn
3.連接冗余
只連接到一家ISP,但沒有冗余鏈路,叫單宿
只連接到一家ISP,有兩條鏈路來提供冗余,叫雙宿
連接到多加ISP,叫做多宿
連接到多加ISP,而且每條鏈路都有兩條鏈路來提供冗余,叫雙多宿
-簡單BGP介紹:
BGP是交換無環路的路徑矢量的可達信息。被設計用于支持大型互聯網絡,如internet
-BGP適用于以下幾種場合 :
允許某個AS做為穿越AS,允許數據包穿越到別的AS(比如服務提供商的網絡)
AS有多條到其他AS的連接
需要對進入和離開某AS的流量進行路由策略和控制
-以下幾種場合請不要使用BGP :
只有單個到達Internet或別的AS的連接 (可以使用默認路由而無需使用BGP)
路由器沒有路夠的內存和CPU資源
缺乏對BGP路由策略的理解
AS之間的鏈路帶寬過低
-BGP特征:
-ospf,eigrp使用的是1-to-1窗口,它是前一個分組得到確認后才能發送下一個確認,這種處理方法效率低,
如果用在bgp這種大型網絡上,有成千上萬的分組要轉發,容易導致延遲。
-而BGP將TCP用作其傳輸層協議,后者使用的是面向連接的可靠遞送,因為tcp有確認功能,而且使用滑動窗口,
接收方在收到指定數量的字節數時,發送確認
-BGP鄰接關系
BGP對等體(也叫鄰居),可以位于當前自制系統的內部,也可以是位于外部
1。外部BGP鄰居(EBGP):一般直接相連
兩者要交換bgp路由更新,先要完成tcp三次握手,一般,使用的鄰居地址是直連網絡的地址
如圖所示:
EBGP.png
2.內部BGP鄰居(IBGP):無需直連,但要可達,在同一自治系統內部
通常在bgp命令neighbor中指定一個環回地址來建立bgp會話
如圖所示:
IBGP.png
BGP 建立鄰居關系經歷:
-空閑 (IDLE)
-連接(CONNECT)
-活動(ACTIVE)
-打開發送(OPEN SENT)
-打開確認 (OPNE CONFIRM)
-已建立(ESTABLISHED)
中轉AS通常是指 ISP,在兩個外部AS之間路由數據流
在 AS 內,IBGP 鄰居之間的路徑稱為中轉路徑
將BGP路由重分發到IGP中(OSPF、IS-IS),但不建議這種方法
最佳做法,AS內所有路由器上運行 IBGP
非中轉AS不在ISP之間傳遞路由
為做出正確的路由選擇,AS 中的 BGP 路由器必須知道傳入的所有BGP 路由
如圖所示;
中轉.png
4.BGP 同步
BGP同步規則,不使用或不通告從IBGP鄰居學習到路由 給任何EBGP鄰居,直到IGP也學習到相同路由
同步規劃要求 IGP 協議的路由表必須跟IBGP路由表同步
自治系統的中轉路徑中的所有路由器以全互聯方式運行 IBGP 時,禁用 BGP 同步才是安全的; Cisco IOS 12.2(8)T 和更新的版本中,BGP同步默認被禁用。禁用同步后,路由獲悉路由后就可以通告它
禁止同步的配置:
Router(config-router)#no synchronization
5.BGP屬性(非常重要)
BGP使用路徑屬性來確定前往網絡的最佳路徑
-路徑屬性分為 4 類:
公認強制
公認可選
可選傳遞
可選非傳遞
-公認屬性
公認屬性是所有 BGP 實現都必須能夠識別的屬性
被傳輸給 BGP 鄰居
公認強制屬性必須出現所有BGP更新中
公認自由屬性可以不出現在BGP更新中
-可選屬性
非公認屬性被稱為可選的
可選屬性可是傳遞的或非傳遞的
可選傳遞屬性,對于不支持可選傳遞屬性,路由器將原封不動地傳遞給其他BGP路由器,并將其標記為部分的
可選非傳遞屬性,對于不支持可選傳遞屬性,路由器必須將其刪除,且不將其傳遞給其他BGP路由器
-BGP 定義的屬性包括 :
AS 路徑 (AS path)
下一跳(Next-hop)
源頭(Origin)
本地優先(Local preference)
度量值(MED)
wight (權重 思科專用)
其他(Others)
1.AS Path 屬性
每當路由選擇更新通過AS時,該AS的編號都被加入到路徑列表的開頭,然后將其通告給下一個EBGP鄰居
通俗地說吧,就是,發給EBGP鄰居,就加上自己的as號,發給ibgp,不修改as路金屬性
它確保五環路環境
2.下一跳(Next-hop)
對于EBGP,下一跳是發送更新的鄰居路由器的 IP 地址
3.源頭(Origin)
IGP (i)
network 命令通告BGP路由時,IGP源頭用 I 表示
EGP (e)
通過 EGP 獲悉,在BGP表中用 e 表示
Incomplete (?)
路由的源頭未知或通過其他方法獲悉,用 ?表示
源頭是公認強制屬性,定義路徑信息的源頭
4.本地優先(Local preference)
(只發給IBGP鄰居,告訴他們去外部自制系統的首選路徑)
本地優先級是公認可選屬性 :
本地優先告訴 AS 中路由器,那條路徑是離開AS的首選路徑
本地優先級越高,路徑選中的可能性越大
本地優先級,只在同一個AS中的路由器之間交換
Default value is 100.
如圖所示:AS64520 去172.16.0.0 有兩條路可走,有兩個路由器(A和B)可以去,
為了能走A路由器這條路線,我們把A的本地優先級設為200,把B設為150,所有A的本地優先級大于B,
所有走A出去,到目標地址啦~
本地屬性.png
5.MED 屬性
(只發給EBGP,影響外部自制系統進入內部自治系統的路徑。有點跟本地優先級屬性相反)
MED 屬性稱為度量值(metric),是一種可選非傳遞屬性
MED 是在自主系統之間交換的
MED 用于向外部鄰居指出進入AS的首選路徑,影響進入 AS 的數據流,而本地優先影響離開AS數據流
度量值越小,路徑被選中的可能性越大
MED 被發送給EBGP對等體,并在其AS內傳播MED,不將它傳遞下一個AS
如圖所示:AS65500 去172.16.0.0 有兩條路可走,有兩個路由器(B和C)可以去,
為了能走B路由器這條路線,我們把B的metric設為150,把C設為200,所有B的metric小于C,
所有走B出去,到目標地址啦~
MED.png
重點注意:MED和本地優先級之間的差別在于:MED影響進入自制系統的數據流,
二本地優先級是影響離開自制系統的數據流。
而且,本地優先級,級別越高,被選可能性越大
而,MED,metric越小,被選可能性越大
Weight 是在路由器本地配置,不會傳遞給 BGP 鄰居
選擇權重最高的路由
要知道,如果有多臺路由器離開自治系統,用每個路由器的本地優先級比較來決定。
若只一臺路由器而多個接口可以離開自治系統,用每個接口的權重來決定
如圖所示:
權重.png
BGP 選擇最佳路由步驟 (要背下啊):
只考慮已同步、沒有AS環路,且下一跳地址有效 :
1.最高權重 / Prefer highest weight (local to router).
2.最高本地優先 / Prefer highest local preference (global within AS).
3.當前路由器通告的路由 優先 / Prefer route originated by the local router (next hop = 0.0.0.0).
4.最短AS 路徑 / Prefer shortest AS path.
5.選擇源頭編碼 / Prefer lowest origin code ( I < E < ? ).
6.MED值最小值 / Prefer lowest MED (exchanged between autonomous systems).
7.如果MED值相同,EBGP優先于IBGP
8.對 IBGP 如果同步被關閉,只有內站路徑 ,選擇最近的
9.對 EBGP 路徑,選擇最老的路由
10.首選鄰居BGP路由器 ID 最小的路由
11.如果路由器ID相同,則選擇鄰居 ID 地址最小路由
總結
以上是生活随笔為你收集整理的Cisco BGP笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sichost.exe,winxphel
- 下一篇: C#控件数组