• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

08-IP組播配置指導

目錄

08-MSDP配置

本章節下載 08-MSDP配置  (617.11 KB)

08-MSDP配置


1 MSDP

說明

·     本文所涉及的路由器和路由器圖標,代表了運行MSDP協議的路由交換機。

·     本文中所提到的DR(Designated Router,指定路由器)、BSR(BootStrap Router,自舉路由器)、C-BSR(Candidate-BSR,候選BSR)、RP(Rendezvous Point,彙集點)、C-RP(Candidate-RP,候選RP)、SPT(Shortest Path Tree,最短路徑樹)和RPT(Rendezvous Point Tree,共享樹或彙集樹)等概念的詳細介紹,請參見“IP組播配置指導”中的“PIM”。

 

1.1  MSDP簡介

1.1.1  MSDP概述

MSDP(Multicast Source Discovery Protocol,組播源發現協議)是為了解決多個PIM-SM(Protocol Independent Multicast Sparse Mode,協議無關組播—稀疏模式)域之間的互連而開發的一種域間組播解決方案,用來發現其它PIM-SM域內的組播源信息。

在基本的PIM-SM模式下,組播源隻向本PIM-SM域內的RP注冊,且各域的組播源信息是相互隔離的,因此RP僅知道本域內的組播源信息,隻能在本域內建立組播分發樹,將本域內組播源發出的組播數據分發給本地用戶。如果能夠有一種機製,將其它域內的組播源信息傳遞給本域內的RP,則本域內的RP就可以向其它域內的組播源發起加入過程並建立組播分發樹,從而實現組播數據的跨域傳輸。

基於這一設想,MSDP通過在網絡中選取適當的路由器建立MSDP對等體關係,以連通各PIM-SM域的RP。通過在各MSDP對等體之間交互SA(Source Active,信源有效)消息來共享組播源信息。

注意

·     MSDP的適用前提:域內組播路由協議必須是PIM-SM。

·     MSDP僅對ASM(Any-Source Multicast,任意信源組播)模型有意義。

 

1.1.2  MSDP原理

1. MSDP對等體

通過在網絡中配置一對或多對MSDP對等體,形成彼此相連的一張“MSDP連通圖”,以連通各個PIM-SM域的RP。通過這些MSDP對等體之間的接力,可以把某RP發出的SA消息傳遞給其它所有的RP。

圖1-1 MSDP對等體的位置

 

圖1-1所示,MSDP對等體可以創建在任意的PIM-SM路由器上,在不同角色的PIM-SM路由器上所創建的MSDP對等體的功能有所不同:

在RP上創建的MSDP對等體

·     源端MSDP對等體:即離組播源(Source)最近的MSDP對等體(通常也就是源端RP,如RP 1)。源端RP創建SA消息並發送給遠端MSDP對等體,通告在本RP上注冊的組播源信息。源端MSDP對等體必須配置在RP上,否則將無法向外發布組播源信息。

·     接收者端MSDP對等體:即離接收者(Receiver)最近的MSDP對等體(如RP 3)。接收者端MSDP對等體在收到SA消息後,根據該消息中所包含的組播源信息,跨域加入以該組播源為根的SPT;當來自該組播源的組播數據到達後,再沿RPT向本地接收者轉發。

·     中間MSDP對等體:即擁有多個遠端MSDP對等體的MSDP對等體(如RP 2)。中間MSDP對等體把從一個遠端MSDP對等體收到的SA消息轉發給其它遠端MSDP對等體,其作用相當於傳輸組播源信息的中轉站。

在普通的PIM-SM路由器(非RP)上創建的MSDP對等體

如Router A和Router B,其作用僅限於將收到的SA消息轉發出去。

說明

對於通過BSR機製動態選舉RP的PIM-SM網絡來說,RP是由C-RP選舉產生的。為了增強其網絡的健壯性,一個PIM-SM域內往往存在不止一個C-RP。由於無法預計RP選舉的結果,為了保證選舉獲勝的C-RP能始終位於“MSDP連通圖”上,需要在所有的C-RP之間建立MSDP對等體關係。而選舉落敗的C-RP在“MSDP連通圖”上所擔當的角色相當於普通的PIM-SM路由器。

 

2. MSDP實現域間組播

圖1-2所示,PIM-SM 1域內存在激活的組播源(Source),RP 1通過組播源注冊過程了解到了該組播源的存在。如果PIM-SM 2和PIM-SM 3域也希望知道該組播源的具體位置,進而能夠從該組播源獲取組播數據,則需要在RP 1與RP 3、RP 2與RP 3之間分別建立MSDP對等體關係。

圖1-2 MSDP實現域間組播示意圖

 

借助MSDP對等體進行PIM-SM域間組播的工作過程如下:

當PIM-SM 1域內的組播源向組播組G發送第一個組播數據包時,DR 1將該組播數據封裝在注冊消息(Register Message)中,並發給RP 1。RP 1因此獲知了該組播源的相關信息。

RP 1作為源端RP,創建SA消息,並周期性地向其它MSDP對等體發送。SA消息中包含組播源的地址S、組播組的地址G以及創建該SA消息的源端RP(即RP 1)的地址。

MSDP對等體對收到的SA消息進行RPF(Reverse Path Forwarding,逆向路徑轉發)檢查,以及各種轉發策略的過濾,從而隻接受和轉發來自正確路徑並通過過濾的SA消息,以避免SA消息傳遞環路;另外,可以在MSDP對等體之間配置MSDP全連接組(Mesh Group),以避免SA消息在MSDP對等體之間的泛濫。

SA消息在MSDP對等體之間轉發,最終該組播源的相關信息將傳遍所有建立了MSDP對等體關係的PIM-SM域(即PIM-SM 2和PIM-SM 3)。

PIM-SM 2中的RP 2在收到該SA消息後,檢查本域內是否有組播組G的接收者(Receiver)存在:

·     如果有接收者,RP 2與接收者之間維護組播組G的RPT。RP 2創建(S,G)表項,向源端的DR 1逐跳發送(S,G)加入消息(Join Message),從而跨越各PIM-SM域直接加入以該組播源為根的SPT。組播數據沿SPT到達RP 2後,再沿RPT向接收者轉發。當接收者端的DR 2收到來自組播源的組播數據後,可以自行決定是否發起從RPT向SPT的切換;

·     如果沒有接收者,RP 2不會創建(S,G)表項,也不加入以該組播源為根的SPT。

說明

·     MSDP全連接組:要求所有組成員之間兩兩建立MSDP對等體關係,且所有組成員均使用相同的組名稱。

·     在使用MSDP進行域間組播時,RP在收到組播源的信息後就不再需要依賴其它PIM-SM域內的RP,此時接收者可以跨越各PIM-SM域內的RP,而直接加入基於組播源的SPT。

 

3. SA消息的RPF檢查規則

圖1-3所示,網絡中有五個自治係統AS 1~AS 5,AS內部使用IGP互聯,AS之間使用BGP或MBGP互聯。每個AS中包含至少一個PIM-SM域,且每個PIM-SM域中包含至少一個RP。各RP之間建立起MSDP對等體關係,其中RP 3、RP 4和RP 5之間建立MSDP全連接組,並在RP 7上將RP 6配置為其靜態RPF對等體。

說明

設備對於來自靜態RPF對等體的SA消息不進行RPF檢查,直接接受並向其它對等體轉發。

 

圖1-3 SA消息的RPF檢查規則

 

對照圖1-3,這些MSDP對等體將按照如下RPF檢查規則處理收到的SA消息:

當RP 2收到RP 1發來的SA消息時:由於SA消息中所攜帶的源端RP的地址與MSDP對等體的地址相同,說明發出SA消息的MSDP對等體就是創建該SA消息的RP,於是RP 2接受該SA消息並向其它對等體(RP 3)轉發。

當RP 3收到RP 2發來的SA消息時:由於SA消息來自同一個AS的MSDP對等體(RP 2),且該對等體是到源端RP最佳路徑上的下一跳,於是RP 3接受該SA消息並向其它對等體(RP 4和RP 5)轉發。

當RP 4和RP 5分別收到RP 3發來的SA消息時:由於SA消息來自同一個全連接組的MSDP對等體(RP 3),於是RP 4和RP 5均接受該SA消息並不再向本組其它成員轉發,而隻向本組之外的其它MSDP對等體(RP 6)轉發。

當RP 6收到RP 4和RP 5(假設RP 5的IP地址較大)發來的SA消息時:盡管同處AS 3的RP 4和RP 5都與RP 6建立了MSDP對等體關係,但RP 6隻接受IP地址較高的MSDP對等體(RP 5)發來的SA消息。

當RP 7收到RP 6發來的SA消息時:由於SA消息來自其靜態RPF對等體(RP 6),於是RP 7接受該SA消息並向其它對等體(RP 8)轉發。

當RP 8收到RP 7發來的SA消息時:屬於不同AS的MSDP對等體之間存在BGP或MBGP路由。由於SA消息來自不同AS的MSDP對等體(RP 7),且該對等體是到源端RP的BGP或MBGP路由的下一跳,於是RP 8接受該SA消息並向其它對等體(RP 9)轉發。

當RP 9收到RP 8發來的SA消息時:由於隻有一個MSDP對等體(RP 8),於是RP 9接受該SA消息。

對於由其它路徑到來的SA消息,MSDP對等體將不接受也不轉發。

4. MSDP實現域內Anycast RP

Anycast RP(任播RP)是指在同一個PIM-SM域內設置兩個或多個具有相同地址的RP,並在這些RP之間建立MSDP對等體關係,以實現域內各RP之間的負載分擔和冗餘備份。

圖1-4所示,在一個PIM-SM域內,組播源(Source)向組播組G發送組播數據,接收者(Receiver)是組播組G的成員。分別在Router A和Router B上配置相同的IP地址(稱為Anycast RP地址,通常使用私有地址),同時將這些接口配置為C-RP,並在Router A和Router B之間建立MSDP對等體關係。

說明

通常在設備的邏輯接口(如Loopback接口)上配置Anycast RP地址。

 

圖1-4 MSDP實現域內Anycast RP示意圖

 

Anycast RP的工作過程如下:

組播源選擇距離最近的RP進行注冊。如:Source向RP 1注冊,注冊消息中封裝有Source發出的組播數據。當該注冊消息到達RP 1後,進行解封裝。

接收者向距離最近的RP發送加入消息,加入以該RP為根的RPT。如:Receiver加入以RP 2為根的RPT。

RP之間通過發送SA消息,共享注冊的組播源信息。如:RP 1創建一個SA消息,發送給RP 2,該SA消息中封裝有Source發出的組播數據。當該SA消息到達RP 2後,進行解封裝。

接收者沿RPT收到組播數據後,直接加入以該組播源為根的SPT。如:RP 2沿RPT將組播數據向下轉發。當Receiver收到來自Source的組播數據後,直接加入以Source為根的SPT。

Anycast RP的意義如下:

·     RP路徑最優:組播源向距離最近的RP進行注冊,建立路徑最優的SPT;接收者向距離最近的RP發起加入,建立路徑最優的RPT。

·     RP間的負載分擔:每個RP上隻需維護PIM-SM域內的部分源/組信息、轉發部分的組播數據,從而實現了RP間的負載分擔。

·     RP間的冗餘備份:當某RP失效後,原先在該RP上注冊或加入的組播源或接收者會自動選擇就近的RP進行注冊或加入操作,從而實現了RP間的冗餘備份。

注意

·     必須為Anycast RP地址配置32位的子網掩碼(即255.255.255.255),也即將其配置為一個主機地址。

·     MSDP對等體的地址不能與Anycast RP地址相同。

 

1.1.3  多實例的MSDP

屬於同一實例的組播路由器各接口之間可以建立MSDP對等體。通過在MSDP對等體之間交互SA消息,可以實現跨域的VPN組播。

應用多實例的組播路由器,為其所支持的每一個實例都獨立維護了一套MSDP機製,包括:SA緩存、對等體連接、定時器、發送緩存和PIM交互的緩衝區。同時,保證不同實例之間信息隔離。所以,隻有屬於同一實例的MSDP和PIM-SM信息才可以交互。

1.1.4  協議規範

與MSDP相關的協議規範有:

·     RFC 3618:Multicast Source Discovery Protocol (MSDP)

·     RFC 3446:Anycast Rendevous Point (RP) mechanism using Protocol Independent Multicast (PIM) and Multicast Source Discovery Protocol (MSDP)

1.2  MSDP配置任務簡介

表1-1 MSDP配置任務簡介

配置任務

說明

詳細配置

配置MSDP基本功能

使能MSDP

必選

1.3.2 

創建MSDP對等體連接

必選

1.3.3 

配置靜態RPF對等體

可選

1.3.4 

配置MSDP對等體連接

配置MSDP對等體描述信息

可選

1.4.2 

配置MSDP全連接組

可選

1.4.3 

配置MSDP對等體連接控製

可選

1.4.4 

配置SA消息

配置SA消息內容

可選

1.5.2 

配置SA請求消息

可選

1.5.3 

配置SA消息過濾規則

可選

1.5.4 

配置SA消息緩存

可選

1.5.5 

 

1.3  配置MSDP基本功能

說明

本節的所有配置都是在PIM-SM域內的RP上進行的,這些RP將成為MSDP對等體的一端。

 

1.3.1  配置準備

在配置MSDP基本功能之前,需完成以下任務:

·     配置任一單播路由協議,實現域內網絡層互通

·     配置PIM-SM,實現域內組播

在配置MSDP基本功能之前,需準備以下數據:

·     MSDP對等體的IP地址

·     表示RP地址過濾策略的地址前綴列表

1.3.2  使能MSDP

在配置MSDP各功能之前,必須先使能MSDP。

1. 使能公網實例中的MSDP

表1-2 使能公網實例中的MSDP

操作

命令

說明

進入係統視圖

system-view

-

使能IP組播路由

multicast routing-enable

必選

缺省情況下,IP組播路由處於關閉狀態

使能MSDP,並進入公網實例MSDP視圖

msdp

必選

缺省情況下,MSDP處於關閉狀態

 

2. 使能VPN實例中的MSDP

注意

係統工作在標準模式下時,如果需要配置多實例的MSDP,則必須配置保留VLAN。關於係統工作模式的介紹請參見“基礎配置指導”中的“設備管理”。關於保留VLAN的詳細配置和命令,請參見“MPLS配置指導”和“MPLS命令參考”中的“MPLS L3VPN”。

 

表1-3 使能VPN實例中的MSDP

操作

命令

說明

進入係統視圖

system-view

-

創建VPN實例,並進入VPN實例視圖

ip vpn-instance vpn-instance-name

-

配置VPN實例的RD

route-distinguisher route-distinguisher

必選

缺省情況下,VPN實例沒有RD

使能IP組播路由

multicast routing-enable

必選

缺省情況下,IP組播路由處於關閉狀態

退回係統視圖

quit

-

使能MSDP,並進入VPN實例MSDP視圖

msdp vpn-instance vpn-instance-name

必選

缺省情況下,MSDP處於關閉狀態

 

說明

·     有關ip vpn-instanceroute-distinguisher命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS L3VPN”。

·     有關multicast routing-enable命令的詳細介紹,請參見“IP組播命令參考”中的“組播路由與轉發”。

 

1.3.3  創建MSDP對等體連接

MSDP對等體使用地址對來標識,即本端MSDP對等體地址和遠端MSDP對等體地址。需要在互為對等體的兩端都創建MSDP對等體連接。

表1-4 創建MSDP對等體連接

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

創建MSDP對等體連接

peer peer-address connect-interface interface-type interface-number

必選

缺省情況下,沒有創建MSDP對等體連接

 

說明

如果某接口同時作為MSDP對等體和BGP/MBGP對等體中的一端,則建議為MSDP對等體配置與BGP或MBGP對等體相同的IP地址。

 

1.3.4  配置靜態RPF對等體

通過配置靜態RPF對等體可以免除對收到的SA消息進行RPF檢查。

表1-5 配置靜態RPF對等體

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

配置靜態RPF對等體

static-rpf-peer peer-address [ rp-policy ip-prefix-name ]

必選

缺省情況下,沒有配置靜態RPF對等體

 

說明

如果在一台設備上隻配置了一個MSDP對等體,則該MSDP對等體將被當作靜態RPF對等體。

 

1.4  配置MSDP對等體連接

1.4.1  配置準備

在配置MSDP對等體連接之前,需完成以下任務:

·     配置任一單播路由協議,實現域內網絡層互通

·     配置MSDP基本功能

在配置MSDP對等體連接之前,需準備以下數據:

·     MSDP對等體的描述信息

·     MSDP全連接組的名稱

·     建立MSDP對等體連接的重試周期

·     MSDP對等體建立TCP連接時進行MD5認證的密碼

1.4.2  配置MSDP對等體描述信息

管理員可以通過MSDP對等體的描述信息方便地區分不同的MSDP對等體,從而更好地管理MSDP對等體。

表1-6 配置MSDP對等體描述信息

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

配置MSDP對等體的描述信息

peer peer-address description text

必選

缺省情況下,MSDP對等體沒有描述信息

 

1.4.3  配置MSDP全連接組

一個自治係統內可能包含多個MSDP對等體,為了避免這些MSDP對等體之間泛濫SA消息,可以使用MSDP全連接組來優化數據流量。

構成全連接組的MSDP對等體,一方麵將來自組外並通過了RPF檢查的SA消息轉發給組內的其它成員;另一方麵,對來自組內成員的SA消息不經RPF檢查就接受,也不在組內進行重複轉發。這種操作既避免了SA消息的泛濫,同時還由於不需要在MSDP對等體之間運行BGP或MBGP,所以也就簡化了對等體RPF檢查機製。

通過為多個MSDP對等體配置相同的全連接組名稱,可以建立MSDP全連接組。

表1-7 配置MSDP全連接組

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

把MSDP對等體加入全連接組

peer peer-address mesh-group name

必選

缺省情況下,MSDP對等體不屬於任何全連接組

 

說明

·     在配置MSDP全連接組之前,應使各設備之間保持兩兩互連。

·     如果在同一MSDP對等體上多次配置加入全連接組,最後一個配置有效。

 

1.4.4  配置MSDP對等體連接控製

MSDP對等體之間使用TCP進行連接(端口號為639),用戶可以手工關閉或重建MSDP對等體連接,靈活控製MSDP對等體之間的會話。當關閉了MSDP對等體連接後,MSDP對等體之間不再傳遞SA消息,TCP連接關閉,並不再重試建立連接,但配置信息會被保留。

當新創建了MSDP對等體、或重新啟動了被關閉的MSDP對等體連接、或發生故障的MSDP對等體嚐試恢複工作時,需要在MSDP對等體之間建立TCP連接。用戶可以靈活地調整建立MSDP對等體連接的重試周期。

為了提高MSDP的安全性,可以配置MSDP對等體在建立TCP連接時進行MD5認證。該認證並不能對MSDP報文進行認證,它隻是為TCP連接設置MD5認證密碼,並由TCP完成認證。如果認證失敗,則無法建立TCP連接。

表1-8 配置MSDP對等體連接控製

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

手工關閉MSDP對等體連接

shutdown peer-address

可選

缺省情況下,MSDP對等體處於連接狀態

配置建立MSDP對等體連接的重試周期

timer retry interval

可選

缺省情況下,建立MSDP對等體連接的重試周期為30秒

配置MSDP對等體建立TCP連接時進行MD5認證

peer peer-address password { cipher cipher-password | simple simple-password }

可選

缺省情況下,MSDP對等體建立TCP連接時不進行MD5認證

 

注意

參與MD5認證的兩端MSDP對等體必須配置相同的認證方式和密碼,否則將由於不能通過認證而無法建立TCP連接。

 

1.5  配置SA消息

1.5.1  配置準備

在配置SA消息傳遞之前,需完成以下任務:

·     配置任一單播路由協議,實現域內網絡層互通

·     配置MSDP基本功能

在配置SA消息傳遞之前,需準備以下數據:

·     表示SA請求消息過濾規則的ACL規則

·     表示SA消息創建規則的ACL規則

·     表示接收或轉發SA消息的過濾規則的ACL規則

·     封裝在SA消息中組播數據報文的TTL(Time to Live,生存時間)閾值

·     可緩存從指定MSDP對等體學到的(S,G)表項的最大數量

1.5.2  配置SA消息內容

某些組播源發送組播數據的時間間隔較長,超出了(S,G)表項的超時時間。在這種情況下,源端DR隻能將組播數據逐個封裝在注冊消息中,發送給源端RP。源端RP使用SA消息將(S,G)信息傳輸給遠端RP。然後,遠端RP向源端DR發起加入過程,並創建SPT。由於(S,G)表項已超時,遠端用戶將永遠無法收到該組播源發出的組播數據。

當在源端RP上使能了在SA消息中封裝組播數據報文的功能後,源端RP會將組播數據報文封裝在SA消息中發送出去。遠端RP收到該SA消息後解封裝,並將組播數據報文沿RPT傳輸給本域內的用戶。

MSDP對等體之間傳遞SA消息,當設備對收到的SA消息進行RPF檢查時,如果發現對端RP的地址與本地RP的地址相同,就會丟棄該SA消息。但在Anycast RP應用中,要求在同一個PIM-SM域內的兩台或多台設備上配置IP地址相同的RP,並在這些設備之間建立MSDP對等體關係,因此必須為SA消息指定一個與實際RP的地址不同的邏輯RP地址(即邏輯接口上的RP地址),以通過RPF檢查。

表1-9 配置SA消息內容

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

使能在SA消息中封裝組播數據報文

encap-data-enable

可選

缺省情況下,在SA消息中隻包含(S,G)表項,不封裝組播數據報文

配置接口地址為SA消息的RP地址

originating-rp interface-type interface-number

可選

缺省情況下,SA消息的RP地址為PIM的RP地址

 

1.5.3  配置SA請求消息

缺省情況下,當一個新接收者加入時,設備不會主動向其MSDP對等體發送SA請求消息,而是等待其MSDP對等體在下一個周期發來的SA消息,這將延遲接收者獲取組播源信息的時間。為了盡快讓新接收者了解到當前活躍的組播源信息,需要主動向MSDP對等體發送SA請求消息。

表1-10 配置SA請求消息

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

使能發送SA請求消息

peer peer-address request-sa-enable

可選

缺省情況下,設備收到新的組加入消息時,不向其MSDP對等體發送SA請求消息,而是等待下一周期SA消息的到來

配置SA請求消息的過濾規則

peer peer-address sa-request-policy [ acl acl-number ]

可選

缺省情況下,不對SA請求消息進行過濾

 

注意

在使能發送SA請求消息功能之前,必須首先關閉SA消息緩存機製,否則設備不會向外發送SA請求消息。

 

1.5.4  配置SA消息過濾規則

通過配置SA消息的創建規則,設備可以在創建SA消息時,對其通告的(S,G)表項進行過濾,從而實現在創建SA消息時對組播源消息傳播的控製。

通過配置接收或轉發SA消息的過濾規則,設備可以在接收或轉發SA消息時,對其通告的(S,G)轉發項進行過濾,從而實現在接收和轉發SA消息時,對組播源消息傳播的控製。

通過配置封裝在SA消息中組播數據報文的TTL閾值,可以對組播數據報文在SA消息中的封裝以及傳輸範圍進行限製:

·     設備在創建封裝有組播數據報文的SA消息之前,先檢查該組播數據報文IP頭的TTL值:如果小於閾值,則不創建該SA消息;如果大於或等於閾值,則將組播數據報文封裝在SA消息中並轉發出去。

·     設備在收到封裝有組播數據報文的SA消息之後,先將該組播數據報文IP頭的TTL值減1,再檢查此時的TTL值:如果小於閾值,則不再向其指定的MSDP對等體轉發;如果大於或等於閾值,則重新將組播數據報文封裝在SA消息中並轉發出去。

表1-11 配置SA消息過濾規則

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

配置SA消息的創建規則

import-source [ acl acl-number ]

必選

缺省情況下,在創建SA消息時,對其通告的(S,G)表項不作限製

配置接收或轉發SA消息的過濾規則

peer peer-address sa-policy { import | export } [ acl acl-number ]

必選

缺省情況下,不對接收或轉發的SA消息進行過濾

配置封裝在SA消息中組播數據報文的TTL閾值

peer peer-address minimum-ttl ttl-value

可選

缺省情況下,封裝在SA消息中組播數據報文的TTL閾值為0

 

1.5.5  配置SA消息緩存

為了減少獲取組播信息的延遲時間,可以在設備上使能SA消息緩存機製,即在本地緩存SA消息中所包含的(S,G)表項。緩存的(S,G)表項越多,所占用的內存空間越大。

在使能了SA消息緩存機製後,當收到一個新的組加入消息(*,G)時,設備首先查找SA緩存:

·     如果緩存中沒有對應的(S,G),便等候其MSDP對等體在下一個周期發來的SA消息;

·     如果緩存中有對應的(S,G),則直接加入以S為根的SPT。

為了有效防止設備受到DoS(Denial of Service,拒絕服務)攻擊,可以在設備上配置可緩存(S,G)表項的最大數量。

表1-12 配置SA消息緩存

操作

命令

說明

進入係統視圖

system-view

-

進入公網實例或VPN實例MSDP視圖

msdp [ vpn-instance vpn-instance-name ]

-

使能SA消息緩存機製

cache-sa-enable

可選

在缺省情況下,SA消息緩存機製處於使能狀態,即在設備收到SA消息後緩存其中包含的(S,G)表項

配置可緩存從指定MSDP對等體學到的(S,G)表項的最大數量

peer peer-address sa-cache-maximum sa-limit

可選

缺省情況下,可緩存從任一MSDP對等體學到的(S,G)表項的最大數量為8192

 

1.6  MSDP顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後MSDP的運行情況,通過查看顯示信息驗證配置的效果。

在用戶視圖下執行reset命令可以清除MSDP的統計信息。

表1-13 MSDP顯示和維護

操作

命令

查看MSDP對等體的簡要信息

display msdp [ all-instance | vpn-instance vpn-instance-name ] brief [ state { connect | down | listen | shutdown | up } ] [ | { begin | exclude | include } regular-expression ]

查看MSDP對等體的詳細狀態信息

display msdp [ all-instance | vpn-instance vpn-instance-name ] peer-status [ peer-address ] [ | { begin | exclude | include } regular-expression ]

查看SA緩存中的(S,G)表項信息

display msdp [ all-instance | vpn-instance vpn-instance-name ] sa-cache [ group-address | source-address | as-number ] * [ | { begin | exclude | include } regular-expression ]

查看SA緩存中(S,G)表項的數量

display msdp [ all-instance | vpn-instance vpn-instance-name ] sa-count [ as-number ] [ | { begin | exclude | include } regular-expression ]

重置與MSDP對等體的TCP連接

reset msdp [ all-instance | vpn-instance vpn-instance-name ] peer [ peer-address ]

清除SA緩存中的(S,G)表項

reset msdp [ all-instance | vpn-instance vpn-instance-name ] sa-cache [ group-address ]

清除MSDP對等體的統計信息

reset msdp [ all-instance | vpn-instance vpn-instance-name ] statistics [ peer-address ]

 

1.7  MSDP典型配置舉例

說明

缺省情況下,以太網接口、VLAN接口及聚合接口處於DOWN狀態。如果要對這些接口進行配置,請先使用undo shutdown命令使接口狀態處於UP狀態。

 

1.7.1  PIM-SM域間組播配置舉例

1. 組網需求

·     網絡中存在兩個自治係統:AS 100和AS 200,各AS內部采用OSPF協議、AS之間則采用BGP協議以保證單播路由的暢通;

·     PIM-SM 1屬於AS 100,PIM-SM 2和PIM-SM 3屬於AS 200,每個PIM-SM域分別擁有至少一個組播源(Source)或接收者(Receiver);

·     將Switch B、Switch C和Switch E各自的Loopback0接口分別配置為各自PIM-SM域的C-BSR和C-RP;

·     通過在各PIM-SM域的RP之間建立MSDP對等體,從而實現各PIM-SM域之間組播源信息的共享。

2. 組網圖

圖1-5 PIM-SM域間組播配置組網圖

設備

接口

IP地址

設備

接口

IP地址

Switch A

Vlan-int103

10.110.1.2/24

Switch D

Vlan-int104

10.110.4.2/24

 

Vlan-int100

10.110.2.1/24

 

Vlan-int300

10.110.5.1/24

 

Vlan-int200

10.110.3.1/24

Switch E

Vlan-int105

10.110.6.1/24

Switch B

Vlan-int103

10.110.1.1/24

 

Vlan-int102

192.168.3.2/24

 

Vlan-int101

192.168.1.1/24

 

Loop0

3.3.3.3/32

 

Loop0

1.1.1.1/32

Switch F

Vlan-int105

10.110.6.2/24

Switch C

Vlan-int104

10.110.4.1/24

 

Vlan-int400

10.110.7.1/24

 

Vlan-int102

192.168.3.1/24

Source 1

-

10.110.2.100/24

 

Vlan-int101

192.168.1.2/24

Source 2

-

10.110.5.100/24

 

Loop0

2.2.2.2/32

 

 

 

 

3. 配置步驟

配置IP地址和單播路由協議

請按照圖1-5配置各接口的IP地址和子網掩碼,具體配置過程略。

配置AS內的各交換機之間采用OSPF協議進行互連,確保各AS內部在網絡層互通,並且各交換機之間能夠借助單播路由協議實現動態路由更新,具體配置過程略。

使能IP組播路由,使能PIM-SM和IGMP,並配置BSR的服務邊界

# 在Switch A上使能IP組播路由,在各接口上使能PIM-SM,並在主機側接口Vlan-interface200上使能IGMP。

<SwitchA> system-view

[SwitchA] multicast routing-enable

[SwitchA] interface vlan-interface 103

[SwitchA-Vlan-interface103] pim sm

[SwitchA-Vlan-interface103] quit

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] pim sm

[SwitchA-Vlan-interface100] quit

[SwitchA] interface vlan-interface 200

[SwitchA-Vlan-interface200] igmp enable

[SwitchA-Vlan-interface200] pim sm

[SwitchA-Vlan-interface200] quit

Switch B、Switch C、Switch D、Switch E和Switch F上的配置與Switch A相似,配置過程略。

# 在Switch B上配置BSR的服務邊界。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] pim bsr-boundary

[SwitchB-Vlan-interface101] quit

Switch C和Switch E上的配置與Switch B相似,配置過程略。

配置C-BSR和C-RP的位置

# 在Switch B上將Loopback0接口配置為C-BSR和C-RP。

[SwitchB] pim

[SwitchB-pim] c-bsr loopback 0

[SwitchB-pim] c-rp loopback 0

[SwitchB-pim] quit

Switch C和Switch E上的配置與Switch B相似,配置過程略。

配置BGP協議,將BGP與OSPF互相引入

# 在Switch B上配置EBGP對等體,並引入OSPF路由。

[SwitchB] bgp 100

[SwitchB-bgp] router-id 1.1.1.1

[SwitchB-bgp] peer 192.168.1.2 as-number 200

[SwitchB-bgp] import-route ospf 1

[SwitchB-bgp] quit

# 在Switch C上配置EBGP對等體,並引入OSPF路由。

[SwitchC] bgp 200

[SwitchC-bgp] router-id 2.2.2.2

[SwitchC-bgp] peer 192.168.1.1 as-number 100

[SwitchC-bgp] import-route ospf 1

[SwitchC-bgp] quit

# 在Switch B的OSPF中引入BGP。

[SwitchB] ospf 1

[SwitchB-ospf-1] import-route bgp

[SwitchB-ospf-1] quit

# 在Switch C的OSPF中引入BGP。

[SwitchC] ospf 1

[SwitchC-ospf-1] import-route bgp

[SwitchC-ospf-1] quit

配置MSDP對等體

# 在Switch B上配置MSDP對等體。

[SwitchB] msdp

[SwitchB-msdp] peer 192.168.1.2 connect-interface vlan-interface 101

[SwitchB-msdp] quit

# 在Switch C上配置MSDP對等體。

[SwitchC] msdp

[SwitchC-msdp] peer 192.168.1.1 connect-interface vlan-interface 101

[SwitchC-msdp] peer 192.168.3.2 connect-interface vlan-interface 102

[SwitchC-msdp] quit

# 在Switch E上配置MSDP對等體。

[SwitchE] msdp

[SwitchE-msdp] peer 192.168.3.1 connect-interface vlan-interface 102

[SwitchE-msdp] quit

檢驗配置效果

通過使用display bgp peer命令可以查看交換機之間BGP對等體的關係。例如:

# 查看Switch BBGP對等體關係的信息。

[SwitchB] display bgp peer

 

 BGP local router ID : 1.1.1.1

 Local AS number : 100

 Total number of peers : 1                 Peers in established state : 1

 

  Peer          AS  MsgRcvd  MsgSent  OutQ PrefRcv Up/Down  State

 

  192.168.1.2   200       24       21     0       6 00:13:09 Established

# 查看Switch C上BGP對等體關係的信息。

[SwitchC] display bgp 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       18       16     0       1 00:12:04 Established

通過使用display bgp routing-table命令可以查看交換機上的BGP路由表。例如:

# 查看Switch C上BGP路由表的信息。

[SwitchC] display bgp routing-table

 

 Total Number of Routes: 5

 

 BGP Local router ID is 2.2.2.2

 Status codes: * - valid, ^ - VPNv4 best, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 

* >  1.1.1.1/32         192.168.1.1     0                     0       100?

* >i 2.2.2.2/32         0.0.0.0         0                     0       ?

* >  192.168.1.0        0.0.0.0         0                     0       ?

* >  192.168.1.1/32     0.0.0.0         0                     0       ?

* >  192.168.1.2/32     0.0.0.0         0                     0       ?

當PIM-SM 1和PIM-SM 2域內的組播源Source 1和Source 2發送組播信息時,PIM-SM 1和PIM-SM 3域內的接收者能收到該組播信息。通過使用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.2        Up        00:12:27       200    13         0

# 查看Switch C上MSDP對等體建立情況的簡要信息。

[SwitchC] display msdp brief

MSDP Peer Brief Information of VPN-Instance: public net

  Configured   Up           Listen       Connect      Shutdown     Down

  2            2            0            0            0            0

 

  Peer's Address    State    Up/Down time    AS     SA Count   Reset Count

  192.168.3.2       Up       00:15:32        200    8          0

  192.168.1.1       Up       00:06:39        100    13         0

# 查看Switch E上MSDP對等體建立情況的簡要信息。

[SwitchE] 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.3.1       Up       01:07:08        200    8          0

# 查看Switch B上MSDP對等體的詳細信息。

[SwitchB] display msdp peer-status

MSDP Peer Information of VPN-Instance: public net

  MSDP Peer 192.168.1.2, AS 200

  Description:

  Information about connection status:

    State: Up

    Up/down time: 00:15:47

    Resets: 0

    Connection interface: Vlan-interface101 (192.168.1.1)

    Number of sent/received messages: 16/16

    Number of discarded output messages: 0

    Elapsed time since last connection or counters clear: 00:17:51

  Information about (Source, Group)-based SA filtering policy:

    Import policy: none

    Export policy: none

  Information about SA-Requests:

    Policy to accept SA-Request messages: none

    Sending SA-Requests status: disable

  Minimum TTL to forward SA with encapsulated data: 0

  SAs learned from this peer: 0, SA-cache maximum for the peer: none

  Input queue size: 0, Output queue size: 0

  Counters for MSDP message:

    Count of RPF check failure: 0

    Incoming/outgoing SA messages: 0/0

    Incoming/outgoing SA requests: 0/0

    Incoming/outgoing SA responses: 0/0

    Incoming/outgoing data packets: 0/0

1.7.2  借助靜態RPF對等體的AS間組播配置舉例

1. 組網需求

·     網絡中存在兩個自治係統:AS 100和AS 200,各AS內部采用OSPF協議、AS之間則采用BGP協議以保證單播路由的暢通;

·     PIM-SM 1屬於AS 100,PIM-SM 2和PIM-SM 3屬於AS 200,每個PIM-SM域分別擁有至少一個組播源(Source)或接收者(Receiver);

·     將Switch A、Switch D和Switch G各自的Loopback0接口分別配置為各自PIM-SM域的C-BSR和C-RP;

·     根據RPF規則,設備接受來自其靜態RPF對等體且被過濾策略所允許的SA消息。通過在各PIM-SM域的RP之間建立MSDP對等體,並在各MSDP對等體之間建立靜態RPF對等體,從而在不改變單播拓撲的基礎上實現各PIM-SM域之間組播源信息的共享。

2. 組網圖

圖1-6 借助靜態RPF對等體的AS間組播配置組網圖

設備

接口

IP地址

設備

接口

IP地址

Source 1

-

192.168.1.100/24

Switch D

Vlan-int105

10.110.5.1/24

Source 2

-

192.168.3.100/24

 

Vlan-int103

10.110.3.2/24

Switch A

Vlan-int101

10.110.1.1/24

 

Loop0

2.2.2.2/32

 

Vlan-int102

10.110.2.1/24

Switch E

Vlan-int105

10.110.5.2/24

 

Loop0

1.1.1.1/32

 

Vlan-int300

192.168.3.1/24

Switch B

Vlan-int101

10.110.1.2/24

Switch F

Vlan-int106

10.110.6.1/24

 

Vlan-int100

192.168.1.1/24

 

Vlan-int104

10.110.4.2/24

 

Vlan-int103

10.110.3.1/24

Switch G

Vlan-int106

10.110.6.2/24

Switch C

Vlan-int102

10.110.2.2/24

 

Vlan-int400

192.168.4.1/24

 

Vlan-int200

192.168.2.1/24

 

Loop0

3.3.3.3/32

 

Vlan-int104

10.110.4.1/24

 

 

 

 

3. 配置步驟

配置IP地址和單播路由協議

請按照圖1-6配置各接口的IP地址和掩碼,具體配置過程略。

配置AS內的各交換機之間采用OSPF協議進行互連,確保AS內部在網絡層互通,並且各交換機之間能夠借助單播路由協議實現動態路由更新,具體配置過程略。

使能IP組播路由,使能PIM-SM和IGMP,並配置BSR的服務邊界

# 在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 200

[SwitchC-Vlan-interface200] igmp enable

[SwitchC-Vlan-interface200] pim sm

[SwitchC-Vlan-interface200] quit

[SwitchC] interface vlan-interface 104

[SwitchC-Vlan-interface104] pim sm

[SwitchC-Vlan-interface104] quit

Switch A、Switch B、Switch D、Switch E、Switch F和Switch G上的配置與Switch C相似,配置過程略。

# 在Switch B上配置BSR的服務邊界。

[SwitchB] interface vlan-interface 103

[SwitchB-Vlan-interface103] pim bsr-boundary

[SwitchB-Vlan-interface103] quit

Switch C、Switch D和Switch F上的配置與Switch B相似,配置過程略。

配置C-BSR和C-RP的位置

# 在Switch A上將Loopback0接口配置為C-BSR和C-RP。

[SwitchA] pim

[SwitchA-pim] c-bsr loopback 0

[SwitchA-pim] c-rp loopback 0

[SwitchA-pim] quit

Switch D和Switch G上的配置與Switch A相似,配置過程略。

配置BGP協議,將BGP與OSPF互相引入

# 在Switch B上配置EBGP對等體,並引入OSPF路由。

[SwitchB] bgp 100

[SwitchB-bgp] router-id 1.1.1.2

[SwitchB-bgp] peer 10.110.3.2 as-number 200

[SwitchB-bgp] import-route ospf 1

[SwitchB-bgp] quit

# 在Switch D上配置EBGP對等體,並引入OSPF路由。

[SwitchD] bgp 200

[SwitchD-bgp] router-id 2.2.2.2

[SwitchD-bgp] peer 10.110.3.1 as-number 100

[SwitchD-bgp] import-route ospf 1

[SwitchD-bgp] quit

# 在Switch C上配置EBGP對等體,並引入OSPF路由。

[SwitchC] bgp 100

[SwitchC-bgp] router-id 1.1.1.3

[SwitchC-bgp] peer 10.110.4.2 as-number 200

[SwitchC-bgp] import-route ospf 1

[SwitchC-bgp] quit

# 在Switch F上配置EBGP對等體,並引入OSPF路由。

[SwitchF] bgp 200

[SwitchF-bgp] router-id 3.3.3.1

[SwitchF-bgp] peer 10.110.4.1 as-number 100

[SwitchF-bgp] import-route ospf 1

[SwitchF-bgp] quit

# 在Switch B的OSPF中引入BGP。

[SwitchB] ospf 1

[SwitchB-ospf-1] import-route bgp

[SwitchB-ospf-1] quit

# 在Switch D的OSPF中引入BGP。

[SwitchD] ospf 1

[SwitchD-ospf-1] import-route bgp

[SwitchD-ospf-1] quit

# 在Switch C的OSPF中引入BGP。

[SwitchC] ospf 1

[SwitchC-ospf-1] import-route bgp

[SwitchC-ospf-1] quit

# 在Switch F的OSPF中引入BGP。

[SwitchF] ospf 1

[SwitchF-ospf-1] import-route bgp

[SwitchF-ospf-1] quit

配置MSDP對等體及靜態RPF對等體

# 配置Switch D和Switch G作為Switch A的MSDP對等體及靜態RPF對等體。

[SwitchA] ip ip-prefix list-dg permit 10.110.0.0 16 greater-equal 16 less-equal 32

[SwitchA] msdp

[SwitchA-msdp] peer 10.110.3.2 connect-interface vlan-interface 101

[SwitchA-msdp] peer 10.110.6.2 connect-interface vlan-interface 102

[SwitchA-msdp] static-rpf-peer 10.110.3.2 rp-policy list-dg

[SwitchA-msdp] static-rpf-peer 10.110.6.2 rp-policy list-dg

[SwitchA-msdp] quit

# 配置Switch A作為Switch D的MSDP對等體及靜態RPF對等體。

[SwitchD] ip ip-prefix list-a permit 10.110.0.0 16 greater-equal 16 less-equal 32

[SwitchD] msdp

[SwitchD-msdp] peer 10.110.1.1 connect-interface vlan-interface 103

[SwitchD-msdp] static-rpf-peer 10.110.1.1 rp-policy list-a

[SwitchD-msdp] quit

# 配置Switch A作為Switch G的MSDP對等體及靜態RPF對等體。

[SwitchG] ip ip-prefix list-a permit 10.110.0.0 16 greater-equal 16 less-equal 32

[SwitchG] msdp

[SwitchG-msdp] peer 10.110.2.1 connect-interface vlan-interface 106

[SwitchG-msdp] static-rpf-peer 10.110.2.1 rp-policy list-a

[SwitchG-msdp] quit

檢驗配置效果

通過使用display bgp peer命令可以查看交換機之間BGP對等體建立情況。Switch A上無任何信息輸出,說明Switch A與Switch D、Switch A與Switch G之間均未建立BGP對等體關係。

當PIM-SM 1和PIM-SM 2域內的組播源Source 1和Source 2發送組播信息時,PIM-SM 1和PIM-SM 3域內的接收者能收到該組播信息,通過使用display msdp brief命令可以查看交換機之間MSDP對等體的建立情況。例如:

# 查看Switch A上MSDP對等體的簡要信息。

[SwitchA] display msdp brief

MSDP Peer Brief Information of VPN-Instance: public net

  Configured   Up           Listen       Connect      Shutdown     Down

  2            2            0            0            0            0

 

  Peer's Address    State    Up/Down time    AS     SA Count   Reset Count

  10.110.3.2        Up       01:07:08        ?      8          0

  10.110.6.2        Up       00:16:39        ?      13         0

# 查看Switch D上MSDP對等體的簡要信息。

[SwitchD] 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

  10.110.1.1       Up       01:07:09        ?      8          0

# 查看Switch G上MSDP對等體的簡要信息。

[SwitchG] 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

  10.110.2.1        Up       00:16:40        ?      13         0

1.7.3  Anycast RP應用配置舉例

1. 組網需求

·     PIM-SM域內擁有多個組播源(Source)和接收者(Receiver),並在域內運行OSPF協議以提供單播路由;

·     通過配置Anycast RP,使接收者側DR能夠向拓撲距離最近的RP發起加入,組播源側DR也向拓撲距離最近的RP發起注冊;

·     將Switch B和Switch D各自的Loopback10接口配置為C-BSR、Loopback20接口配置為C-RP;

·     Switch B的Router ID為1.1.1.1,Switch D的Router ID為2.2.2.2,在Switch B和Switch D之間建立MSDP對等體關係。

2. 組網圖

圖1-7 Anycast RP應用配置組網圖

設備

接口

IP地址

設備

接口

IP地址

Source 1

-

10.110.5.100/24

Switch C

Vlan-int101

192.168.1.2/24

Source 2

-

10.110.6.100/24

 

Vlan-int102

192.168.2.2/24

Switch A

Vlan-int300

10.110.5.1/24

Switch D

Vlan-int200

10.110.3.1/24

 

Vlan-int103

10.110.2.2/24

 

Vlan-int104

10.110.4.1/24

Switch B

Vlan-int100

10.110.1.1/24

 

Vlan-int102

192.168.2.1/24

 

Vlan-int103

10.110.2.1/24

 

Loop0

2.2.2.2/32

 

Vlan-int101

192.168.1.1/24

 

Loop10

4.4.4.4/32

 

Loop0

1.1.1.1/32

 

Loop20

10.1.1.1/32

 

Loop10

3.3.3.3/32

Switch E

Vlan-int400

10.110.6.1/24

 

Loop20

10.1.1.1/32

 

Vlan-int104

10.110.4.2/24

 

3. 配置步驟

配置IP地址和單播路由協議

請按照圖1-7配置各接口的IP地址和子網掩碼,具體配置過程略。

配置PIM-SM域內的各交換機之間采用OSPF協議進行互連,確保PIM-SM域內部在網絡層互通,並且各交換機之間能夠借助單播路由協議實現動態路由更新,具體配置過程略。

使能IP組播路由,並使能PIM-SM和IGMP

# 在Switch B上使能IP組播路由,在各接口上使能PIM-SM,並在主機側接口Vlan-interface100上使能IGMP。

<SwitchB> system-view

[SwitchB] multicast routing-enable

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] igmp enable

[SwitchB-Vlan-interface100] pim sm

[SwitchB-Vlan-interface100] quit

[SwitchB] interface vlan-interface 103

[SwitchB-Vlan-interface103] pim sm

[SwitchB-Vlan-interface103] quit

[SwitchB] interface Vlan-interface 101

[SwitchB-Vlan-interface101] pim sm

[SwitchB-Vlan-interface101] quit

[SwitchB] interface loopback 0

[SwitchB-LoopBack0] pim sm

[SwitchB-LoopBack0] quit

[SwitchB] interface loopback 10

[SwitchB-LoopBack10] pim sm

[SwitchB-LoopBack10] quit

[SwitchB] interface loopback 20

[SwitchB-LoopBack20] pim sm

[SwitchB-LoopBack20] quit

Switch A、Switch C、Switch D和Switch E上的配置與Switch B相似,配置過程略。

配置C-BSR和C-RP的位置

# 在Switch B上將Loopback10配置為C-BSR,將Loopback20配置為C-RP。

[SwitchB] pim

[SwitchB-pim] c-bsr loopback 10

[SwitchB-pim] c-rp loopback 20

[SwitchB-pim] quit

Switch D上的配置與Switch B相似,配置過程略。

配置MSDP對等體

# 在Switch B的Loopback0接口上配置MSDP對等體。

[SwitchB] msdp

[SwitchB-msdp] originating-rp loopback 0

[SwitchB-msdp] peer 2.2.2.2 connect-interface loopback 0

[SwitchB-msdp] quit

# 在Switch D的Loopback0接口上配置MSDP對等體。

[SwitchD] msdp

[SwitchD-msdp] originating-rp loopback 0

[SwitchD-msdp] peer 1.1.1.1 connect-interface loopback 0

[SwitchD-msdp] quit

檢驗配置效果

通過使用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

  2.2.2.2           Up       00:10:17        ?      0          0

# 查看Switch D上MSDP對等體的簡要信息。

[SwitchD] 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

  1.1.1.1           Up       00:10:18        ?      0          0

通過使用display pim routing-table命令可以查看交換機上的PIM路由。

當Source 1(10.110.5.100/24)開始向組播組G(225.1.1.1)發送組播信息時,Host A加入組播組G。通過比較Switch B與Switch D上PIM路由的顯示信息,可知當前的有效RP為Switch B:Source 1向Switch B注冊,Host A向Switch B加入。

# 查看Switch B上的PIM路由的信息。

[SwitchB] display pim routing-table

VPN-Instance: public net

 Total 1 (*, G) entry; 1 (S, G) entry

 

 (*, 225.1.1.1)

     RP: 10.1.1.1 (local)

     Protocol: pim-sm, Flag: WC

     UpTime: 00:15:04

     Upstream interface: Register

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface100

             Protocol: igmp, UpTime: 00:15:04, Expires: -

 

 (10.110.5.100, 225.1.1.1)

     RP: 10.1.1.1 (local)

     Protocol: pim-sm, Flag: SPT 2MSDP ACT

     UpTime: 00:46:28

     Upstream interface: Vlan-interface103

         Upstream neighbor: 10.110.2.2

         RPF prime neighbor: 10.110.2.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface100

             Protocol: pim-sm, UpTime:  - , Expires:  -

# 查看Switch D上的PIM路由的信息。

[SwitchD] display pim routing-table

Switch D上沒有信息輸出。

Host A離開組播組G,Source 1也停止向組播組G發送組播數據。當Source 210.110.6.100/24)開始向組播組G發送組播信息時,Host B加入組播組G。通過比較Switch B與Switch D上PIM路由的顯示信息,可知當前的有效RP為Switch D:Source 2向Switch D注冊,Host B向Switch D加入。

# 查看Switch B上的PIM路由的信息。

[SwitchB] display pim routing-table

Switch B上沒有信息輸出。

# 查看Switch D上的PIM路由的信息。

[SwitchD] display pim routing-table

VPN-Instance: public net

 Total 1 (*, G) entry; 1 (S, G) entry

 

 (*, 225.1.1.1)

     RP: 10.1.1.1 (local)

     Protocol: pim-sm, Flag: WC

     UpTime: 00:12:07

     Upstream interface: Register

         Upstream neighbor: NULL

         RPF prime neighbor: NULL

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface200

             Protocol: igmp, UpTime: 00:12:07, Expires: -

 

 (10.110.6.100, 225.1.1.1)

     RP: 10.1.1.1 (local)

     Protocol: pim-sm, Flag: SPT 2MSDP ACT

     UpTime: 00:40:22

     Upstream interface: Vlan-interface104

         Upstream neighbor: 10.110.4.2

         RPF prime neighbor: 10.110.4.2

     Downstream interface(s) information:

     Total number of downstreams: 1

         1: Vlan-interface200

             Protocol: pim-sm, UpTime:  - , Expires:  -

1.7.4  SA消息過濾機製配置舉例

1. 組網需求

·     網絡中存在三個PIM-SM域,各域內部以及域之間均運行OSPF協議以提供單播路由;

·     將Switch A、Switch C和Switch D各自的Loopback0接口分別配置為各自PIM-SM域的C-BSR和C-RP;

·     分別在Switch A與Switch C、Switch C與Switch D之間建立MSDP對等體關係;

·     組播源Source 1向組播組225.1.1.0/30和226.1.1.0/30發送組播數據,組播源Source 2向組播組227.1.1.0/30發送組播數據;

·     通過配置SA消息過濾規則,使接收者Host A和Host B隻能接收發往組播組225.1.1.0/30和226.1.1.0/30的組播數據,而Host C則隻能接收發往組播組226.1.1.0/30和227.1.1.0/30的組播數據。

2. 組網圖

圖1-8 SA消息過濾機製配置組網圖

設備

接口

IP地址

設備

接口

IP地址

Source 1

-

10.110.3.100/24

Switch C

Vlan-int300

10.110.4.1/24

Source 2

-

10.110.6.100/24

 

Vlan-int104

10.110.5.1/24

Switch A

Vlan-int100

10.110.1.1/24

 

Vlan-int101

192.168.1.2/24

 

Vlan-int102

10.110.2.1/24

 

Vlan-int103

192.168.2.2/24

 

Vlan-int101

192.168.1.1/24

 

Loop0

2.2.2.2/32

 

Loop0

1.1.1.1/32

Switch D

Vlan-int400

10.110.6.1/24

Switch B

Vlan-int200

10.110.3.1/24

 

Vlan-int500

10.110.7.1/24

 

Vlan-int102

10.110.2.2/24

 

Vlan-int104

10.110.5.2/24

 

Vlan-int103

192.168.2.1/24

 

Loop0

3.3.3.3/32

 

3. 配置步驟

配置IP地址和單播路由協議

請按照圖1-8配置各接口的IP地址和掩碼,具體配置過程略。

配置各交換機之間采用OSPF協議進行互連,確保PIM-SM域內部以及各PIM-SM域之間在網絡層互通,並且各交換機之間能夠借助單播路由協議實現動態路由更新,具體配置過程略。

使能IP組播路由,使能PIM-SM和IGMP,並配置BSR的服務邊界

# 在Switch A上使能IP組播路由,在各接口上使能PIM-SM,並在主機側接口Vlan-interface100上使能IGMP。

<SwitchA> system-view

[SwitchA] multicast routing-enable

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] igmp enable

[SwitchA-Vlan-interface100] pim sm

[SwitchA-Vlan-interface100] quit

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] pim sm

[SwitchA-Vlan-interface101] quit

[SwitchA] interface vlan-interface 102

[SwitchA-Vlan-interface102] pim sm

[SwitchA-Vlan-interface102] quit

[SwitchA] interface loopback 0

[SwitchA-LoopBack0] pim sm

[SwitchA-LoopBack0] quit

Switch B、Switch C和Switch D上的配置與Switch A相似,配置過程略。

# 在Switch C上配置BSR的服務邊界。

[SwitchC] interface vlan-interface 101

[SwitchC-Vlan-interface101] pim bsr-boundary

[SwitchC-Vlan-interface101] quit

[SwitchC] interface vlan-interface 103

[SwitchC-Vlan-interface103] pim bsr-boundary

[SwitchC-Vlan-interface103] quit

[SwitchC] interface vlan-interface 104

[SwitchC-Vlan-interface104] pim bsr-boundary

[SwitchC-Vlan-interface104] quit

Switch A、Switch B和Switch D上的配置與Switch C相似,配置過程略。

配置C-BSR和C-RP的位置

# 在Switch A上將Loopback0接口配置為C-BSR和C-RP。

[SwitchA] pim

[SwitchA-pim] c-bsr loopback 0

[SwitchA-pim] c-rp loopback 0

[SwitchA-pim] quit

Switch C和Switch D上的配置與Switch A相似,配置過程略。

配置MSDP對等體

# 在Switch A上配置MSDP對等體。

[SwitchA] msdp

[SwitchA-msdp] peer 192.168.1.2 connect-interface vlan-interface 101

[SwitchA-msdp] quit

# 在Switch C上配置MSDP對等體。

[SwitchC] msdp

[SwitchC-msdp] peer 192.168.1.1 connect-interface vlan-interface 101

[SwitchC-msdp] peer 10.110.5.2 connect-interface vlan-interface 104

[SwitchC-msdp] quit

# 在Switch D上配置MSDP對等體。

[SwitchD] msdp

[SwitchD-msdp] peer 10.110.5.1 connect-interface vlan-interface 104

[SwitchD-msdp] quit

配置SA消息過濾規則

# 在Switch C上配置不向Switch D轉發有關(Source 1,225.1.1.0/30)的SA消息。

[SwitchC] acl number 3001

[SwitchC-acl-adv-3001] rule deny ip source 10.110.3.100 0 destination 225.1.1.0 0.0.0.3

[SwitchC-acl-adv-3001] rule permit ip source any destination any

[SwitchC-acl-adv-3001] quit

[SwitchC] msdp

[SwitchC-msdp] peer 10.110.5.2 sa-policy export acl 3001

[SwitchC-msdp] quit

# 在Switch D上配置不創建有關Source 2的SA消息。

[SwitchD] acl number 2001

[SwitchD-acl-basic-2001] rule deny source 10.110.6.100 0

[SwitchD-acl-basic-2001] quit

[SwitchD] msdp

[SwitchD-msdp] import-source acl 2001

[SwitchD-msdp] quit

檢驗配置效果

通過使用display msdp sa-cache命令可以查看交換機上SA緩存中的(S,G)表項信息。例如:

# 查看Switch C上SA緩存中的(S,G)表項信息。

[SwitchC] display msdp sa-cache

MSDP Source-Active Cache Information of VPN-Instance: public net

MSDP Total Source-Active Cache - 8 entries

 MSDP matched 8 entries

 

(Source, Group)              Origin RP       Pro  AS     Uptime   Expires

(10.110.3.100, 225.1.1.0)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 225.1.1.1)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 225.1.1.2)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 225.1.1.3)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 226.1.1.0)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 226.1.1.1)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 226.1.1.2)    1.1.1.1         ?    ?      02:03:30 00:05:31

(10.110.3.100, 226.1.1.3)    1.1.1.1         ?    ?      02:03:30 00:05:31

# 查看Switch D上SA緩存中的(S,G)表項信息。

[SwitchD] display msdp sa-cache

MSDP Source-Active Cache Information of VPN-Instance: public net

MSDP Total Source-Active Cache - 4 entries

 MSDP matched 4 entries

 

(Source, Group)              Origin RP       Pro  AS     Uptime   Expires

(10.110.3.100, 226.1.1.0)    1.1.1.1         ?    ?      00:32:53 00:05:07

(10.110.3.100, 226.1.1.1)    1.1.1.1         ?    ?      00:32:53 00:05:07

(10.110.3.100, 226.1.1.2)    1.1.1.1         ?    ?      00:32:53 00:05:07

(10.110.3.100, 226.1.1.3)    1.1.1.1         ?    ?      00:32:53 00:05:07

1.8  常見配置錯誤舉例

1.8.1  MSDP對等體一直處於down狀態

1. 故障現象

配置了MSDP對等體,但其狀態一直顯示為down。

2. 分析

·     所配置的本地接口地址與MSDP對等體地址之間,建立起基於TCP連接的MSDP對等體關係;

·     如果本地接口地址與對端設備上所配置的MSDP對等體地址不一致,TCP連接就不會建立起來;

·     如果兩個MSDP對等體之間沒有路由,TCP連接也不會建立起來。

3. 處理過程

檢查各設備之間的路由是否通達。通過命令display ip routing-table查看各設備之間單播路由是否正確。

檢查將成為MSDP對等體的兩個設備間是否存在到達對方的單播路由。

檢查MSDP對等體之間的接口地址是否匹配。通過命令display current-configuration查看本地接口地址是否與對端MSDP對等體地址一致,應確保一致。

1.8.2  設備SA緩存中沒有SA表項

1. 故障現象

MSDP沒有將(S,G)轉發項通過SA消息發送出去。

2. 分析

·     命令import-source用於控製將本域的(S,G)表項通過SA消息發送給MSDP對等體。如果沒有指定參數acl-number則表示默認過濾掉所有的(S,G)表項,即不通告本域的所有(S,G)表項;

·     未配置import-source命令時,係統將發送本域的所有(S,G)信息。如果MSDP沒有將本域的(S,G)表項通過SA消息發送出去,應檢查import-source命令的配置是否正確。

3. 處理過程

檢查各設備之間的路由是否通達。通過命令display ip routing-table查看各設備之間單播路由是否正確。

檢查將成為MSDP對等體的兩個設備間是否存在到達對方的單播路由。

檢查命令import-source及其參數acl-number的配置情況,確保ACL規則能夠過濾合適的(S,G)信息。

1.8.3  Anycast RP應用中RP間互通信息異常

1. 故障現象

在Anycast RP的應用中,各RP之間沒有互相交換其本地注冊的(S,G)信息。

2. 分析

·     在Anycast RP應用中,通過將同一PIM-SM域內的RP配置為MSDP對等體,可以實現RP間的負載分擔;

·     MSDP對等體地址不能與Anycast RP地址相同,且C-BSR和C-RP必須配置在不同的設備或接口上;

·     在使用originating-rp命令進行配置後,MSDP將利用該命令所指定的接口地址替換SA消息中的RP地址;

·     當MSDP對等體對收到的SA消息進行RPF檢查時,如果發現RP地址與本地配置的RP地址相同,將拒絕接收SA消息。

3. 處理過程

檢查各設備之間的路由是否通達。通過命令display ip routing-table查看各設備之間單播路由是否正確。

檢查將成為MSDP對等體的兩個設備間是否存在到達對方的單播路由。

檢查originating-rp命令的配置情況。在Anycast RP的應用環境中,一定要配置originating-rp命令,而且originating-rp命令所指定的接口地址要與建立MSDP對等體連接的本地接口地址相同。

檢查所配置的C-BSR地址是否與Anycast RP的地址不同,應確保兩個地址不同。

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們