bgp私房貨_第1頁(yè)
已閱讀1頁(yè),還剩437頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、BGP,※ BGP 簡(jiǎn)介※ BGP 消息 ● BGP 消息頭部 ● Open 消息 ● Update 消息 ● Notification 消息 ● Keepalive 消息,目錄(特性),※ BGP 有限狀態(tài)機(jī) ● Idle 狀態(tài) ● Connect 狀態(tài) ● Active 狀態(tài) ● OpenSen

2、t 狀態(tài) ● OpenConfirm 狀態(tài) ● Established 狀態(tài),※ 路徑屬性 ● ORIGIN 屬性 ● AS_PATH 屬性 ● NEXT_HOP 屬性 ● LOCAL_PREF 屬性 ● MED 屬性 ● ATOMIC_AGGREGATE 屬性 ● AGGREGATE 屬性 ●

3、 COMMUNITY 屬性 ● ORIGINATOR_ID 屬性 ● CLUSTER_LIST 屬性,目錄(特性),● Administrative Weight※ IGP、IBGP 和 EBGP 的關(guān)系※ BGP 決策進(jìn)程 ● BGP 路由表 ● BGP 的 13 條選路原則※ 管理 BGP 連接※ 對(duì)等體組※ 路由反射器※ 聯(lián)盟,※

4、宣告默認(rèn)路由※ 路由匯總※ 條件路由※ 路由過(guò)濾 ● 路由過(guò)濾的 4 種方法 ● Prefix-list 使用方法 ● ORF※ 路由阻尼※ 其他命令,目錄(特性),※ BGP 基本配置※ 多跳 EBGP & 關(guān)閉直連檢測(cè)※ 通過(guò) IGP 對(duì) BGP 進(jìn)行負(fù)載分擔(dān)和冗余※ 宣告默認(rèn)路由※ 將 IGP 路由重分發(fā)到 BGP 中※

5、 重分發(fā) OSPF 外部路由到 BGP※ backdoor※ 開(kāi)啟 auto-summary※ 通過(guò)靜態(tài)路由匯總※ 通過(guò) aggregate-address 進(jìn)行路由匯總-1※ 通過(guò) aggregate-address 進(jìn)行路由匯總-2,目錄(配置),※ BGP通過(guò) aggregate-address 進(jìn)行路由匯總-3※ 宣告聚合路由和選定的精確路由※ 更改聚合路由的屬性※ 為聚合路

6、由使用 AS_SET 屬性※ 基于精確路由的屬性構(gòu)建聚合路由※ 認(rèn)證※ 限制本地接收鄰居發(fā)送路由的路由量※ 使用 distribute-list 對(duì) NLRI 進(jìn)行過(guò)濾※ 使用 filter-list 對(duì) AS_PATH 進(jìn)行過(guò)濾※ 通過(guò) LOCAL_PREF 屬性控制出站路由※ 管理性權(quán)值,※ 通過(guò) MED 屬性控制入站路由-1※ 通過(guò) MED 屬性控制入站路由-2※ 預(yù)附加

7、AS_PATH※ 路由標(biāo)記 ● 路由標(biāo)記 set as-path tag ● 路由標(biāo)記 set automatic-tag※ 路由阻尼※ 對(duì)等體組※ 周知團(tuán)體屬性的配置※ 自定義團(tuán)體屬性的配置※ 使用新格式配置自定義團(tuán)體屬性,目錄(配置),※ 私有 AS 號(hào)※ 聯(lián)盟 ● 聯(lián)盟的基本配置 ● 聯(lián)盟中 MED 屬性的操作※ 路由反射器

8、,BGP 簡(jiǎn)介,,BGP 簡(jiǎn)介,從云間俯視 BGP 的世界,一切細(xì)節(jié)都將被忽視,數(shù)據(jù)包按跳途經(jīng)各個(gè) AS(自主系統(tǒng))最終到達(dá)目的地。一個(gè) AS 可能是一個(gè)運(yùn)營(yíng)商,在 AS 的內(nèi)部運(yùn)行著許多路由器,這些路由器運(yùn)行著 IGP 和 IBGP。,,這種宏觀的按跳路由使得 BGP 與距離矢量協(xié)議極其相似,但因?yàn)槠涿刻膯挝皇?AS,所以被稱(chēng)之為路徑矢量(path vector)協(xié)議。在 BGP 路由的傳遞過(guò)程中,途經(jīng)的每個(gè) AS 號(hào)都會(huì)被累加

9、到路由通告消息的 AS_PATH 屬性中(累加到 AS_PATH 列表的左側(cè)),每臺(tái)路由器都會(huì)通過(guò)檢測(cè)所學(xué)路由條目的 AS_PATH 中是否包含自己的 AS 號(hào)來(lái)感知是否形成了環(huán)路,如果宣入路由的 AS_PATH 中出現(xiàn)了自己的 AS 號(hào),則表明出現(xiàn)了環(huán)路,本地路由器將忽略該路由,以達(dá)到環(huán)路避免的目的。,BGP 簡(jiǎn)介,,BGP 的鄰居可以位于相同 AS,也可以位于不同的 AS,在同一個(gè) AS 內(nèi)的鄰居稱(chēng)為 IBGP 鄰居,在不同 AS

10、之間建立的鄰居被稱(chēng)為 EBGP 鄰居。兩臺(tái)路由器建立鄰居關(guān)系后,將交換各自路由表中的全部信息,隨后僅做增量更新。由于使用 TCP 進(jìn)行信息傳輸,因此路由器之間的信息交互是可靠的。鄰居建立后,路由器將使用 Keepalive 報(bào)文來(lái)進(jìn)行保活,Cisco 路由器的默認(rèn) Keepalive 間隔是 60 秒。如果在 Keepalive 間隔的 3 倍時(shí)間內(nèi)既沒(méi)有收到鄰居發(fā)送的 Keepalive,也沒(méi)有收到鄰居發(fā)送的 Update 消

11、息,則表明鄰居間的鏈路出現(xiàn)故障,從而拆除鄰居關(guān)系。,BGP 簡(jiǎn)介,,BGP 消息,,BGP 使用 TCP 協(xié)議進(jìn)行消息的可靠傳輸,由于使用的協(xié)議是 TCP,所以 BGP 的鄰居需要以點(diǎn)到點(diǎn)的方式進(jìn)行建立。BGP 監(jiān)聽(tīng) TCP 的 179 端口,被動(dòng)地等待到達(dá)本地 179 端口的 TCP 建連,同時(shí),本地也使用隨機(jī)端口號(hào)主動(dòng)向?qū)Χ寺酚善鞯?TCP 179 端口發(fā)起 TCP 的建連??梢酝ㄟ^(guò)下面的命令來(lái)設(shè)置本路由器建立 TCP 的連接方

12、式: neighbor x.x.x.x transport connection-mode [ active | passive ],BGP 消息,,可以通過(guò)命令 show tcp brief 查看已成功建立的 TCP 連接,同時(shí)可以通過(guò)命令 clear tcp tcb [ TCB address ] 清除已建立的 TCP 連接。,BGP 消息,,BGP 消息,在 TCP 連接建立完畢后,鄰居之間就可以進(jìn)行信息交互了。BG

13、P 使用了以下 4 種消息:· Open 消息 (打開(kāi)消息,類(lèi)型 1)· Update 消息 (更新消息,類(lèi)型 2)· Notification 消息 (通告消息,類(lèi)型 3)· Keepalive 消息 (?;钕?,類(lèi)型 4)當(dāng)發(fā)送消息給 EBGP 鄰居時(shí),默認(rèn)的 TTL 為 1,而發(fā)送消息給 IBGP 鄰居時(shí),TTL 被

14、設(shè)置為 255 。,,BGP 消息(BGP 消息頭部),,BGP 消息(BGP 消息頭部),BGP 消息頭部格式:,,· 標(biāo)志(marker) 用于探測(cè) BGP 對(duì)等體之間的同步丟失情況,如果支持認(rèn)證,則進(jìn)行消息 認(rèn)證。如果消息類(lèi)型是 Open 或 Open 消息承載了認(rèn)證信息(作為可選 參數(shù)),則標(biāo)記必須是全 1,否則標(biāo)記的值會(huì)通過(guò)認(rèn)證機(jī)制來(lái)計(jì)算。· 長(zhǎng)度(length)

15、包括 BGP 消息頭部在內(nèi)的消息總長(zhǎng)度。· 類(lèi)型(type) 消息的類(lèi)型,共有四種類(lèi)型的消息。,BGP 消息(BGP 消息頭部),,BGP 消息(Open 消息),,BGP 消息(Open 消息),Open 消息格式:,,在 TCP 連接建立后,雙方會(huì)互發(fā) Open 消息給對(duì)方,Open 消息中包含:· BGP 版本號(hào):默認(rèn)版本號(hào)為 BGP-4,當(dāng)雙方版本號(hào)不一致時(shí),持有較高 版本號(hào)的路

16、由器會(huì)下調(diào)自己的版本號(hào),直到雙方所協(xié)商的版本一致。· 我的 AS 號(hào):發(fā)起者的 AS 號(hào),用于確定 IBGP 或 EBGP 鄰居關(guān)系。· BGP RID:路由器 ID,用于標(biāo)識(shí)自己,與 OSPF 的選擇順序一致。· 可選參數(shù)長(zhǎng)度:表示可選參數(shù)的長(zhǎng)度,無(wú)可選參數(shù)時(shí)填 0 。· 可選參數(shù): 用于向鄰居宣告自己的能力,包括自身是否支持驗(yàn)證、多協(xié)議 擴(kuò)展、路由刷新、GR 等功能。,

17、BGP 消息(Open 消息),,BGP 消息(Update 消息),,BGP 消息(Update 消息),Update 消息格式:,Update 消息格式 路徑屬性字段中的屬性類(lèi)型部分的格式,,,Update 消息用來(lái)向鄰居宣告一條或多條可行路由、撤銷(xiāo)一條或多條路由或同時(shí)宣告兩者,它包括:· 不可行路由的長(zhǎng)

18、度 指示后面緊接的“被撤銷(xiāo)路由”字段的的長(zhǎng)度,如果 Update 消息中不存 在需要被撤銷(xiāo)的路由,該字段的長(zhǎng)度為 0。· 被撤銷(xiāo)路由 用來(lái)填寫(xiě)被撤銷(xiāo)路由的條目明細(xì),它是一個(gè)(長(zhǎng)度,前綴)的二元組, 如果二元組中的長(zhǎng)度為 0,則表示匹配全部路由。,BGP 消息(Update 消息),,· 路徑長(zhǎng)度 指示緊隨其后的“路徑屬性”字段的長(zhǎng)度,如果 Update 消息中沒(méi)有路徑

19、 屬性和 NLRI,則該字段為 0 。· 路徑屬性 描述所經(jīng)過(guò)的 AS,用于環(huán)路避免。該字段是一個(gè)TLV 。· NLRI(網(wǎng)絡(luò)層可達(dá)信息) 該字段是一個(gè)(長(zhǎng)度,前綴)的二元組,用于通告可行路由。如果二元組 中的長(zhǎng)度部分為 0,則表示匹配全部路由。,BGP 消息(Update 消息),,BGP 路由并不是立刻通告給鄰居,IBGP 每隔 5 秒集中進(jìn)行一次路由的集中通告,EBGP 則每

20、隔 30 秒進(jìn)行一次路由通告。可以通過(guò)命令 neighbor x.x.x.x advertisement-interval 修改向鄰居通告的間隔時(shí)間(通過(guò)鄰居的 AS 可獲知是 IBGP 還是 EBGP)。,BGP 消息(Update 消息),,路徑屬性及屬性值,BGP 消息(Update 消息),,BGP 消息(Update 消息),,BGP 消息(Notification 消息),,BGP 消息(Notific

21、ation 消息),Notification 消息格式,,當(dāng)路由器感知到差錯(cuò)時(shí),會(huì)發(fā)送 Notification 消息給鄰居,并在發(fā)送該消息后立即關(guān)閉與鄰居的 BGP 連接。· 差錯(cuò)代碼 指示差錯(cuò)類(lèi)型。· 差錯(cuò)子代碼 提供更精確的差錯(cuò)。· 數(shù)據(jù) 用于診斷差錯(cuò)原因的數(shù)據(jù)。,BGP 消息(Notification 消息),,差錯(cuò)代碼和差錯(cuò)字代碼,BGP 消息(Notific

22、ation 消息),,BGP 消息(Notification 消息),,BGP 消息(Notification 消息),,BGP 消息(Keepalive 消息),,BGP 消息(Keepalive 消息),Keepalive 消息僅包含一個(gè) BGP 消息頭部,不包含其他任何數(shù)據(jù)。當(dāng)本地路由器收到 Open 消息后,會(huì)檢查其攜帶的參數(shù)。如果參數(shù)可被接受,則回應(yīng)一條 Keepalive 消息進(jìn)行確認(rèn),隨后會(huì)以每隔 60 秒的速度發(fā)送

23、Keepalive 消息用來(lái)刷新鄰居的 hold timer,以達(dá)到?;畹哪康?。當(dāng)本地路由器收到鄰居發(fā)送來(lái)的 Update 消息時(shí),也會(huì)刷新 hold timer。如果長(zhǎng)時(shí)間(默認(rèn)是 Keepalive 間隔的 3 倍時(shí)間,即 180 秒)沒(méi)有收到鄰居發(fā)送來(lái)的 Keepalive 消息或 Update 消息,將會(huì)導(dǎo)致本地的 hold timer 超時(shí),從而認(rèn)定鄰居之間的連接出現(xiàn)故障,并立即終止鄰居關(guān)系。,,當(dāng) Keepalive 設(shè)

24、置為 0 時(shí),則表示雙方不需要發(fā)送 Keepalive,這就意味著“不會(huì)發(fā)生鏈路故障”??梢酝ㄟ^(guò) BGP 視圖下的命令 timers bgp 來(lái)改變 Keepalive 的發(fā)送間隔和 hold timer 的時(shí)間:例:R1(config-router)# timers bgp 60 180,BGP 消息(Keepalive 消息),,BGP 有限狀態(tài)機(jī)(BGP Finite State Machine,F(xiàn)SM),,BGP 有

25、限狀態(tài)機(jī),BGP 的狀態(tài)機(jī)如下:,,BGP 有限狀態(tài)機(jī)(輸入事件,IE),,BGP 有限狀態(tài)機(jī)(Idle 狀態(tài)),,BGP 有限狀態(tài)機(jī)(Idle 狀態(tài)),當(dāng) BGP 進(jìn)程啟動(dòng)時(shí),將進(jìn)入 Idle 狀態(tài)。在這個(gè)狀態(tài)下,BGP 拒絕任何進(jìn)入的連接,也不分配資源給鄰居。BGP 將在這個(gè)狀態(tài)下進(jìn)行資源初始化,隨后啟動(dòng) ConnectRetry 定時(shí)器,初始化監(jiān)聽(tīng)套接字。初始化工作完畢后,一旦監(jiān)聽(tīng)到連接進(jìn)入,則遷移到 Connect 狀態(tài)。

26、當(dāng) BGP 發(fā)言者探測(cè)到連接差錯(cuò)時(shí),將關(guān)閉連接,并遷移到 Idle 狀態(tài)。如果因任何問(wèn)題導(dǎo)致?tīng)顟B(tài)機(jī)遷移到 Idle 狀態(tài),路由器都將 ConnectRetry 定時(shí)器設(shè)置為 60 秒(Cisco IOS 的默認(rèn)值)。當(dāng)定時(shí)器到期后,路由器會(huì)重啟 BGP 進(jìn)程。如果再次發(fā)生錯(cuò)誤,則設(shè)置 ConnectRetry 定時(shí)器時(shí)間將翻倍,即 120 秒,如果連續(xù)出錯(cuò),定時(shí)器的時(shí)長(zhǎng)每次都會(huì)再次翻倍 。,,BGP 有限狀態(tài)機(jī)(Connect 狀

27、態(tài)),,BGP 有限狀態(tài)機(jī)(Connect 狀態(tài)),如果保持在 Connect 狀態(tài),則表明雙方正在建立 TCP 連接。· 如果 TCP 連接建立成功,則 BGP 進(jìn)程會(huì)清除 ConnectRetry 定時(shí)器, 發(fā)送 Open 消息給鄰居,并遷移到 OpenSent 狀態(tài)。· 如果 TCP 連接失?。ɡ?TCP 重傳超時(shí)),本地路由器會(huì)在繼續(xù)監(jiān)聽(tīng) TCP 端口的同時(shí)重啟 Connect

28、Retry 定時(shí)器,并遷移到 Active 狀態(tài)。· 如果在 Connect 狀態(tài)下 ConnectRetry 定時(shí)器超時(shí),本地路由器會(huì)重啟 定時(shí)器,并初始化套接字,以便發(fā)起一個(gè)新的 TCP 連接到對(duì)端。,,BGP 有限狀態(tài)機(jī)(Active 狀態(tài)),,BGP 有限狀態(tài)機(jī)(Active 狀態(tài)),在 Active 狀態(tài)中,Cisco 路由器的 BGP 進(jìn)程會(huì)每隔 30 秒(加入一個(gè)五秒的隨機(jī)值)進(jìn)行一次主動(dòng)連接,

29、同時(shí)會(huì)監(jiān)聽(tīng)自己的 TCP 179 端口,如果 TCP 連接建立成功,則進(jìn)行下面的操作:· 清除 ConnectRetry 定時(shí)器;· 設(shè)置 hold timer 為一個(gè)較大值(建議 4 分鐘);· 發(fā)送 Open 消息給鄰居,遷移到 OpenSent 狀態(tài)。如果此狀態(tài)下的 ConnectRetry 定時(shí)器超時(shí),則回遷到 Connect 狀態(tài)。如果 TCP 連接中的遠(yuǎn)端 IP 地址不正確,本地

30、將重啟 ConnectRetry 定時(shí)器,并繼續(xù)進(jìn)行 TCP 監(jiān)聽(tīng)。,,BGP 有限狀態(tài)機(jī)(OpenSent 狀態(tài)),,BGP 有限狀態(tài)機(jī)(OpenSent 狀態(tài)),進(jìn)入 OpenSent 狀態(tài)時(shí),表明本地路由器已經(jīng)發(fā)送 Open 消息給鄰居,并且本地路由器正在等待鄰居發(fā)送 Open 消息。· 如果收到鄰居發(fā)來(lái) Open 消息中的參數(shù)正確,則會(huì)回應(yīng)一個(gè) Keepalive 消息,并設(shè)置 hold timer 為

31、 Keepalive 時(shí)間的 3 倍(hold timer 是通 過(guò) Open 消息協(xié)商好的值),隨后遷移到 OpenConfirm 狀態(tài)。· 如果收到的 Open 消息中有差錯(cuò),則回應(yīng) Notification 消息,并遷移到 Idle 狀態(tài)。,,BGP 有限狀態(tài)機(jī)(OpenSent 狀態(tài)),通過(guò) Open 消息中攜帶的 AS 號(hào),可以確定鄰居關(guān)系是 IBGP 還是 EBGP。如果收到斷開(kāi) TCP 連

32、接的請(qǐng)求,本地進(jìn)程將會(huì)關(guān)閉 BGP 連接,并隨后重啟 ConnectRetry 定時(shí)器,回遷到 Active 狀態(tài)。如果 hold timer 超時(shí),本地路由器將發(fā)送 Notification 消息給對(duì)方。,,BGP 有限狀態(tài)機(jī)(OpenConfirm 狀態(tài)),,BGP 有限狀態(tài)機(jī)(OpenConfirm 狀態(tài)),進(jìn)入 OpenConfirm 狀態(tài)時(shí),表示本地路由器正在等待鄰居的 Keepalive 或 Notification

33、 消息:· 如果收到 Keepalive 消息,將遷移到 Established 狀態(tài)。· 如果收到 Notification 消息或斷開(kāi) TCP 連接請(qǐng)求,則遷移到 Idle 狀態(tài)。· 如果在收到 Keepalive 消息前 hold timer 超時(shí),則發(fā)送 Notification 消息給對(duì)方。· 定期發(fā)送 Keepalive 消息用來(lái)進(jìn)行?;睿↘eepalive

34、timer 用于計(jì)算 Keepalive 消息發(fā)送的間隔)。,,BGP 有限狀態(tài)機(jī)(Established 狀態(tài)),,BGP 有限狀態(tài)機(jī)(Established 狀態(tài)),Established 狀態(tài)表示已經(jīng)與 BGP 鄰居形成了對(duì)等體關(guān)系。對(duì)等體之間將交換 Update、Notification 和 Keepalive 消息。· 如果收到了 Update 或 Keepalive 消息,本地路由器將重置 hold

35、 timer, 如果協(xié)商的 hold timer 是 0,則無(wú)需重置定時(shí)器的動(dòng)作;· 如果收到 Notification 消息,將遷移到 Idle 狀態(tài);· 如果收到的 Update 消息在本地檢測(cè)到差錯(cuò),將發(fā)送 Notification 消息, 隨后本地遷移到 Idle 狀態(tài);· 如果 hold timer 超時(shí),則發(fā)送 Notification 消息,并遷移到 Idle 狀態(tài)

36、;· 如果收到斷開(kāi) TCP 連接請(qǐng)求, 將遷移到 Idle 狀態(tài);,,BGP 有限狀態(tài)機(jī)(Established 狀態(tài)),· 每次發(fā)送 Update 或 Keepalive 消息時(shí),都會(huì)重置 keepalive timer;· Keepalive timer 到期時(shí),發(fā)送 Keepalive 消息用于?;睢?,路徑屬性,,路徑屬性,路徑屬性是所宣告 BGP 路由的特性,有四種屬性類(lèi)型:

37、3; 周知強(qiáng)制屬性· 周知自選屬性· 可選傳遞屬性· 可選非傳遞屬性如果鄰居收到不識(shí)別的屬性,則丟棄該 Update 消息。,,路徑屬性,Cisco 支持的路徑屬性,,路徑屬性(ORIGIN 屬性),,路徑屬性(ORIGIN 屬性),ORIGIN 屬性周知強(qiáng)制屬性,指明了路由條目產(chǎn)生的源頭,ORIGIN 屬性是由所產(chǎn)生這條路由的路由器填寫(xiě)的,路由器會(huì)依據(jù)路由的來(lái)源,按照下面的順序優(yōu)選

38、路由:· IGP:表明路由的源頭是 IGP,即原始路由是一條 IGP 路由,用“i”表示。· EGP:表明路由的源頭是 EGP。· Incomplete:表示路由條目是從其他途徑學(xué)到的,即產(chǎn)生的源頭不確定, 在 BGP 路由表中用“?”表示。被重分發(fā)到 BGP 進(jìn)程中的路由就是 Incomplete 的,因?yàn)檫@條路由的最初源頭已經(jīng)不確定了,這種可能的一 個(gè)例子是:一條 EGP

39、路由被重分發(fā)到 IGP,隨后又被重分發(fā)到 BGP 中。,,路徑屬性(AS_PATH 屬性),,路徑屬性(AS_PATH 屬性),AS_PATH 屬性周知強(qiáng)制屬性,在 AS_PATH 列表中填寫(xiě)的一串 AS 號(hào),用于記錄途經(jīng)的 AS 。僅當(dāng) Update 消息要離開(kāi)本 AS 時(shí)才會(huì)追加本地 AS 號(hào)(追加到列表的左邊)。AS_PATH 的一個(gè)主要用途是用于防環(huán),當(dāng)路由器通過(guò) BGP 學(xué)習(xí)到一條路由時(shí),它將檢查 AS_PATH 中

40、是否已經(jīng)含有了本地 AS 號(hào)。如果發(fā)現(xiàn)了自己,則證明環(huán)路已經(jīng)形成,隨后忽略這條路由,以達(dá)到防環(huán)目的。,,路徑屬性(AS_PATH 屬性),如果同時(shí)存在兩條相同的 destination 路由,且 ORIGIN 屬性也相同,則 比較 AS_PATH 的長(zhǎng)度,AS_PATH 越短,表明路由越優(yōu)。在離開(kāi)本 AS 時(shí),可以通過(guò)某種方法追加多個(gè)重復(fù)的本地 AS 號(hào),以達(dá)到增大這條路由條目的 AS 跳數(shù)的目的。,,有四種類(lèi)型的 AS_PATH:&

41、#183; AS_SEQUENCE 一個(gè)有序的 AS 號(hào)列表,可以通過(guò)這個(gè)有序的列表逆回到源頭。· AS_SET 一個(gè)無(wú)序的 AS 號(hào)列表,匯總時(shí)使用。如果負(fù)責(zé)匯總的路由器在匯總命令 后面追加 as-set 關(guān)鍵字,匯總時(shí)會(huì)將 AS_PATH 中的所有 AS 號(hào)復(fù)制到 AS_SET 中,隨后刪除 AS_PATH 中的全部?jī)?nèi)容,并將本地 AS 號(hào)填寫(xiě)到 AS_PATH 中。這樣一來(lái),下游路

42、由器即可以通過(guò) AS_PATH 逆回到負(fù)責(zé) 匯總的路由器,又可以通過(guò) AS_PATH 和 AS_SET 中的 AS 號(hào)進(jìn)行防環(huán)。,路徑屬性(AS_PATH 屬性),,對(duì)于 AS_SET 的問(wèn)題是:AS_SET 既然是從 AS_PATH 拷貝來(lái)的,為什么說(shuō)它是無(wú)序的呢?這個(gè)原因在于,匯總后的路由會(huì)沿不同的方向被傳遞出去,途經(jīng)不同的 AS。如果在途中再次被匯總,則兩條路由的 AS_SET 就一定不同了。當(dāng)這條路由沿不同的方向被傳遞,并

43、在地球上的某臺(tái)路由器上再次相遇時(shí),路由器會(huì)發(fā)現(xiàn)雖然是相同的路由,但 AS_SET 卻是不同的,正是因?yàn)檫@個(gè)原因,我們說(shuō)它是無(wú)序的。由于 AS_SET 中包含了全部的 AS 號(hào),從而不能對(duì)細(xì)節(jié)進(jìn)行隱藏,所以當(dāng)某 AS 頻繁震蕩時(shí),會(huì)造成路由的穩(wěn)定性降低。當(dāng) AS_PATH 中包含 AS_SET 時(shí),將不再需要 ATOMIC_AGGREGATE 屬性,因?yàn)?AS_SET 擁有更詳細(xì)的信息。,路徑屬性(AS_PATH 屬性),,·

44、 AS_CONFED_SEQUENCE 用于聯(lián)盟,與 AS_SEQUENCE 的使用相同,區(qū)別在于該屬性中的 AS 號(hào) 是本地聯(lián)盟中的 AS。· AS_CONFED_SET 用于聯(lián)盟,與 AS_SET 的使用相同,區(qū)別在于該屬性中的 AS 號(hào)是本地聯(lián) 盟中的 AS。,路徑屬性(AS_PATH 屬性),,路徑屬性(NEXT_HOP 屬性),,路徑屬性(NEXT_HOP 屬性),NEXT_HOP

45、 屬性周知強(qiáng)制屬性,定義了邊界路由器的出接口 IP 地址。始發(fā) BGP 路由的路由器會(huì)對(duì) Update 消息中的 NEXT_HOP 屬性進(jìn)行初次填寫(xiě),填寫(xiě)的地址是去往 IBGP/EBGP 鄰居出接口的 IP 地址。該屬性?xún)H在下列情況才會(huì)被改變:· 在 Update 消息離開(kāi)本 AS 前,本 AS 的邊界路由器會(huì)將 Update 消息中 的 NEXT_HOP 屬性填寫(xiě)(改寫(xiě))為去往 EBGP 鄰居的出接口 IP 地

46、址。· 如果路由器針對(duì)某個(gè)鄰居配置了 next-hop-self 命令,在發(fā)送 Update 消息時(shí),路由器會(huì)將 Update 消息中的 NEXT_HOP 屬性填寫(xiě)(改寫(xiě)) 為 IBGP/EBGP 鄰居的直連出接口 IP 地址。,,路徑屬性(LOCAL_PREF 屬性),,路徑屬性(LOCAL_PREF 屬性),LOCAL_PREF 屬性周知自選屬性,是本地優(yōu)先級(jí),它是一種權(quán)值。該屬性?xún)H應(yīng)用于 AS

47、 內(nèi)部。如果 EBGP 鄰居發(fā)送來(lái)的 Update 中包含了此屬性,則該屬性將被忽略。如果多個(gè) IBGP 鄰居都宣告了相同的外部路由,則 LOCAL_PREF 值最高的路由將被本地路由器優(yōu)選,如果 LOCAL_PREF 值相同,則會(huì)使用其他方法仲裁(后續(xù)描述)。LOCAL_PREF 的默認(rèn)優(yōu)先級(jí)是 100,可以在 route-map 視圖下通過(guò)命令 set local-preference value 來(lái)設(shè)置路由前綴的 LOC

48、AL_PREF 屬性值。,,路徑屬性(LOCAL_PREF 屬性),,路徑屬性(MED 屬性),,路徑屬性(MED 屬性),MED 屬性可選非傳遞屬性,當(dāng) Update 消息發(fā)送給 EBGP 鄰居時(shí),本 AS 的邊界路由器填充此值,以來(lái)告訴 EBGP 鄰居到達(dá)自己的開(kāi)銷(xiāo)。MED 屬性在多歸屬的情況下將起到作用,它可以告訴鄰居通往本 AS 的哪個(gè)入口更優(yōu),但鄰居否根據(jù) MED 值來(lái)決定流量出站完全取決于鄰居是否使用了該屬性進(jìn)行比

49、較。Cisco 路由器默認(rèn)的 MED 值為 0 。當(dāng)一個(gè) AS 邊界路由器收到攜帶有 MED 屬性的 Update 消息后,會(huì)告知本 AS 中的其他路由器,但不會(huì)將 MED 屬性再次傳遞給下一個(gè) AS 。,,路徑屬性(MED 屬性),,路徑屬性(ATOMIC_AGGREGATE 屬性),,路徑屬性(ATOMIC_AGGREGATE 屬性),ATOMIC_AGGREGATE 屬性周知自選屬性,當(dāng)一條路由被聚合時(shí),路由器需要填寫(xiě)此

50、屬性。當(dāng)通過(guò) Update 消息傳遞攜帶該屬性的路由時(shí),鄰居就可以知道如下事實(shí):· 這是一條被匯總過(guò)的路由,匯總前的精確 NLRI 已經(jīng)不可知;· 被聚合前的 AS_PATH 細(xì)節(jié)有可能丟失。這種情況是,負(fù)責(zé)匯總的路由器 將之前的 AS 信息全部刪除,隨后僅在 AS_PATH 屬性中填寫(xiě)本地 AS 號(hào)。 也正因此,如果不攜帶其它屬性用來(lái)防環(huán),則很有可能出現(xiàn)環(huán)路。· 可以通過(guò) Upd

51、ate 消息中的 AS_PATH 逆向追蹤到匯總這條路由的AS。,,路徑屬性(AGGREGATE 屬性),,路徑屬性(AGGREGATOR 屬性),AGGREGATE 屬性可選傳遞屬性,當(dāng)設(shè)置 ATOMIC_AGGREGATE 屬性時(shí),可以附加此屬性。負(fù)責(zé)聚合的路由器會(huì)將自己的 RID 和本地 AS 號(hào)填寫(xiě)到這個(gè)屬性中,這樣其它路由器就可以通過(guò)這個(gè)屬性跟蹤到負(fù)責(zé)匯總的路由器,以便在出現(xiàn)問(wèn)題時(shí)準(zhǔn)確定位。,,路徑屬性(COMMU

52、NITY 屬性),,路徑屬性(COMMUNITY 屬性),COMMUNITY 屬性可選傳遞屬性,稱(chēng)作“團(tuán)體”或“共同體”,它的作用是簡(jiǎn)化路由策略執(zhí)行。它的操作步驟及原理如下:1、本地路由器配置“訪問(wèn)列表”或“路徑列表”,在 route-map 中匹配 列表中指定的路由前綴,設(shè)置 COMMUNITY 屬性并應(yīng)用到某鄰居。此 后發(fā)送給該鄰居的 Update 消息(宣告的某條路由)就攜帶了所設(shè)置的

53、自定義團(tuán)體屬性值。,,2、當(dāng)鄰居接收到 Update 消息后,會(huì)查看 COMMUNITY 屬性。 · 如果是預(yù)定義屬性,則進(jìn)行默認(rèn)操作。 · 如果是自定義屬性,路由器會(huì)在 route-map 中查看是否 match 到所 配的 COMMUNITY,如果 match,則進(jìn)行相應(yīng)的操作(例如,如果 命中了團(tuán)體值,就設(shè)置相應(yīng)的 LOCAL_PREF)。

54、* 團(tuán)體列表的命令舉例:ip community-list 65535:1,其中 65535:1 是 自定義團(tuán)體屬性值。,路徑屬性(COMMUNITY 屬性),,下面是四個(gè)預(yù)定義 COMMUNITY 屬性,如果同時(shí)配置了多個(gè)預(yù)定義屬性,則以最嚴(yán)格的屬性為準(zhǔn):· INTERNET(NULL) 所有路由器默認(rèn)都設(shè)置該團(tuán)體屬性,表明路由可以在 Internet 中自由通告。· NO_EXPOR

55、T(0xFFFFFF01) 不能將該路由宣告給 EBGP 對(duì)等體,可以在聯(lián)邦內(nèi)傳遞。· NO_ADVERTISE(0xFFFFFF02) 發(fā)送給 IBGP 鄰居的屬性,鄰居不能將路由再次宣告給任何 IBGP 和 EBGP 鄰居。· LOCAL_AS(0xFFFFFF03) 不能宣告給 EBGP 鄰居(包括同一聯(lián)盟內(nèi)的其他 AS)。,路徑屬性(COMMUNITY 屬性),,Cisco

56、 默認(rèn)的自定義 COMMUNITY 屬性格式為 NN:AA,而 RFC 1997 定義的格式為 AA:NN。AA:AS 號(hào)。NN:出于管理目的而定義的標(biāo)識(shí)符??梢酝ㄟ^(guò) ip bgp-community new-format 命令將 Cisco 的默認(rèn)格式轉(zhuǎn)換為 RFC 標(biāo)準(zhǔn)格式。,路徑屬性(COMMUNITY 屬性),,可以通過(guò) ip community-list 設(shè)置團(tuán)體列表,團(tuán)體列表支持“標(biāo)準(zhǔn)團(tuán)體列表”和“擴(kuò)展團(tuán)體列表

57、”,其中“擴(kuò)展團(tuán)體列表”可以支持正則表達(dá)式。配置了團(tuán)體列表后,可以通過(guò) route-map 的 match community 進(jìn)行命中。標(biāo)準(zhǔn)訪問(wèn)列表命令舉例:ip community-list 99 permit 65535:1擴(kuò)展訪問(wèn)列表命令舉例:ip community-list 500 permit a-regular-expression,路徑屬性(COMMUNITY 屬性),,路徑屬性(ORI

58、GINATOR_ID 屬性),,路徑屬性(ORIGINATOR_ID 屬性),ORIGINATOR_ID 屬性可選非傳遞屬性,用于路由反射器(后續(xù)描述)。ORIGINATOR_ID 屬性記錄了路由反射簇中始發(fā)一條路由的路由器 RID,如果路由器在其鄰居宣告來(lái)的路由中看到了自己的 RID,則說(shuō)明出現(xiàn)了環(huán)路,路由器將忽略該路由,以避免環(huán)路。,,路徑屬性(CLUSTER_LIST 屬性),,路徑屬性(CLUSTER_LIST 屬性),

59、CLUSTER_LIST 屬性可選非傳遞屬性,用于路由反射器(后續(xù)描述)。該屬性中記錄了路由在傳遞過(guò)程中途經(jīng)的“路由反射簇”的“簇 ID”。如果路由反射器在宣告進(jìn)來(lái)的路由中發(fā)現(xiàn)其“本地簇 ID” 在 CLUSTER_LIST 中出現(xiàn),則表明出現(xiàn)了環(huán)路,從而忽略該路由以避免環(huán)路。,,路徑屬性(Administrative Weight),,管理性權(quán)值(Administrative Weight),管理性權(quán)值(Administrat

60、ive Weight)管理性權(quán)值是 Cisco 的私有參數(shù),管理性權(quán)值越大,則路由越會(huì)被優(yōu)選。當(dāng)給鄰居設(shè)置管理性權(quán)值后,本地路由器會(huì)對(duì)那些從鄰居學(xué)來(lái)的路由追加一個(gè)權(quán)值。當(dāng)有多條從不同鄰居學(xué)習(xí)來(lái)的相同的目的地路由時(shí),本地路由器通過(guò)比較這些路由條目的管理性權(quán)值來(lái)進(jìn)行最優(yōu)路由的選擇。從鄰居學(xué)習(xí)來(lái)的路由的默認(rèn)權(quán)值是 0,而本地生成的路由的權(quán)值為 32768。,,IGP、IBGP 和 EBGP 的關(guān)系,,IGP、IBGP 和 EBGP

61、的關(guān)系,為了說(shuō)明它們的關(guān)系,先來(lái)看一下這個(gè)場(chǎng)景:AS 100 宣告了一條 BGP 路由 217.17.0.0/16 ,AS 200 中的 R1 從 EBGP 鄰居 R7 學(xué)習(xí)到這條路由,最終將本 AS 的邊界路由器 R3 會(huì)將這條路由宣告給 AS 300 的路由器 R8。,,EBGP 鄰居關(guān)系建立在 AS 之間,可以通過(guò) EBGP 鄰居學(xué)習(xí) EBGP 路由。IBGP 鄰居關(guān)系建立的范圍是在本 AS 內(nèi),圖中的 R1、R2、R3 之間建

62、立的就是 IBGP 鄰居。IBGP 鄰居的建立是為了將一條 EBGP 路由傳遞給其他所有 IBGP 鄰居。圖中 R1 學(xué)到 R7 宣告的 EBGP 路由后,會(huì)通過(guò) IBGP 鄰居關(guān)系將這條路由通過(guò) TCP 連接以點(diǎn)到點(diǎn)的方式分別通告給 R2 和 R3。IBGP 規(guī)定:當(dāng)一臺(tái)路由器從 IBGP 鄰居學(xué)習(xí)到一條路由后,不允許再轉(zhuǎn)告給其他 IBGP 鄰居(本地終結(jié))。這個(gè)規(guī)定出現(xiàn)的原因是為了避免環(huán)路。正因如此,這也就要求 IBGP 鄰居在邏

63、輯上必須是全互聯(lián)的,這樣,宣告路由的源路由器才能將路由分別單播給自己的所有 IBGP 鄰居。,IGP、IBGP 和 EBGP 的關(guān)系,,在下圖的非共享網(wǎng)絡(luò)中,R1 僅知道自己的直連鏈路 10.0.0.0/24,它可以到達(dá)鄰居 R2 10.0.0.2,但它不知道如何到達(dá) 20.0.0.0/24,這樣它就無(wú)法與 R3 建立 IBGP 鄰居關(guān)系( 無(wú)法建立 TCP 連接)。,IGP、IBGP 和 EBGP 的關(guān)系,,雖然配置靜態(tài)路由是一種解決

64、辦法,但在 AS 中存在大量路由器的時(shí),通過(guò) IGP 協(xié)議使得全網(wǎng)路由可達(dá)才是唯一可行的辦法。通過(guò)在 AS 200 的全部路由器上運(yùn)行 IGP 協(xié)議,每臺(tái)路由器就都可以獲知如何到達(dá)鄰居的網(wǎng)段了。,IGP、IBGP 和 EBGP 的關(guān)系,,這里提一下一種古老并被拋棄的同步機(jī)制:拓?fù)渲?R1 僅與 R3 建立了 IBGP 鄰居關(guān)系,R1 將學(xué)來(lái)的 EBGP 路由重分發(fā)到 IGP 中,通過(guò) IGP 將路由宣告給 R2,隨后 R2 通過(guò) IGP

65、 宣告給 R3,R3 將 IGP 路由重分發(fā)到 BGP 中。,IGP、IBGP 和 EBGP 的關(guān)系,,就像我們知道的那樣,IGP 不能處理規(guī)模數(shù)量的路由。BGP 可以容納規(guī)模數(shù)量的路由,但如果將大量的路由從 BGP 注入到 IGP 中,那么 IGP 路由表將會(huì)爆炸,從而導(dǎo)致網(wǎng)絡(luò)癱瘓。,IGP、IBGP 和 EBGP 的關(guān)系,,如果需要將 EBGP 重分發(fā)到 IGP,需要打開(kāi) bgp redistribute-internal 開(kāi)關(guān),只

66、有打開(kāi)該開(kāi)關(guān)后,路由器才允許將 IBGP 重分發(fā)到 IGP。,IGP、IBGP 和 EBGP 的關(guān)系,,BGP 決策進(jìn)程,,BGP 決策進(jìn)程(BGP 路由表),,BGP 決策進(jìn)程(路由表),BGP 路由表包含三個(gè)部分:· Adj-RIBs-In 記錄了從鄰居處學(xué)到的路由,這個(gè)表中的路由沒(méi)有經(jīng)過(guò)任何本地策略處理, Adj-RIBs-In 表中的路由是從鄰居那里學(xué)到的“原版”路由。· Loc-R

67、IB 經(jīng)過(guò)本地路由策略處理和優(yōu)選后的最優(yōu)路由,它將可能被安插到 RIB 中。 如果 NEXT_HOP 不可達(dá),路由將安插失敗。· Adj-RIBs-Out 向?qū)Φ润w宣告的路由,已經(jīng)進(jìn)行了出站前的屬性處理,如 MED 和匯總等。,,BGP 決策進(jìn)程(BGP 的 13 條選路原則),,BGP 決策進(jìn)程(BGP 的 13 條選路原則),BGP 依照 13 條選路原則依次進(jìn)行選路:1、管理性權(quán)值(weig

68、ht) Cisco 私有屬性,本地有效,越大越優(yōu)。本地始發(fā) BGP 路由的 weight 默認(rèn)為 32768,學(xué)習(xí) 到的 BGP 路由的 weight 默認(rèn)為 0。如果同時(shí)通過(guò) neighbor x.x.x.x weight 和 route-map 配置了 weight,則以 route-map 為準(zhǔn)。2、本地優(yōu)先級(jí)(LOCAL_PREF) 周知自選屬性,該屬性可在本 AS 和聯(lián)

69、盟內(nèi)傳遞,越大越優(yōu)。LOCAL_PREF 的默認(rèn)值為 100 。 可以通過(guò)命令 bgp default local-preference 來(lái)配置本地默認(rèn)的優(yōu)先級(jí), 也通過(guò) route-map 進(jìn)行配置。,,3、本地起源(BGP 路由表中 next-hop 為 0.0.0.0 的路由) 對(duì)于在 BGP 路由表中 next-hop 為 0.0.0.0 的路由,按照下面的順序優(yōu)選路由: (1)

70、 為指定 neighbor 配置的 default-originate; (2) default-information originate; (3) 本地 network 的直連路由 & 本地 redistribute 的路由; (4) 通過(guò)命令 aggregate-address 聚合的路由。4、路徑長(zhǎng)度(AS_PATH) 周知強(qiáng)制屬性,路徑越短越優(yōu)(不計(jì)算聯(lián)盟中帶括號(hào)的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論