09-MBGP配置
本章節下載: 09-MBGP配置 (312.54 KB)
為了提供對多種網絡層協議的支持,IETF(Internet Engineering Task Force,因特網工程任務組)對BGP-4進行了擴展,形成MP-BGP(Multi-Protocol BGP,多協議BGP),使BGP能夠為多種路由應用提供路由信息。
組播的網絡拓撲和單播拓撲有可能不同,需要通過MP-BGP擴展使得BGP能夠將單播NLRI(Network Layer Reachability Information,網絡層可達性信息)和組播NLRI分開運載,其中組播NLRI專用於執行RPF(Reverse Path Forwarding,逆向路徑轉發)功能。這使得在單播路由表和組播路由表中,對於相同的前綴有不同的路徑選擇,維護了一致的單播轉發並使域間組播正常工作。
目前的MP-BGP標準是RFC 2858(Multiprotocol Extensions for BGP-4,BGP-4的多協議擴展)。
MP-BGP在組播上的應用簡稱為MBGP(Multicast BGP,組播BGP)。
· 本章主要介紹MP-BGP應用於組播的配置事項,即MBGP配置事項,有關BGP的詳細內容以及配置事項,請參見“三層技術-IP路由配置指導”中的“BGP”。
· 有關RPF檢查的詳細內容以及配置事項,請參見“IP組播配置指導”中的“組播路由與轉發”。
與MBGP相關的協議規範有:
· RFC 2858:Multiprotocol Extensions for BGP-4
· RFC 3392:Capabilities Advertisement with BGP-4
· draft-ietf-idmr-bgp-mcast-attr-00:BGP Attributes for Multicast Tree Construction
· RFC4271,A Border Gateway Protocol 4 (BGP-4)
· RFC5291,Outbound Route Filtering Capability for BGP-4
· RFC5292,Address-Prefix-Based Outbound Route Filter for BGP-4
表1-1 MBGP配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置MBGP基本功能 |
必選 |
||
控製路由信息的發布與接收 |
配置MBGP引入其他路由 |
必選 |
|
配置MBGP引入缺省路由 |
可選 |
||
配置MBGP路由聚合 |
可選 |
||
配置向IPv4 MBGP對等體/IPv4 MBGP對等體組發送缺省路由 |
可選 |
||
配置MBGP路由信息的發布策略 |
可選 |
||
配置MBGP路由信息的接收策略 |
可選 |
||
配置MBGP路由衰減 |
可選 |
||
配置MBGP的路由屬性 |
配置MBGP路由管理優先級 |
可選 |
|
配置本地優先級缺省值 |
可選 |
||
配置MED屬性 |
可選 |
||
配置發布路由時將自身地址作為下一跳 |
可選 |
||
配置AS_PATH屬性 |
可選 |
||
調整和優化MBGP網絡 |
配置MBGP軟複位 |
可選 |
|
配置MBGP ORF能力 |
可選 |
||
配置MBGP負載分擔路由條數 |
可選 |
||
配置大型MBGP網絡 |
配置IPv4 MBGP對等體組 |
可選 |
|
配置MBGP團體 |
可選 |
||
配置MBGP路由反射器 |
可選 |
在配置MBGP之前,需完成以下任務:相鄰節點的網絡層互通。
表1-2 配置MBGP基本功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
指定對等體/對等體組的AS號 |
peer { group-name | ip-address } as-number as-number |
必選 缺省情況下,對等體/對等體組無AS號 |
創建並進入MBGP地址族視圖 |
ipv4-family multicast |
必選 |
激活在IPv4單播視圖下創建的對等體/對等體組 |
必選 缺省情況下,對等體/對等體組在BGP IPv4組播地址族視圖下處於非激活狀態 |
|
為從IPv4 MBGP對等體/IPv4 MBGP對等體組接收的路由分配首選值 |
peer { group-name | ip-address } preferred-value value |
可選 缺省情況下,從IPv4 MBGP對等體/IPv4 MBGP對等體組接收的路由的首選值為0 |
在控製MBGP路由信息的發布與接收之前,需完成以下任務:配置MBGP基本功能。
MBGP可以向鄰居AS發送本地AS內部網絡的路由信息,但MBGP不是自己去發現AS內部的路由信息,而是引入IGP的路由信息到MBGP路由表中,並發布給MBGP對等體。在引入IGP路由時,還可以針對不同的路由協議來對路由信息進行過濾。
表1-3 配置MBGP引入其他路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
引入其它協議路由信息並通告 |
import-route protocol [ { process-id | all-processes } [ allow-direct | med med-value | route-policy route-policy-name ] * ] |
二者必選其一 缺省情況下,MBGP不引入、不通告其它協議的路由,不發布任何網段路由 目前隻有OSPF協議支持配置allow-direct參數 |
將網段路由發布到MBGP路由表中 |
network ip-address [ mask | mask-length ] [ short-cut | route-policy route-policy-name ] |
· 通過import-route命令引入到MBGP路由表中的路由的ORIGIN屬性為Incomplete。
· 使用network命令發布到MBGP路由表中的網段路由的ORIGIN屬性為IGP。
· 要發布的網段路由必須存在於本地的IP路由表中,使用路由策略可以更為靈活的控製所發布的路由。
MBGP不能通過import-route命令從其它協議引入缺省路由,如果要引入其它協議的缺省路由,必須要配置下列命令。
表1-4 配置MBGP引入其它協議的缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
引入其它協議路由信息並通告 |
import-route protocol [ { process-id | all-processes } [ allow-direct | med med-value | route-policy route-policy-name ] * ] |
必選 缺省情況下,MBGP不引入其它協議的路由 目前隻有OSPF協議支持配置allow-direct參數 |
允許將其它協議的缺省路由引入到MBGP路由表中 |
default-route imported |
必選 缺省情況下,MBGP不引入其它協議的缺省路由 |
在中型或大型MBGP網絡中,在向組播對等體發布路由信息時,需要配置路由聚合,減小對等體路由表中的路由數量。MBGP支持以下兩種聚合方式:
· 自動聚合:對MBGP引入的IGP子網路由進行聚合。配置自動聚合後,MBGP將不再發布從IGP引入的子網路由,而是發布聚合後的自然網段的路由。缺省路由和用network命令引入的路由不能進行自動聚合。
· 手動聚合:對MBGP本地路由進行聚合。手動聚合的優先級高於自動聚合的優先級。
表1-5 配置MBGP路由聚合
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入BGP視圖 |
bgp as-number |
- |
|
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
|
配置MBGP路由聚合 |
配置對引入的子網路由進行自動聚合 |
summary automatic |
二者必選其一 缺省情況下,不進行路由聚合 可以根據需求選擇路由聚合方式;當二者同時配置時,手動路由聚合生效 |
配置手動路由聚合 |
aggregate ip-address { mask | mask-length } [ as-set | attribute-policy route-policy-name | detail-suppressed | origin-policy route-policy-name | suppress-policy route-policy-name ] * |
表1-6 配置向IPv4 MBGP/IPv4 MBGP組發送缺省路由
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
向IPv4 MBGP對等體/IPv4 MBGP對等體組發送缺省路由 |
peer { group-name | ip-address } default-route-advertise [ route-policy route-policy-name ] |
必選 缺省情況下,不向IPv4 MBGP對等體/IPv4 MBGP對等體組發送缺省路由 |
執行peer default-route-advertise命令後,不論本地路由表中是否存在缺省路由,都將向指定IPv4 MBGP對等體/IPv4 MBGP對等體組發布一條下一跳地址為本地地址的缺省路由。
用戶可以根據需求選擇過濾策略,同時配置幾種過濾策略時,按照如下順序執行:
· filter-policy export
· peer filter-policy export
· peer as-path-acl export
· peer ip-prefix export
· peer route-policy export
隻有通過前麵的過濾策略,才能繼續執行後麵的過濾策略;隻有通過所有配置的過濾策略後,路由信息才能被發布。
表1-7 配置MBGP路由信息的發布策略
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置對發布的路由信息進行過濾 |
filter-policy { acl-number | ip-prefix ip-prefix-name } export [ direct | isis process-id | ospf process-id | rip process-id | static ] |
必選其一 缺省情況下,發布路由信息時不對路由進行過濾 |
對發布給IPv4 MBGP對等體/IPv4 MBGP對等體組的路由指定路由策略 |
peer { group-name | peer-address } route-policy route-policy-name export |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於ACL的過濾策略 |
peer { group-name | ip-address } filter-policy acl-number export |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於AS路徑過濾列表的MBGP路由過濾策略 |
peer { group-name | ip-address } as-path-acl as-path-acl-number export |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於IP前綴列表的路由過濾策略 |
peer { group-name | ip-address } ip-prefix ip-prefix-name export |
通過配置MBGP路由信息的接收策略,可以對從IPv4 MBGP對等體/IPv4 MBGP對等體組接收的路由進行過濾,隻有滿足指定條件的路由才能被接收並加到MBGP路由表中。
用戶可以根據需求選擇過濾策略,同時配置幾種過濾策略時,按照如下順序執行:
· filter-policy import
· peer filter-policy import
· peer as-path-acl import
· peer ip-prefix import
· peer route-policy import
隻有通過前麵的過濾策略,才能繼續執行後麵的過濾策略;隻有通過所有配置的過濾策略後,路由信息才能被接收。
表1-8 配置MBGP路由信息的接收策略
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
對接收的路由信息進行過濾 |
filter-policy { acl-number | ip-prefix ip-prefix-name } import |
必選其一 缺省情況下,不對接收的路由信息進行過濾 |
對來自IPv4 MBGP對等體/IPv4 MBGP對等體組的路由指定路由策略 |
peer { group-name | ip-address } route-policy policy-name import |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於ACL的過濾策略 |
peer { group-name | ip-address } filter-policy acl-number import |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於AS路徑過濾列表的MBGP路由過濾策略 |
peer { group-name | ip-address } as-path-acl as-path-acl-number import |
|
為IPv4 MBGP對等體/IPv4 MBGP對等體組設置基於IP前綴列表的路由過濾策略 |
peer { group-name | ip-address } ip-prefix ip-prefix-name import |
|
配置允許從IPv4 MBGP對等體/IPv4 MBGP對等體組接收的最大路由數 |
peer { group-name | ip-address } route-limit limit [ percentage ] |
可選 缺省情況下,允許從IPv4 MBGP對等體/IPv4 MBGP對等體組接收的最大路由數無限製 |
對等體組的成員可以與所在的組使用不同的入方向路由策略,即接收路由時,各對等體可以選擇自己的策略。
通過配置MBGP衰減,可以抑製不穩定的路由信息,不將這類路由加入到MBGP路由表中,也不將這類路由向其他IPv4 MBGP對等體發布。
表1-9 配置MBGP路由衰減
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置MBGP路由衰減參數 |
dampening [ half-life-reachable half-life-unreachable reuse suppress ceiling | route-policy route-policy-name ] * |
必選 缺省情況下,沒有配置MBGP路由衰減 |
MBGP具有很多路由屬性,利用這些屬性可以改變MBGP的選路策略。
在配置MBGP的路由屬性之前,需完成以下任務:配置MBGP基本功能。
應用路由策略,可以為匹配過濾條件的特定路由配置優先級。對於那些沒有匹配的路由,使用缺省優先級。
表1-10 配置MBGP路由管理優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置MBGP路由的管理優先級 |
preference { external-preference internal-preference local-preference | route-policy route-policy-name } |
可選 缺省情況下,MBGP EBGP路由的管理優先級為255,MBGP IBGP路由的管理優先級為255,本地產生的MBGP路由的管理優先級為130 |
表1-11 配置本地優先級缺省值
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置本地優先級的缺省值 |
default local-preference value |
可選 缺省情況下,本地優先級的缺省值為100 |
在其它條件相同的情況下,MED較小的路由被優選作為自治係統的外部路由。
表1-12 配置MED屬性
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入BGP視圖 |
bgp as-number |
- |
|
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
|
配置MED屬性 |
配置係統MED的缺省值 |
default med med-value |
可選 缺省情況下,MED的缺省值為0 |
配置允許比較來自不同AS鄰居的路由路徑的MED屬性值 |
compare-different-as-med |
可選 缺省情況下,不允許比較來自不同AS鄰居的路由路徑的MED屬性值 |
|
配置根據路由來自的AS進行分組對MED排序優選 |
bestroute compare-med |
可選 缺省情況下,不根據路由來自的AS進行分組對MED排序優選 |
|
配置允許比較聯盟對等體的路由按MED值進行優選 |
bestroute med-confederation |
可選 缺省情況下,比較聯盟對等體的路由時不考慮MED值 |
在某些組網環境中,本地設備向MBGP IBGP對等體/MBGP IBGP對等體組發布路由時,為保證MBGP IBGP鄰居能夠找到正確的下一跳,可以配置peer next-hop-local命令將自身地址作為下一跳地址。如果配置了負載分擔,則不論是否配置了peer next-hop-local命令,本地設備向MBGP IBGP對等體/MBGP IBGP對等體組發布路由時都先將下一跳地址改變為自身地址。
在第三方下一跳(即兩個MBGP連接在同一網段的廣播網)這種特殊的組網環境中,缺省情況下,向MBGP EBGP對等體/MBGP EBGP對等體組發布路由時,不將自身地址作為下一跳;隻有配置了peer next-hop-local命令,才將自身地址作為下一跳。
表1-13 配置發布路由時將自身地址作為下一跳
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置發布路由時將自身地址作為下一跳 |
peer { group-name | ip-address } next-hop-local |
可選 缺省情況下,向MBGP EBGP對等體/對等體組發布路由時,將自身地址作為下一跳;向MBGP IBGP對等體/對等體組發布路由時,不將自身地址作為下一跳 |
通常情況下,MBGP會檢查對等體發來的路由的AS_PATH屬性,如果其中已存在本地AS號,則MBGP會忽略此路由,以免形成路由環路。
表1-14 配置AS_PATH屬性
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入BGP視圖 |
bgp as-number |
- |
|
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
|
配置AS_PATH屬性 |
配置允許本地AS號重複出現的次數 |
peer { group-name | ip-address } allow-as-loop [ number ] |
可選 缺省情況下,不允許本地AS重複 |
禁止設備將AS_PATH當作選路算法中的一個因素 |
bestroute as-path-neglect |
可選 缺省情況下,設備可以將AS_PATH當作選路算法中的一個因素 |
|
配置發送MBGP更新報文時AS_PATH屬性中不攜帶私有AS號 |
peer { group-name | ip-address } public-as-only |
可選 缺省情況下,發送MBGP更新報文時,允許攜帶私有自治係統號 |
在調整和優化MBGP網絡之前,需完成以下任務:配置MBGP基本功能。
MBGP的選路策略改變後,為了使新的策略生效,必須複位MBGP連接,但這樣會造成短暫的MBGP連接中斷。
通過使能Route-Refresh功能,當策略改變後,係統可以在不中斷MBGP連接的情況下,自動對MBGP路由表進行動態刷新。
如果對等體不支持Route-Refresh功能,則可以將從對等體接收的所有路由更新保存在本地,當選路策略發生改變後,在不中斷連接的情況下重新刷新MBGP路由表,並應用新的策略。
在對等體支持並使能Route-Refresh功能的情況下,如果MBGP的路由策略發生了變化,本地設備會向MBGP對等體發布Router-Refresh消息,收到此消息的對等體會將其路由信息重新發給本地設備。這樣,在不中斷MBGP連接的情況下,就可以對MBGP路由表進行動態更新,並應用新的選路策略。
表1-15 通過Route-Refresh實現MBGP軟複位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
使能BGP路由刷新功能 |
peer { group-name | ip-address } capability-advertise route-refresh |
可選 缺省情況下,路由刷新功能處於使能狀態 |
當對等體不支持Route-Refresh功能時,可通過配置peer keep-all-routes命令實現軟複位功能。
用戶也可以通過執行refresh bgp ipv4 multicast命令對保存在本地的所有路由重新過一遍策略。
表1-16 通過將所有路由更新保存在本地實現MBGP軟複位
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
禁止BGP路由刷新和多協議擴展功能 |
peer { group-name | ip-address } capability-advertise conventional |
可選 缺省情況下,BGP路由刷新和多協議擴展功能處於使能狀態 |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
保存所有來自IPv4 MBGP對等體/IPv4 MBGP對等體組的原始路由信息,即使這些路由沒有通過已配置的入口策略 |
peer { group-name | ip-address } keep-all-routes |
必選 缺省情況下,不保存IPv4 MBGP對等體/IPv4 MBGP對等體組的原始路由信息 |
退回用戶視圖 |
return |
- |
手工對MBGP連接進行軟複位 |
refresh bgp ipv4 multicast { all | ip-address | group group-name | external | internal } { export | import } |
可選 |
BGP ORF特性是將本地入口策略通過Route-refresh報文發送給鄰居,當鄰居需要向BGP對等體發送Update更新報文時,通過本地的路由策略後還需要進行ORF策略的過濾,隻有通過ORF策略的路由信息才會發給BGP對等體,以達到減少BGP鄰居間Update更新報文的交互,節省網絡資源的目的。
使能BGP ORF能力後,本地和MBGP對等體會通過Open報文協商ORF能力(即收發的報文裏是否允許攜帶ORF信息,如果允許攜帶,是否可以攜帶非標準的ORF信息),當協商完畢並成功建立鄰居關係後,可以通過特殊的Route-refresh報文交互ORF信息。
ORF能力協商成功需要兩端的配置來保證,關於兩端參數的選擇請參見表1-18。
表1-17 配置MBGP ORF能力
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
使能BGP路由刷新功能 |
peer { group-name | ip-address } capability-advertise route-refresh |
可選 缺省情況下,BGP路由刷新功能處於使能狀態 如果該功能當前處於未使能狀態,則必須配置該命令 本命令的詳細介紹請參見“三層技術-IP路由命令參考”中的“BGP” |
使能BGP ORF非標準功能 |
peer { group-name | ipv6-address } capability-advertise orf non-standard |
可選 缺省情況下,BGP ORF能力支持RFC5291和RFC5292的標準能力 如果該功能當前處於未使能狀態,則必須配置該命令 本命令的詳細介紹請參見“三層技術-IP路由命令參考”中的“BGP” |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
使能MBGP 鄰居的ORF能力 |
peer { group-name | ip-address } capability-advertise orf ip-prefix { both | receive | send } |
必選 缺省情況下,MBGP 對等體/對等體組不使能鄰居的ORF能力 |
表1-18 both、send、receive參數選擇以及配置效果描述表
本地選擇參數 |
對端選擇參數 |
協商成功後 |
send |
receive |
本端的ORF發送能力,對端的ORF接收能力 |
both |
||
receive |
send |
本端的ORF接收能力,對端的ORF發送能力 |
both |
||
both |
both |
雙向的ORF發送和接收能力 |
表1-19 配置MBGP負載分擔路由條數
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
配置進行MBGP負載分擔的最大路由條數 |
balance number |
必選 缺省情況下,沒有進行MBGP負載分擔 |
在配置大型MBGP網絡之前,需完成以下任務:相鄰節點的網絡層互通。
在大型網絡中,對等體的數目眾多,配置和維護極為不便。使用對等體組可以降低管理的難度,還可以提高路由發布效率。可以在MBGP中使能IPv4單播對等體組,從而達到共同管理組內IPv4 MBGP對等體的目的。MBGP中不能單獨創建對等體組。
表1-20 配置IPv4 MBGP對等體組
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
啟動BGP,進入BGP視圖 |
bgp as-number |
- |
創建BGP對等體組 |
group group-name [ external | internal ] |
必選 缺省情況下,沒有創建BGP對等體組 |
將對等體加入已存在的對等體組 |
peer ip-address group group-name [ as-number as-number ] |
必選 缺省情況下,對等體不屬於任何對等體組 |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
使能IPv4單播對等體組 |
peer group-name enable |
必選 |
將IPv4 MBGP對等體加入對等體組中 |
peer ip-address group group-name |
必選 缺省情況下,IPv4 MBGP對等體不屬於任何對等體組 |
· 配置IPv4 MBGP對等體組的前提是,在BGP-IPv4組播地址族下存在已經使能的IPv4單播對等體組。
· 將IPv4 MBGP對等體加入對等體組,需要先在BGP視圖下將相應的對等體加入對等體組。
對等體組可以使一組對等體共享相同的策略,而利用團體可以使多個AS中的一組BGP設備共享相同的策略。團體是一個路由屬性,在BGP對等體之間傳播,它並不受到AS範圍的限製。
BGP設備在將帶有團體屬性的路由發布給其它對等體之前,可以改變此路由原有的團體屬性。除了使用公認的團體屬性外,用戶還可以使用團體屬性列表自定義擴展團體屬性,以便更為靈活地控製路由策略。
表1-21 配置MBGP團體
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入BGP視圖 |
bgp as-number |
- |
|
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
|
配置向MBGP對等體/MBGP對等體組發布團體屬性 |
配置發布團體屬性 |
peer { group-name | ip-address } advertise-community |
必選 缺省情況下,不將團體屬性和擴展團體屬性發布給任何IPv4 MBGP對等體/IPv4 MBGP對等體組 |
配置發布擴展團體屬性 |
peer { group-name | ip-address } advertise-ext-community |
||
對發布給IPv4 MBGP對等體/IPv4 MBGP對等體組的路由指定路由策略 |
peer { group-name | ip-address } route-policy route-policy-name export |
必選 缺省情況下,不指定IPv4 MBGP對等體/IPv4 MBGP對等體組的路由策略 |
· 配置MBGP團體時,必須使用路由策略來定義具體的團體屬性,然後在發布路由信息時應用此路由策略。
· 關於路由策略的配置,請參見“三層技術-IP路由命令參考”中的“路由策略”。
在AS內部,為保證MBGP IBGP對等體之間的連通性,需要在MBGP IBGP對等體之間建立全連接關係。當MBGP IBGP對等體數目很多時,在MBGP IBGP對等體之間建立全連接的開銷很大。使用路由反射器,可以解決這個問題。
表1-22 配置MBGP路由反射器
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入BGP視圖 |
bgp as-number |
- |
進入MBGP地址族視圖 |
ipv4-family multicast |
- |
將本設備配置為路由反射器,並指定IPv4 MBGP對等體(組)作為路由反射器的客戶 |
peer { group-name | peer-address } reflect-client |
必選 缺省情況下,沒有配置路由反射器及其客戶 |
配置允許客戶到客戶的路由反射 |
reflect between-clients |
可選 缺省情況下,允許客戶到客戶的路由反射 |
配置路由反射器的集群ID |
reflector cluster-id cluster-id |
可選 缺省情況下,每個路由反射器是使用自己的Router ID作為集群ID |
· 通常情況下,路由反射器的客戶之間不要求是全連接的,路由缺省通過反射器從一個客戶反射到其它客戶;如果客戶之間是全連接的,可以禁止客戶間的反射,以便減少開銷。
· 通常,一個集群裏隻有一個路由反射器。此時是由反射器的設備ID來識別該集群的。設置多個路由反射器可提高網絡的穩定性。如果一個集群中配有多個路由反射器,請使用相關命令為所有的路由反射器配置同樣的集群ID,以避免路由循環。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後MBGP的運行情況,通過查看顯示信息驗證配置的效果。
表1-23 MBGP配置顯示
操作 |
命令 |
顯示IPv4 BGP組播路由表中的路由信息 |
display ip multicast routing-table [ verbose] [ | { begin | exclude | include } regular-expression ] |
顯示指定目的地址的組播路由信息 |
display ip multicast routing-table ip-address [ mask-length | mask ] [ longer-match ] [ verbose ] [ | { begin | exclude | include } regular-expression ] |
顯示IPv4 MBGP對等體組信息 |
display bgp multicast group [ group-name ] [ | { begin | exclude | include } regular-expression ] |
顯示MBGP發布的路由信息 |
display bgp multicast network [ | { begin | exclude | include } regular-expression ] |
顯示AS路徑信息 |
display bgp multicast paths [ as-regular-expression | | { begin | exclude | include } regular-expression ] |
顯示IPv4 MBGP對等體/IPv4 MBGP對等體組的信息 |
display bgp multicast peer [ [ ip-address ] verbose ] [ | { begin | exclude | include } regular-expression ] |
收到的鄰居ORF信息中的前綴信息 |
display bgp multicast peer ip-address received ip-prefix [ | { begin | exclude | include } regular-expression ] |
顯示MBGP路由信息 |
display bgp multicast routing-table [ ip-address [ { mask | mask-length } [ longer-prefixes ] ] ] [ | { begin | exclude | include } regular-expression ] |
顯示匹配指定AS路徑過濾列表的MBGP路由信息 |
display bgp multicast routing-table as-path-acl as-path-acl-number [ | { begin | exclude | include } regular-expression ] |
顯示CIDR的MBGP路由信息 |
display bgp multicast routing-table cidr [ | { begin | exclude | include } regular-expression ] |
顯示指定MBGP團體的MBGP路由信息 |
display bgp multicast routing-table community[ aa:nn&<1-13> ] [ no-advertise | no-export | no-export-subconfed ] * [ whole-match ] [ | { begin | exclude | include } regular-expression ] |
顯示匹配指定MBGP團體列表的MBGP路由 |
display bgp multicast routing-table community-list { { basic-community-list-number | comm-list-name } [ whole-match ] | adv-community-list-number }&<1-16> [ | { begin | exclude | include } regular-expression ] |
顯示MBGP衰減的MBGP路由信息 |
display bgp multicast routing-table dampened [ | { begin | exclude | include } regular-expression ] |
顯示MBGP衰減的配置參數 |
display bgp multicast routing-table dampening parameter [ | { begin | exclude | include } regular-expression ] |
顯示源AS不一致的路由 |
display bgp multicast routing-table different-origin-as [ | { begin | exclude | include } regular-expression ] |
顯示MBGP路由振蕩統計信息 |
display bgp multicast routing-table flap-info [ regular-expression as-regular-expression | [ as-path-acl as-path-acl-number | ip-address [ { mask | mask-length } [ longer-match ] ] ] [ | { begin | exclude | include } regular-expression ] ] |
顯示向指定的IPv4 MBGP對等體發送或者從IPv4 MBGP對等體收到的路由信息 |
display bgp multicast routing-table peer ip-address { advertised-routes | received-routes } [ network-address [ mask | mask-length ] | statistic ] [ | { begin | exclude | include } regular-expression ] |
顯示與指定的AS路徑正則表達式相匹配的IPv4 MBGP路由信息 |
display bgp multicast routing-table regular-expression as-regular-expression |
顯示MBGP的路由統計信息 |
display bgp multicast routing-table statistic [ | { begin | exclude | include } regular-expression ] |
當MBGP路由策略或協議發生變化後,如果需要通過複位MBGP連接使新的配置生效,請在用戶視圖下進行下列配置。
操作 |
命令 |
複位指定的MBGP連接 |
reset bgp ipv4 multicast { all | as-number | ip-address | group group-name | external | internal } |
在用戶視圖下,執行reset命令可以清除MBGP相關統計信息。
操作 |
命令 |
清除路由的衰減信息並釋放被抑製的路由 |
reset bgp ipv4 multicast dampening [ ip-address [ mask | mask-length ] ] |
清除路由的振蕩統計信息 |
reset bgp ipv4 multicast flap-info [ regexp as-path-regexp | as-path-acl as-path-acl-number | ip-address [ mask | mask-length ] ] |
缺省情況下,以太網接口、VLAN接口及聚合接口處於DOWN狀態。如果要對這些接口進行配置,請先使用undo shutdown命令使接口狀態處於UP狀態。
· 網絡中存在兩個自治係統:PIM-SM 1屬於AS 100,PIM-SM 2屬於AS 200。各AS內部采用OSPF進行互聯,AS之間采用MBGP交換組播路由信息;
· 組播源屬於AS 100內的PIM-SM 1,接收者則屬於AS 200內的PIM-SM 2;
· 將Switch A和Switch B各自的Loopback0接口分別配置為各自PIM-SM域的C-BSR和C-RP;
· 在Switch A與Switch B之間通過MBGP建立MSDP對等體關係。
圖1-1 MBGP典型配置組網圖
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
Source |
- |
10.110.1.100/24 |
Switch C |
Vlan-int200 |
10.110.2.1/24 |
Switch A |
Vlan-int100 |
10.110.1.1/24 |
|
Vlan-int102 |
192.168.2.2/24 |
|
Vlan-int101 |
192.168.1.1/24 |
|
Vlan-int104 |
192.168.4.1/24 |
|
Loop0 |
1.1.1.1/32 |
|
Loop0 |
3.3.3.3/32 |
Switch B |
Vlan-int101 |
192.168.1.2/24 |
Switch D |
Vlan-int103 |
192.168.3.2/24 |
|
Vlan-int102 |
192.168.2.1/24 |
|
Vlan-int104 |
192.168.4.2/24 |
|
Vlan-int103 |
192.168.3.1/24 |
|
Loop0 |
4.4.4.4/32 |
|
Loop0 |
2.2.2.2/32 |
|
|
|
配置各交換機接口的IP地址和單播路由協議
· 請按照圖1-1配置各接口的IP地址和子網掩碼,具體配置過程略。
· 配置AS200內的各交換機之間采用OSPF路由協議交換路由信息(AS內各設備創建的OSPF進程號為1),確保各AS內部在網絡層互通,能學到彼此Loopback接口的路由,具體配置過程略。
使能IP組播路由,使能PIM-SM和IGMP,並配置BSR的服務邊界
# 在Switch A上使能IP組播路由,在各接口上使能PIM-SM。
<SwitchA> system-view
[SwitchA] multicast routing-enable
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] pim sm
[SwitchA-Vlan-interface100] quit
[SwitchA] interface vlan-interface 101
[SwitchA-Vlan-interface101] pim sm
[SwitchA-Vlan-interface101] quit
Switch B和Switch D上的配置與Switch A相似,配置過程略。
# 在Switch C上使能IP組播路由,在各接口上使能PIM-SM,並在主機側接口Vlan-interface200上使能IGMP。
<SwitchC> system-view
[SwitchC] multicast routing-enable
[SwitchC] interface vlan-interface 102
[SwitchC-Vlan-interface102] pim sm
[SwitchC-Vlan-interface102] quit
[SwitchC] interface vlan-interface 104
[SwitchC-Vlan-interface104] pim sm
[SwitchC-Vlan-interface104] quit
[SwitchC] interface vlan-interface 200
[SwitchC-Vlan-interface200] pim sm
[SwitchC-Vlan-interface200] igmp enable
[SwitchC-Vlan-interface200] quit
# 在Switch A上配置BSR的服務邊界。
[SwitchA] interface vlan-interface 101
[SwitchA-Vlan-interface101] pim bsr-boundary
[SwitchA-Vlan-interface101] quit
# 在Switch B上配置BSR的服務邊界。
[SwitchB] interface vlan-interface 101
[SwitchB-Vlan-interface101] pim bsr-boundary
[SwitchB-Vlan-interface101] quit
配置Loopback0接口和C-BSR、C-RP的位置
# 在Switch A上配置Loopback0接口和C-BSR、C-RP的位置。
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] ip address 1.1.1.1 32
[SwitchA-LoopBack0] pim sm
[SwitchA-LoopBack0] quit
[SwitchA] pim
[SwitchA-pim] c-bsr loopback 0
[SwitchA-pim] c-rp loopback 0
[SwitchA-pim] quit
# 在Switch B上配置Loopback0接口和C-BSR、C-RP的位置。
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] ip address 2.2.2.2 32
[SwitchB-LoopBack0] pim sm
[SwitchB-LoopBack0] quit
[SwitchB] pim
[SwitchB-pim] c-bsr loopback 0
[SwitchB-pim] c-rp loopback 0
[SwitchB-pim] quit
配置BGP協議,配置MBGP對等體,並互相引入路由
# 在Switch A上配置EBGP鄰接關係、配置MBGP對等體。
[SwitchA] bgp 100
[SwitchA-bgp] router-id 1.1.1.1
[SwitchA-bgp] peer 192.168.1.2 as-number 200
[SwitchA-bgp] import-route direct
[SwitchA-bgp] ipv4-family multicast
[SwitchA-bgp-af-mul] peer 192.168.1.2 enable
[SwitchA-bgp-af-mul] import-route direct
[SwitchA-bgp-af-mul] quit
[SwitchA-bgp] quit
# 在Switch B上配置EBGP鄰接關係、配置MBGP對等體,並引入OSPF路由。
[SwitchB] bgp 200
[SwitchB-bgp] router-id 2.2.2.2
[SwitchB-bgp] peer 192.168.1.1 as-number 100
[SwitchB-bgp] import-route ospf 1
[SwitchB-bgp] ipv4-family multicast
[SwitchB-bgp-af-mul] peer 192.168.1.1 enable
[SwitchB-bgp-af-mul] import-route ospf 1
[SwitchB-bgp-af-mul] quit
[SwitchB-bgp] quit
配置MSDP對等體
# 在Switch A上配置MSDP對等體。
[SwitchA] msdp
[SwitchA-msdp] peer 192.168.1.2 connect-interface vlan-interface 101
[SwitchA-msdp] quit
# 在Switch B上配置MSDP對等體。
[SwitchB] msdp
[SwitchB-msdp] peer 192.168.1.1 connect-interface vlan-interface 101
[SwitchB-msdp] quit
檢驗配置效果
通過使用display bgp multicast peer命令可以查看交換機之間MBGP對等體的關係。例如:
# 查看Switch B上MBGP對等體關係的信息。
[SwitchB] display bgp multicast peer
BGP local router ID : 2.2.2.2
Local AS number : 200
Total number of peers : 1 Peers in established state : 1
Peer AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
192.168.1.1 100 56 56 0 0 00:40:54 Established
通過使用display msdp brief命令可以查看交換機之間MSDP對等體建立情況。例如:
# 查看Switch B上MSDP對等體建立情況的簡要信息。
[SwitchB] display msdp brief
MSDP Peer Brief Information of VPN-Instance: public net
Configured Up Listen Connect Shutdown Down
1 1 0 0 0 0
Peer's Address State Up/Down time AS SA Count Reset Count
192.168.1.1 Up 00:07:17 100 1 0
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!