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

06-IP組播配置指導

目錄

04-MLD Snooping配置

本章節下載 04-MLD Snooping配置  (574.42 KB)

04-MLD Snooping配置

  錄

1 MLD Snooping配置

1.1 MLD Snooping協議簡介

1.1.1 MLD Snooping原理

1.1.2 MLD Snooping基本概念

1.1.3 MLD Snooping工作機製

1.1.4 MLD Snooping Proxying

1.1.5 協議規範

1.2 MLD Snooping配置任務簡介

1.3 配置MLD Snooping基本功能

1.3.1 配置準備

1.3.2 使能MLD Snooping

1.3.3 配置MLD Snooping版本

1.3.4 配置IPv6靜態組播MAC地址表項

1.4 配置MLD Snooping端口功能

1.4.1 配置準備

1.4.2 配置動態端口老化定時器

1.4.3 配置靜態端口

1.4.4 配置模擬主機加入

1.4.5 配置端口快速離開

1.4.6 禁止端口成為動態路由器端口

1.5 配置MLD Snooping查詢器

1.5.1 配置準備

1.5.2 使能MLD Snooping查詢器

1.5.3 配置MLD查詢和響應

1.5.4 配置MLD查詢報文源IPv6地址

1.6 配置MLD Snooping Proxying

1.6.1 配置準備

1.6.2 使能MLD Snooping Proxying

1.6.3 配置代理發送MLD報文的源IPv6地址

1.7 配置MLD Snooping策略

1.7.1 配置準備

1.7.2 配置IPv6組播組過濾器

1.7.3 配置IPv6組播數據報文源端口過濾

1.7.4 配置丟棄未知IPv6組播數據報文

1.7.5 配置MLD成員關係報告報文抑製

1.7.6 配置端口加入的IPv6組播組最大數量

1.7.7 配置IPv6組播組替換

1.7.8 配置MLD報文的802.1p優先級

1.8 MLD Snooping顯示和維護

1.9 MLD Snooping典型配置舉例

1.9.1 IPv6組策略及模擬主機加入配置舉例

1.9.2 靜態端口配置舉例

1.9.3 MLD Snooping查詢器配置舉例

1.9.4 MLD Snooping Proxying配置舉例

1.10 常見配置錯誤舉例

1.10.1 交換機不能實現二層組播

1.10.2 配置的IPv6組播組策略不生效

 


1 MLD Snooping配置

1.1  MLD Snooping協議簡介

MLD Snooping是Multicast Listener Discovery Snooping(組播偵聽者發現協議窺探)的簡稱。它是運行在二層設備上的IPv6組播約束機製,用於管理和控製IPv6組播組。

1.1.1  MLD Snooping原理

運行MLD Snooping的二層設備通過對收到的MLD報文進行分析,為端口和MAC組播地址建立起映射關係,並根據這樣的映射關係轉發IPv6組播數據。

圖1-1所示,當二層設備沒有運行MLD Snooping時,IPv6組播數據報文在二層被廣播;當二層設備運行了MLD Snooping後,已知IPv6組播組的組播數據報文不會在二層被廣播,而在二層被組播給指定的接收者。

圖1-1 二層設備運行MLD Snooping前後的對比

 

MLD Snooping通過二層組播將信息隻轉發給有需要的接收者,可以帶來以下好處:

·     減少了二層網絡中的廣播報文,節約了網絡帶寬;

·     增強了IPv6組播信息的安全性;

·     為實現對每台主機的單獨計費帶來了方便。

1.1.2  MLD Snooping基本概念

1. MLD Snooping相關端口

圖1-2所示,Router A連接組播源,在Switch A和Switch B上分別運行MLD Snooping,Host A和Host C為接收者主機(即IPv6組播組成員)。

圖1-2 MLD Snooping相關端口

 

結合圖1-2,介紹一下MLD Snooping相關的端口概念:

·     路由器端口(Router Port):交換機上朝向三層組播設備(DR或MLD查詢器)一側的端口,如Switch A和Switch B各自的GigabitEthernet1/0/1端口。交換機將本設備上的所有路由器端口都記錄在路由器端口列表中。

·     成員端口(Member Port):又稱IPv6組播組成員端口,表示交換機上朝向IPv6組播組成員一側的端口,如Switch A的GigabitEthernet1/0/2和GigabitEthernet1/0/3端口,以及Switch B的GigabitEthernet1/0/2端口。交換機將本設備上的所有成員端口都記錄在MLD Snooping轉發表中。

說明

·     本文中提到的路由器端口都是指交換機上朝向組播路由器的端口,而不是指路由器上的端口。

·     如不特別指明,本文中提到的路由器/成員端口均包括動態和靜態端口。

·     在運行了MLD Snooping的交換機上,所有收到源地址不為0::0的MLD普遍組查詢報文或IPv6 PIM Hello報文的端口都將被視為動態路由器端口。

 

2. MLD Snooping動態端口老化定時器

表1-1 MLD Snooping動態端口老化定時器

定時器

說明

超時前應收到的報文

超時後交換機的動作

動態路由器端口老化定時器

交換機為其每個動態路由器端口都啟動一個定時器,其超時時間就是動態路由器端口老化時間

源地址不為0::0的MLD普遍組查詢報文或IPv6 PIM Hello報文

將該端口從路由器端口列表中刪除

動態成員端口老化定時器

當一個端口動態加入某IPv6組播組時,交換機為該端口啟動一個定時器,其超時時間就是動態成員端口老化時間

MLD成員關係報告報文

將該端口從MLD Snooping轉發表中刪除

 

說明

MLD Snooping端口老化機製隻針對動態端口,靜態端口永不老化。

 

1.1.3  MLD Snooping工作機製

運行了MLD Snooping的交換機對不同MLD動作的具體處理方式如下:

注意

本節中所描述的增刪端口動作均隻針對動態端口,靜態端口隻能通過相應的配置進行增刪,具體步驟請參見“1.4.3  配置靜態端口”。

 

1. 普遍組查詢

MLD查詢器定期向本地網段內的所有主機與路由器(FF02::1)發送MLD普遍組查詢報文,以查詢該網段有哪些IPv6組播組的成員。

在收到MLD普遍組查詢報文時,交換機將其通過VLAN內除接收端口以外的其它所有端口轉發出去,並對該報文的接收端口做如下處理:

·     如果在路由器端口列表中已包含該動態路由器端口,則重置其老化定時器。

·     如果在路由器端口列表中尚未包含該動態路由器端口,則將其添加到路由器端口列表中,並啟動其老化定時器。

2. 報告成員關係

以下情況,主機會向MLD查詢器發送MLD成員關係報告報文:

·     當IPv6組播組的成員主機收到MLD查詢報文後,會回複MLD成員關係報告報文。

·     如果主機要加入某個IPv6組播組,它會主動向MLD查詢器發送MLD成員關係報告報文以聲明加入該IPv6組播組。

在收到MLD成員關係報告報文時,交換機將其通過VLAN內的所有路由器端口轉發出去,從該報文中解析出主機要加入的IPv6組播組地址,並對該報文的接收端口做如下處理:

·     如果不存在該IPv6組播組所對應的轉發表項,則創建轉發表項,將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;

·     如果已存在該IPv6組播組所對應的轉發表項,但其出端口列表中不包含該端口,則將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;

·     如果已存在該IPv6組播組所對應的轉發表項,且其出端口列表中已包含該動態成員端口,則重置其老化定時器。

說明

交換機不會將MLD成員關係報告報文通過非路由器端口轉發出去,因為根據主機上的MLD成員關係報告抑製機製,如果非路由器端口下還有該IPv6組播組的成員主機,則這些主機在收到該報告報文後便抑製了自身的報告,從而使交換機無法獲知這些端口下還有該IPv6組播組的成員主機。

 

3. 離開組播組

當主機離開IPv6組播組時,會通過發送MLD離開組報文,以通知組播路由器自己離開了某個IPv6組播組。當交換機從某動態成員端口上收到MLD離開組報文時,首先判斷要離開的IPv6組播組所對應的轉發表項是否存在,以及該IPv6組播組所對應轉發表項的出端口列表中是否包含該接收端口:

·     如果不存在該IPv6組播組對應的轉發表項,或者該IPv6組播組對應轉發表項的出端口列表中不包含該端口,交換機不會向任何端口轉發該報文,而將其直接丟棄;

·     如果存在該IPv6組播組對應的轉發表項,且該IPv6組播組對應轉發表項的出端口列表中包含該端口,交換機會將該報文通過VLAN內的所有路由器端口轉發出去。同時,由於並不知道該接收端口下是否還有該IPv6組播組的其它成員,所以交換機不會立刻把該端口從該IPv6組播組所對應轉發表項的出端口列表中刪除,而是重置其老化定時器。

當MLD查詢器收到MLD離開組報文後,從中解析出主機要離開的IPv6組播組的地址,並通過接收端口向該IPv6組播組發送MLD特定組查詢報文。交換機在收到MLD特定組查詢報文後,將其通過VLAN內的所有路由器端口和該IPv6組播組的所有成員端口轉發出去。對於MLD離開組報文的接收端口(假定為動態成員端口),交換機在其老化時間內:

·     如果從該端口收到了主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下還有該IPv6組播組的成員,於是重置其老化定時器;

·     如果沒有從該端口收到主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下已沒有該IPv6組播組的成員,則在其老化時間超時後,將其從該IPv6組播組所對應轉發表項的出端口列表中刪除。

1.1.4  MLD Snooping Proxying

為了減少上遊設備收到的MLD報告報文和離開報文的數量,可以通過在邊緣設備上配置MLD Snooping Proxying(MLD Snooping代理)功能,使其能夠代理下遊主機來向上遊設備發送報告報文和離開報文。配置了MLD Snooping Proxying功能的設備稱為MLD Snooping代理設備,在其上遊設備看來,它就相當於一台主機。

說明

盡管在其上遊設備看來,MLD Snooping代理設備相當於一台主機,但主機上的MLD成員關係報告抑製機製在MLD Snooping代理設備上並不會生效。

 

圖1-3 MLD Snooping Proxying組網圖

 

圖1-3所示,作為MLD Snooping代理設備的Switch A,對其上遊的MLD查詢器Router A來說相當於一台主機,代理下遊主機向Router A發送報告報文和離開報文。

MLD Snooping代理設備對MLD報文的處理方式如表1-2所示。

表1-2 MLD Snooping代理設備對MLD報文的處理方式

MLD報文類型

處理方式

普遍組查詢報文

收到普遍組查詢報文後,向本VLAN內除接收端口以外的所有端口轉發;同時根據本地維護的組成員關係生成報告報文,並向所有路由器端口發送

特定組查詢報文

收到針對某IPv6組播組的特定組查詢報文時,若該組對應的轉發表項中還有成員端口,則向所有路由器端口回複該組的報告報文

報告報文

從某端口收到某IPv6組播組的報告報文時,若已存在該組對應的轉發表項,且其出端口列表中已包含該動態成員端口,則重置其老化定時器;若已存在該組對應的轉發表項,但其出端口列表中不包含該端口,則將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;若尚不存在該組對應的轉發表項,則創建轉發表項,將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器,然後向所有路由器端口發送該組的報告報文

離開報文

從某端口收到某IPv6組播組的離開報文後,向該端口發送針對該組的特定組查詢報文。隻有當刪除某IPv6組播組對應轉發表項中的最後一個成員端口時,才會向所有路由器端口發送該組的離開報文

 

1.1.5  協議規範

與MLD Snooping相關的協議規範有:

·     RFC 4541:Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches

1.2  MLD Snooping配置任務簡介

表1-3 MLD Snooping配置任務簡介

配置任務

說明

詳細配置

配置MLD Snooping基本功能

使能MLD Snooping

必選

1.3.2 

配置MLD Snooping版本

可選

1.3.3 

配置IPv6靜態組播MAC地址表項

可選

1.3.4 

配置MLD Snooping端口功能

配置動態端口老化定時器

可選

1.4.2 

配置靜態端口

可選

1.4.3 

配置模擬主機加入

可選

1.4.4 

配置端口快速離開

可選

1.4.5 

禁止端口成為動態路由器端口

可選

1.4.6 

配置MLD Snooping查詢器

使能MLD Snooping查詢器

可選

1.5.2 

配置MLD查詢和響應

可選

1.5.3 

配置MLD查詢報文源IPv6地址

可選

1.5.4 

配置MLD Snooping Proxying

使能MLD Snooping Proxying

可選

1.6.2 

配置代理發送MLD報文的源IPv6地址

可選

1.6.3 

配置MLD Snooping策略

配置IPv6組播組過濾器

可選

1.7.2 

配置IPv6組播數據報文源端口過濾

可選

1.7.3 

配置丟棄未知IPv6組播數據報文

可選

1.7.4 

配置MLD成員關係報告報文抑製

可選

1.7.5 

配置端口加入的IPv6組播組最大數量

可選

1.7.6 

配置IPv6組播組替換

可選

1.7.7 

配置MLD報文的802.1p優先級

可選

1.7.8 

 

說明

對於MLD Snooping的相關配置來說:

·     MLD-Snooping視圖下的配置對所有VLAN都有效,VLAN視圖下的配置隻對當前VLAN有效。對於某VLAN來說,優先采用該VLAN視圖下的配置,隻有當在該VLAN視圖下沒有進行配置時,才采用MLD-Snooping視圖下的相應配置。

·     MLD-Snooping視圖下的配置對所有端口都有效;二層以太網端口視圖下的配置隻對當前端口有效;二層聚合接口視圖下的配置隻對當前接口有效;端口組視圖下的配置對當前端口組中的所有端口有效。對於某端口來說,優先采用二層以太網端口視圖、二層聚合接口視圖或端口組視圖下的配置,隻有當在上述視圖下沒有進行配置時,才采用MLD-Snooping視圖下的相應配置。

·     二層聚合接口與其各成員端口上的配置互不影響,且成員端口上的配置隻有當該端口退出聚合組後才會生效,二層聚合接口上的配置也不會參與聚合計算。

 

1.3  配置MLD Snooping基本功能

1.3.1  配置準備

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

·     配置相應VLAN

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

·     MLD Snooping的版本

1.3.2  使能MLD Snooping

表1-4 使能MLD Snooping

操作

命令

說明

進入係統視圖

system-view

-

全局使能MLD Snooping,並進入MLD-Snooping視圖

mld-snooping

必選

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

退回係統視圖

quit

-

進入VLAN視圖

vlan vlan-id

-

在VLAN內使能MLD Snooping

mld-snooping enable

必選

缺省情況下,VLAN內的MLD Snooping處於關閉狀態

 

說明

·     在VLAN內使能MLD Snooping之前,必須先在係統視圖下全局使能MLD Snooping,否則將無法在VLAN內使能MLD Snooping。

·     在VLAN內使能MLD Snooping之後,不允許在該VLAN所對應的VLAN接口上再使能MLD和IPv6 PIM,反之亦然。

·     在指定VLAN內使能了MLD Snooping之後,該功能隻在屬於該VLAN的端口上生效。

 

1.3.3  配置MLD Snooping版本

配置MLD Snooping的版本,實際上就是配置MLD Snooping可以處理的MLD報文的版本:

·     當MLD Snooping的版本為1時,MLD Snooping能夠對MLDv1的報文進行處理,對MLDv2的報文則不進行處理,而是在VLAN內將其廣播;

·     當MLD Snooping的版本為2時,MLD Snooping能夠對MLDv1和MLDv2的報文進行處理。

表1-5 配置MLD Snooping版本

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置MLD Snooping的版本

mld-snooping version version-number

可選

缺省情況下,MLD Snooping的版本為1

 

注意

當MLD Snooping的版本由版本2切換到版本1時,係統將清除所有通過動態加入的MLD Snooping轉發表項;對於在版本2下通過手工配置而靜態加入的MLD Snooping轉發表項,則分為以下兩種情況進行不同的處理:

·     如果配置的僅僅是靜態加入IPv6組播組,而沒有指定IPv6組播源,則這些轉發表項將不會被清除;

·     如果配置的是指定了IPv6組播源的靜態加入IPv6組播源組,則這些轉發表項將會被清除,並且當再次切換回版本2時,這些轉發表項將被重新恢複。

有關靜態加入的詳細配置,請參見“1.4.3  配置靜態端口”。

 

1.3.4  配置IPv6靜態組播MAC地址表項

在二層組播中,除了可通過二層IPv6組播協議(如MLD Snooping)動態建立IPv6組播MAC地址表項外,還可以通過手工方式配置IPv6組播MAC地址表項,將端口與IPv6組播MAC地址進行靜態綁定,以便靈活控製IPv6組播信息送達的目的端口。

1. 係統視圖下配置IPv6靜態組播MAC地址表項

表1-6 係統視圖下配置IPv6靜態組播MAC地址表項

操作

命令

說明

進入係統視圖

system-view

-

配置靜態組播MAC地址表項

mac-address multicast mac-address interface interface-list vlan vlan-id

必選

缺省情況下,沒有配置靜態組播MAC地址表項

 

2. 接口視圖下配置IPv6靜態組播MAC地址表項

表1-7 接口視圖下配置IPv6靜態組播MAC地址表項

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入二層以太網端口或二層聚合接口視圖後,下麵進行的配置隻在當前接口生效;進入端口組視圖後,下麵進行的配置將在端口組的所有接口生效

進入端口組視圖

port-group manual port-group-name

配置靜態組播MAC地址表項

mac-address multicast mac-address vlan vlan-id

必選

缺省情況下,沒有配置靜態組播MAC地址表項

 

說明

·     有關mac-address multicast命令的詳細介紹,請參見“IP組播命令參考”中的“IGMP Snooping配置命令”。

·     係統視圖下的配置對指定接口有效,而接口視圖下的配置隻對當前接口(或當前端口組內的所有接口)有效。

·     可手工配置的IPv6組播MAC地址表項為除3333-xxxx-xxxx以外的任意合法的IPv6組播MAC地址,其中x代表0~F的任意一個十六進製數。

 

1.4  配置MLD Snooping端口功能

1.4.1  配置準備

在配置MLD Snooping端口功能之前,需完成以下任務:

·     在VLAN內使能MLD Snooping

·     配置相應端口組

在配置MLD Snooping端口功能之前,需準備以下數據:

·     動態路由器端口老化時間

·     動態成員端口老化時間

·     IPv6組播組和IPv6組播源的地址

1.4.2  配置動態端口老化定時器

對於動態路由器端口,如果在其老化時間超時前沒有收到MLD普遍組查詢報文或者IPv6 PIM Hello報文,交換機將把該端口從路由器端口列表中刪除。

對於動態成員端口,如果在其老化時間超時前沒有收到該IPv6組播組的MLD成員關係報告報文,交換機將把該端口從該IPv6組播組所對應轉發表的出端口列表中刪除。

如果IPv6組播組成員的變動比較頻繁,可以把動態成員端口老化時間設置小一些,反之亦然。

1. 全局配置動態端口老化定時器

表1-8 全局配置動態端口老化定時器

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

配置動態路由器端口老化時間

router-aging-time interval

可選

缺省情況下,動態路由器端口的老化時間為260秒

配置動態成員端口老化時間

host-aging-time interval

可選

缺省情況下,動態成員端口的老化時間為260秒

 

2. 在VLAN內配置動態端口老化定時器

表1-9 在VLAN內配置動態端口老化定時器

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置動態路由器端口老化時間

mld-snooping router-aging-time interval

可選

缺省情況下,動態路由器端口的老化時間為260秒

配置動態成員端口老化時間

mld-snooping host-aging-time interval

可選

缺省情況下,動態成員端口的老化時間為260秒

 

1.4.3  配置靜態端口

如果某端口所連接的主機需要固定接收發往某IPv6組播組的IPv6組播數據,可以配置該端口靜態加入該IPv6組播組,成為靜態成員端口。

可以通過將交換機上的端口配置為靜態路由器端口,從而使交換機上所有收到的IPv6組播數據可以通過該端口被轉發出去。

表1-10 配置靜態端口

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

配置靜態成員端口

mld-snooping static-group ipv6-group-address [ source-ip ipv6-source-address ] vlan vlan-id

必選

缺省情況下,端口不是靜態成員端口

配置靜態路由器端口

mld-snooping static-router-port vlan vlan-id

必選

缺省情況下,端口不是靜態路由器端口

 

說明

·     隻有指定了有效的IPv6組播源地址,且MLD Snooping的版本為2時,配置端口靜態加入IPv6組播源組才會有效。

·     靜態成員端口不會對MLD查詢器發出的查詢報文進行響應;在配置靜態成員端口,即配置或取消靜態加入IPv6組播組或組播源組時,端口也不會主動發送MLD成員關係報告報文或MLD離開組報文。

·     靜態成員端口和靜態路由器端口都不會老化,隻能通過相應的undo命令刪除。

 

1.4.4  配置模擬主機加入

通常情況下,運行MLD的主機會對MLD查詢器發出的查詢報文進行響應。如果主機由於某種原因無法響應,就可能導致組播路由器認為該網段沒有該IPv6組播組的成員,從而取消相應的轉發路徑。

為避免這種情況的發生,可以將交換機的端口配置成為IPv6組播組成員(即配置模擬主機加入)。當收到MLD查詢報文時由模擬主機進行響應,從而保證該交換機能夠繼續收到IPv6組播報文。

模擬主機加入功能的實現原理如下:

·     在某端口上使能模擬主機加入功能時,交換機會通過該端口主動發送一個MLD成員關係報告報文;

·     在某端口上使能了模擬主機加入功能後,當收到MLD普遍組查詢報文時,交換機會通過該端口響應一個MLD成員關係報告報文;

·     在某端口上關閉模擬主機加入功能時,交換機會通過該端口發送一個MLD離開組報文。

表1-11 配置模擬主機加入

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

配置模擬主機加入IPv6組播組或組播源組

mld-snooping host-join ipv6-group-address [ source-ip ipv6-source-address ] vlan vlan-id

必選

缺省情況下,沒有配置模擬主機加入IPv6組播組或組播源組

 

說明

·     每配置一次模擬主機加入,即相當於啟動了一台獨立的主機。例如,當收到MLD查詢報文時,每條配置所對應的模擬主機將分別進行響應。

·     與靜態成員端口不同,配置了模擬主機加入的端口會作為動態成員端口而參與動態成員端口的老化過程。

 

1.4.5  配置端口快速離開

端口快速離開是指當交換機從某端口收到主機發送的離開某IPv6組播組的MLD離開組報文時,直接把該端口從對應轉發表項的出端口列表中刪除。此後,當交換機收到對該IPv6組播組的MLD特定組查詢報文時,交換機將不再向該端口轉發。

在交換機上,在隻連接有一個接收者的端口上,可以通過使能端口快速離開功能來節約帶寬和資源;而在連接有多個接收者的端口上,如果交換機或該端口所在的VLAN已使能了丟棄未知IPv6組播數據報文功能,則不要再使能端口快速離開功能,否則,一個接收者的離開將導致該端口下屬於同一IPv6組播組的其它接收者無法收到IPv6組播數據。

1. 全局配置端口快速離開

表1-12 全局配置端口快速離開

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

使能端口快速離開功能

fast-leave [ vlan vlan-list ]

必選

缺省情況下,端口快速離開功能處於關閉狀態

 

2. 在端口上配置端口快速離開

表1-13 在端口上配置端口快速離開

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

使能端口快速離開功能

mld-snooping fast-leave [ vlan vlan-list ]

必選

缺省情況下,端口快速離開功能處於關閉狀態

 

1.4.6  禁止端口成為動態路由器端口

目前,在IPv6組播用戶接入網絡中存在以下問題:

·     如果交換機收到了某用戶主機發來的MLD普遍組查詢報文或IPv6 PIM Hello報文,那麼該主機所在的端口就將成為動態路由器端口,從而使VLAN內的所有IPv6組播報文都會向該端口轉發,導致該用戶主機收到的IPv6組播報文失控。

·     同時,用戶主機發送MLD普遍組查詢報文或IPv6 PIM Hello報文,也會影響該接入網絡中三層設備上的IPv6組播路由協議狀態(如影響MLD查詢器或DR的選舉),嚴重時可能導致網絡中斷。

當禁止某端口成為動態路由器端口後,即使該端口收到了MLD普遍組查詢報文或IPv6 PIM Hello報文,該端口也不會成為動態路由器端口,從而能夠有效解決上述問題,提高網絡的安全性和對IPv6組播用戶的控製能力。

表1-14 禁止端口成為動態路由器端口

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

禁止端口成為動態路由器端口

mld-snooping router-port-deny [ vlan vlan-list ]

必選

缺省情況下,不禁止端口成為動態路由器端口

 

說明

本配置與靜態路由器端口的配置互不影響。

 

1.5  配置MLD Snooping查詢器

1.5.1  配置準備

在配置MLD Snooping查詢器之前,需完成以下任務:

·     在VLAN內使能MLD Snooping

在配置MLD Snooping查詢器之前,需準備以下數據:

·     發送MLD普遍組查詢報文的時間間隔

·     發送MLD特定組查詢報文的時間間隔

·     MLD普遍組查詢的最大響應時間

·     MLD普遍組查詢報文的源IPv6地址

·     MLD特定組查詢報文的源IPv6地址

1.5.2  使能MLD Snooping查詢器

在運行了MLD的IPv6組播網絡中,會有一台三層組播設備充當MLD查詢器,負責發送MLD查詢報文,使三層組播設備能夠在網絡層建立並維護IPv6組播轉發表項,從而在網絡層正常轉發IPv6組播數據。

但是,在一個沒有三層組播設備的網絡中,由於二層設備並不支持MLD,因此無法實現MLD查詢器的相關功能。為了解決這個問題,可以在二層設備上使能MLD Snooping查詢器,使二層設備能夠在數據鏈路層建立並維護IPv6組播轉發表項,從而在數據鏈路層正常轉發IPv6組播數據。

表1-15 使能MLD Snooping查詢器

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

使能MLD Snooping查詢器

mld-snooping querier

必選

缺省情況下,MLD Snooping查詢器處於關閉狀態

 

注意

盡管MLD Snooping查詢器並不參與MLD查詢器的選舉,但在運行了MLD的IPv6組播網絡中,配置MLD Snooping查詢器不但沒有實際的意義,反而可能會由於其發送的MLD普遍組查詢報文的源IPv6地址較小而影響MLD查詢器的選舉。

 

1.5.3  配置MLD查詢和響應

可以根據網絡的實際情況來修改發送MLD普遍組查詢報文的時間間隔。

在收到MLD查詢報文(包括普遍組查詢和特定組查詢)後,主機會為其所加入的每個IPv6組播組都啟動一個定時器,定時器的值在0到最大響應時間(該時間值由主機從所收到的MLD查詢報文的最大響應時間字段獲得)中隨機選定,當定時器的值減為0時,主機就會向該定時器對應的IPv6組播組發送MLD成員關係報告報文。

合理配置MLD查詢的最大響應時間,既可以使主機對MLD查詢報文做出快速響應,又可以減少由於定時器同時超時,造成大量主機同時發送報告報文而引起的網絡擁塞:

·     對於MLD普遍組查詢報文來說,通過配置MLD普遍組查詢的最大響應時間來填充其最大響應時間字段;

·     對於MLD特定組查詢報文來說,所配置的發送MLD特定組查詢報文的時間間隔將被填充到其最大響應時間字段。也就是說,MLD特定組查詢的最大響應時間從數值上與發送MLD特定組查詢報文的時間間隔相同。

1. 全局配置MLD查詢和響應

表1-16 全局配置MLD查詢和響應

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

配置MLD普遍組查詢的最大響應時間

max-response-time interval

可選

缺省情況下,MLD普遍組查詢的最大響應時間為10秒

配置發送MLD特定組查詢報文的時間間隔

last-listener-query-interval interval

可選

缺省情況下,發送MLD特定組查詢報文的時間間隔為1秒

 

2. 在VLAN內配置MLD查詢和響應

表1-17 在VLAN內配置MLD查詢和響應

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置發送MLD普遍組查詢報文的時間間隔

mld-snooping query-interval interval

可選

缺省情況下,發送MLD普遍組查詢報文的時間間隔為125秒

配置MLD普遍組查詢的最大響應時間

mld-snooping max-response-time interval

可選

缺省情況下,MLD普遍組查詢的最大響應時間為10秒

配置發送MLD特定組查詢報文的時間間隔

mld-snooping last-listener-query-interval interval

可選

缺省情況下,發送MLD特定組查詢報文的時間間隔為1秒

 

注意

應確保發送MLD普遍組查詢報文的時間間隔大於MLD普遍組查詢的最大響應時間,否則有可能造成對IPv6組播組成員的誤刪。

 

1.5.4  配置MLD查詢報文源IPv6地址

可以通過此項配置改變MLD查詢報文的源IPv6地址。

表1-18 配置MLD查詢報文源IPv6地址

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置MLD普遍組查詢報文源IPv6地址

mld-snooping general-query source-ip { ipv6-address | current-interface }

可選

缺省情況下,MLD普遍組查詢報文的源IPv6地址為FE80::02FF:FFFF:FE00:0001

配置MLD特定組查詢報文源IPv6地址

mld-snooping special-query source-ip { ipv6-address | current-interface }

可選

缺省情況下,MLD特定組查詢報文的源IPv6地址為FE80::02FF:FFFF:FE00:0001

 

注意

MLD查詢報文源IPv6地址的改變可能會影響網段內MLD查詢器的選舉。

 

1.6  配置MLD Snooping Proxying

1.6.1  配置準備

在配置MLD Snooping Proxying之前,需完成以下任務:

·     在VLAN內使能MLD Snooping

在配置MLD Snooping Proxying之前,需準備以下數據:

·     代理發送MLD報告報文的源IPv6地址

·     代理發送MLD離開報文的源IPv6地址

1.6.2  使能MLD Snooping Proxying

當在有組播需求的VLAN內使能了MLD Snooping代理功能後,該設備就成為該VLAN內的MLD Snooping代理設備。

表1-19 使能MLD Snooping Proxying

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

在VLAN內使能MLD Snooping代理功能

mld-snooping proxying enable

必選

缺省情況下,VLAN內的MLD Snooping代理功能處於關閉狀態

 

1.6.3  配置代理發送MLD報文的源IPv6地址

通過本配置可以改變代理發送的MLD報告報文和離開報文的源IPv6地址。

表1-20 配置代理發送MLD報文的源IPv6地址

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置代理發送MLD報告報文的源IPv6地址

mld-snooping report source-ip { ipv6-address | current-interface }

必選

缺省情況下,代理發送MLD報告報文的源IPv6地址為FE80::02FF:FFFF:FE00:0001

配置代理發送MLD離開報文的源IPv6地址

mld-snooping done source-ip { ipv6-address | current-interface }

缺省情況下,代理發送MLD離開報文的源IPv6地址為FE80::02FF:FFFF:FE00:0001

 

1.7  配置MLD Snooping策略

1.7.1  配置準備

在配置MLD Snooping策略之前,需完成以下任務:

·     在VLAN內使能MLD Snooping

在配置MLD Snooping策略之前,需準備以下數據:

·     IPv6組播組過濾的IPv6 ACL規則

·     允許端口通過的IPv6組播組最大數量

·     MLD報文的802.1p優先級

1.7.2  配置IPv6組播組過濾器

在使能了MLD Snooping的交換機上,通過配置IPv6組播組過濾器,可以限製用戶對組播節目的點播。

在實際應用中,當用戶點播某個組播節目時,主機會發起一個MLD成員關係報告報文,該報文到達交換機後,進行ACL檢查:如果該接收端口可以加入這個IPv6組播組,則將其列入到MLD Snooping轉發表中;否則交換機就丟棄該報文。這樣,未通過ACL檢查的IPv6組播數據就不會送到該端口,從而達到控製用戶點播組播節目的目的。

1. 全局配置IPv6組播組過濾器

表1-21 全局配置IPv6組播組過濾器

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

配置IPv6組播組過濾器

group-policy acl6-number [ vlan vlan-list ]

必選

缺省情況下,沒有配置全局IPv6組播組過濾器,即各VLAN內主機可以加入任意合法的IPv6組播組

 

2. 在端口上配置IPv6組播組過濾器

表1-22 在端口上配置IPv6組播組過濾器

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

配置IPv6組播組過濾器

mld-snooping group-policy acl6-number [ vlan vlan-list ]

必選

缺省情況下,端口上沒有配置IPv6組播組過濾器,即該端口下的主機可以加入任意合法的IPv6組播組

 

1.7.3  配置IPv6組播數據報文源端口過濾

通過配置IPv6組播數據報文源端口過濾功能,可以允許或禁止端口作為組播源端口:

·     使能了該功能後,端口下不能連接組播源,因為該端口將過濾掉所有的IPv6組播數據報文(但允許IPv6組播協議報文通過),隻能連接IPv6組播數據接收者;

·     關閉了該功能後,端口下既可以連接組播源,也可以連接IPv6組播數據接收者。

1. 全局配置IPv6組播數據報文源端口過濾

表1-23 全局配置IPv6組播數據報文源端口過濾

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

使能IPv6組播數據報文源端口過濾功能

source-deny port interface-list

必選

缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態

 

2. 在端口上配置IPv6組播數據報文源端口過濾

表1-24 在端口上配置IPv6組播數據報文源端口過濾

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入二層以太網端口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

使能IPv6組播數據報文源端口過濾功能

mld-snooping source-deny

必選

缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態

 

1.7.4  配置丟棄未知IPv6組播數據報文

未知IPv6組播數據報文是指在MLD Snooping轉發表中不存在對應轉發表項的那些IPv6組播數據報文,當交換機收到發往未知組播組的IPv6報文時,IPv6數據報文會在VLAN內廣播,這樣會占用大量的網絡帶寬,影響轉發效率。

此時用戶可以在交換機上啟動丟棄未知IPv6組播數據報文功能,當交換機收到未知IPv6組播數據報文時,隻向其路由器端口轉發,不在VLAN內廣播。如果交換機沒有路由器端口,IPv6數據報文會被丟棄,不再轉發。

表1-25 在VLAN內配置丟棄未知IPv6組播數據報文

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

使能丟棄未知IPv6組播數據報文功能

mld-snooping drop-unknown

必選

缺省情況下,丟棄未知IPv6組播數據報文的功能處於關閉狀態,即對未知IPv6組播數據報文進行廣播

 

1.7.5  配置MLD成員關係報告報文抑製

當二層設備收到來自某IPv6組播組成員的MLD成員關係報告報文時,會將該報文轉發給與其直連的三層設備。這樣,當二層設備上存在屬於某IPv6組播組的多個成員時,與其直連的三層設備會收到這些成員發送的相同MLD成員關係報告報文。

當使能了MLD成員關係報告報文抑製功能後,在一個查詢間隔內二層設備隻會把收到的某IPv6組播組內的第一個MLD成員關係報告報文轉發給三層設備,而不繼續向三層設備轉發來自同一組播組的其它MLD成員關係報告報文,這樣可以減少網絡中的報文數量。

表1-26 配置MLD成員關係報告報文抑製

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

使能MLD成員關係報告報文抑製功能

report-aggregation

可選

缺省情況下,MLD成員關係報告報文抑製功能處於使能狀態

 

注意

在MLD Snooping代理設備上,不論是否使能了MLD成員關係報告報文抑製功能,隻要存在某IPv6組播組對應的轉發表項,就會將從下遊收到的針對該組的報告報文都抑製掉。

 

1.7.6  配置端口加入的IPv6組播組最大數量

通過配置允許端口加入的IPv6組播組的最大數量,可以限製用戶點播組播節目的數量,從而控製了端口上的數據流量。

表1-27 配置端口加入的IPv6組播組最大數量

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

配置允許端口加入的IPv6組播組最大數量

mld-snooping group-limit limit [ vlan vlan-list ]

可選

缺省情況下,允許端口加入的IPv6組播組最大數量為200

 

說明

在配置允許端口加入的IPv6組播組最大數量時,如果當前端口上的IPv6組播組數量已超過配置值,係統將把該端口相關的所有轉發表項從MLD Snooping轉發表中刪除,該端口下的主機都需要重新加入IPv6組播組,直至該端口上的IPv6組播組數量達到限製值為止。其中,如果該端口已配置為靜態成員端口,係統會將靜態成員端口的配置重新生效一次;如果在該端口上配置了模擬主機加入,係統在收到模擬主機發來的報告報文之後才會重新建立相應的轉發表項。

 

1.7.7  配置IPv6組播組替換

由於某些特殊的原因,當前交換機或端口上通過的IPv6組播組數目有可能會超過交換機或該端口的限定;另外,在某些特定的應用中,交換機上新加入的IPv6組播組需要自動替換已存在的IPv6組播組(一個典型的應用就是“頻道切換”,即用戶通過加入一個新的IPv6組播組就能完成離開原IPv6組播組並切換到新IPv6組播組的動作)。

針對以上情況,可以在交換機或者某些端口上使能IPv6組播組替換功能。當交換機或端口上加入的IPv6組播組數量已達到限定值時:

·     若使能了IPv6組播組替換功能,則新加入的IPv6組播組會自動替代已存在的IPv6組播組,替代規則是替代IPv6地址最小的IPv6組播組;

·     若沒有使能IPv6組播組替換功能,則自動丟棄新的MLD成員關係報告報文。

1. 全局配置IPv6組播組替換

表1-28 全局配置IPv6組播組替換

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

使能IPv6組播組替換功能

overflow-replace [ vlan vlan-list ]

必選

缺省情況下,IPv6組播組替換功能處於關閉狀態

 

2. 在端口上配置IPv6組播組替換

表1-29 在端口上配置IPv6組播組替換

操作

命令

說明

進入係統視圖

system-view

-

進入相應視圖

進入以太網或二層聚合接口視圖

interface interface-type interface-number

二者必選其一

進入端口組視圖

port-group manual port-group-name

使能IPv6組播組替換功能

mld-snooping overflow-replace [ vlan vlan-list ]

必選

缺省情況下,IPv6組播組替換功能處於關閉狀態

 

注意

在使能IPv6組播組替換功能之前,必須首先配置端口通過的IPv6組播組的最大數量(具體配置過程請參見“1.7.6  配置端口加入的IPv6組播組最大數量”),否則IPv6組播組替換功能將不能生效。

 

1.7.8  配置MLD報文的802.1p優先級

可以通過本配置來改變MLD報文的802.1p優先級。當交換機的出端口發生擁塞時,交換機通過識別報文的802.1p優先級,優先發送優先級較高的報文。

1. 全局配置MLD報文的802.1p優先級

表1-30 全局配置MLD報文的802.1p優先級

操作

命令

說明

進入係統視圖

system-view

-

進入MLD-Snooping視圖

mld-snooping

-

配置MLD報文的802.1p優先級

dot1p-priority priority-number

必選

缺省情況下,MLD報文的802.1p優先級為0

 

2. 在VLAN內配置MLD報文的802.1p優先級

表1-31 在VLAN內配置MLD報文的802.1p優先級

操作

命令

說明

進入係統視圖

system-view

-

進入VLAN視圖

vlan vlan-id

-

配置MLD報文的802.1p優先級

mld-snooping dot1p-priority priority-number

必選

缺省情況下,MLD報文的802.1p優先級為0

 

1.8  MLD Snooping顯示和維護

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

在用戶視圖下執行reset命令可以清除IPv6組播組信息。

表1-32 MLD Snooping顯示和維護

配置

命令

查看MLD Snooping組播組的信息

display mld-snooping group [ vlan vlan-id ] [ slot slot-number ] [ verbose ] [ | { begin | exclude | include } regular-expression ]

查看MLD Snooping監聽到的MLD報文的統計信息

display mld-snooping statistics [ | { begin | exclude | include } regular-expression ]

查看IPv6靜態組播MAC地址表信息

display mac-address [ mac-address [ vlan vlan-id ] | [ multicast ] [ vlan vlan-id ] [ count ] ] [ | { begin | exclude | include } regular-expression ]

清除動態加入的MLD Snooping組記錄

reset mld-snooping group { ipv6-group-address | all } [ vlan vlan-id ]

清除MLD Snooping監聽到的所有MLD報文的統計信息

reset mld-snooping statistics

 

說明

·     reset mld-snooping group命令隻對使能了MLD Snooping的VLAN有效,而對VLAN接口上使能了MLD的VLAN無效。

·     reset mld-snooping group隻對動態加入的MLD Snooping組有效,對靜態加入的MLD Snooping組無效。

·     有關display mac-address multicast命令的詳細介紹,請參見“IP組播命令參考”中的“IGMP Snooping配置命令”。

 

1.9  MLD Snooping典型配置舉例

1.9.1  IPv6組策略及模擬主機加入配置舉例

1. 組網需求

·     如圖1-4所示,Router A通過GigabitEthernet1/0/2接口連接IPv6組播源(Source),通過GigabitEthernet1/0/1接口連接Switch A;

·     Router A上運行MLDv1,Switch A上運行版本1的MLD Snooping,並由Router A充當MLD查詢器;

·     通過配置,使連接在Switch A上的接收者(Receiver)Host A和Host B隻能接收發往IPv6組播組FF1E::101的IPv6組播數據;

·     通過配置,使Host A和Host B即使由於某種意外而臨時中斷接收IPv6組播數據時,發往IPv6組播組FF1E::101的IPv6組播數據也能夠不間斷地通過Switch A的接口GigabitEthernet1/0/3和GigabitEthernet1/0/4轉發出去。

2. 組網圖

圖1-4 IPv6組策略及模擬主機加入配置組網圖

 

3. 配置步驟

(1)     使能IPv6轉發功能,並配置IPv6地址

使能各設備的IPv6轉發功能,並按照圖1-4配置各接口的IPv6地址和前綴長度,具體配置過程略。

(2)     配置Router A

# 使能IPv6組播路由,在各接口上使能IPv6 PIM-DM,並在接口GigabitEthernet1/0/1上使能MLD。

<RouterA> system-view

[RouterA] multicast ipv6 routing-enable

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] mld enable

[RouterA-GigabitEthernet1/0/1] pim ipv6 dm

[RouterA-GigabitEthernet1/0/1] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim ipv6 dm

[RouterA-GigabitEthernet1/0/2] quit

(3)     配置Switch A

# 全局使能MLD Snooping。

<SwitchA> system-view

[SwitchA] mld-snooping

[SwitchA-mld-snooping] quit

# 創建VLAN 100,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並使能丟棄未知IPv6組播數據報文功能。

[SwitchA] vlan 100

[SwitchA-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/4

[SwitchA-vlan100] mld-snooping enable

[SwitchA-vlan100] mld-snooping drop-unknown

[SwitchA-vlan100] quit

# 配置IPv6組播組過濾器,以限定VLAN 100內的主機隻能加入IPv6組播組FF1E::101。

[SwitchA] acl ipv6 number 2001

[SwitchA-acl6-basic-2001] rule permit source ff1e::101 128

[SwitchA-acl6-basic-2001] quit

[SwitchA] mld-snooping

[SwitchA–mld-snooping] group-policy 2001 vlan 100

[SwitchA–mld-snooping] quit

# 在GigabitEthernet1/0/3和GigabitEthernet1/0/4上分別配置模擬主機加入IPv6組播組FF1E::101。

[SwitchA] interface gigabitethernet 1/0/3

[SwitchA-GigabitEthernet1/0/3] mld-snooping host-join ff1e::101 vlan 100

[SwitchA-GigabitEthernet1/0/3] quit

[SwitchA] interface gigabitethernet 1/0/4

[SwitchA-GigabitEthernet1/0/4] mld-snooping host-join ff1e::101 vlan 100

[SwitchA-GigabitEthernet1/0/4] quit

(4)     檢驗配置效果

# 查看Switch A上VLAN 100內MLD Snooping組播組的詳細信息。

[SwitchA] display mld-snooping group vlan 100 verbose

  Total 1 IP Group(s).

  Total 1 IP Source(s).

  Total 1 MAC Group(s).

 

  Port flags: D-Dynamic port, S-Static port, C-Copy port

  Subvlan flags: R-Real VLAN, C-Copy VLAN

  Vlan(id):100.

    Total 1 IP Group(s).

    Total 1 IP Source(s).

    Total 1 MAC Group(s).

    Router port(s):total 1 port(s).

            GE1/0/1                (D) ( 00:01:30 )

    IP group(s):the following ip group(s) match to one mac group.

      IP group address:FF1E::101

        (::, FF1E::101):

          Attribute:    Host Port

          Host port(s):total 2 port(s).

            GE1/0/3                (D) ( 00:03:23 )

            GE1/0/4                (D) ( 00:04:10 )

    MAC group(s):

      MAC group address:3333-0000-0101

          Host port(s):total 2 port(s).

            GE1/0/3

            GE1/0/4

由此可見,Switch A上的端口GigabitEthernet1/0/3和GigabitEthernet1/0/4已經加入了IPv6組播組FF1E::101。

1.9.2  靜態端口配置舉例

1. 組網需求

·     如圖1-5所示,Router A通過GigabitEthernet1/0/2接口連接IPv6組播源(Source),通過GigabitEthernet1/0/1接口連接Switch A;

·     Router A上運行MLDv1,Switch A、Switch B和Switch C上運行版本1的MLD Snooping,並由Router A充當MLD查詢器;

·     Host A和Host C均為IPv6組播組FF1E::101的固定接收者(Receiver),通過將Switch C上的端口GigabitEthernet1/0/3和GigabitEthernet1/0/5配置為IPv6組播組FF1E::101的靜態成員端口,可以增強IPv6組播數據在傳輸過程中的可靠性;

·     假設由於受STP等鏈路層協議的影響,為了避免出現環路,Switch A—Switch C的轉發路徑在正常情況下是阻斷的,IPv6組播數據隻能通過Switch A—Switch B—Switch C的路徑傳遞給連接在Switch C上的接收者;

·     要求通過將Switch A上連接Switch C的端口GigabitEthernet1/0/3配置為靜態路由器端口,從而保證當Switch A—Switch B—Switch C的路徑出現阻斷時,IPv6組播數據可以幾乎不間斷地通過Switch A—Switch C的新路徑傳遞給接收者。

說明

如果沒有配置靜態路由器端口,那麼當Switch A—Switch B—Switch C的路徑出現阻斷時,至少需要等待一個MLD查詢和響應周期完成後,IPv6組播數據才能通過Switch A—Switch C的新路徑傳遞給接收者,IPv6組播數據的傳輸在這個過程中將中斷。

有關STP(Spanning Tree Protocol,生成樹協議)的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“MSTP配置”。

 

2. 組網圖

圖1-5 靜態端口配置組網圖

 

3. 配置步驟

(1)     使能IPv6轉發功能,並配置IPv6地址

使能各設備的IPv6轉發功能,並按照圖1-5配置各接口的IPv6地址和前綴長度,具體配置過程略。

(2)     配置Router A

# 使能IPv6組播路由,在各接口上使能IPv6 PIM-DM,並在接口GigabitEthernet1/0/1上使能MLD。

<RouterA> system-view

[RouterA] multicast ipv6 routing-enable

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] mld enable

[RouterA-GigabitEthernet1/0/1] pim ipv6 dm

[RouterA-GigabitEthernet1/0/1] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim ipv6 dm

[RouterA-GigabitEthernet1/0/2] quit

(3)     配置Switch A

# 全局使能MLD Snooping。

<SwitchA> system-view

[SwitchA] mld-snooping

[SwitchA-mld-snooping] quit

# 創建VLAN 100,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/3添加到該VLAN中,並在該VLAN內使能MLD Snooping。

[SwitchA] vlan 100

[SwitchA-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/3

[SwitchA-vlan100] mld-snooping enable

[SwitchA-vlan100] quit

# 把GigabitEthernet1/0/3配置為靜態路由器端口。

[SwitchA] interface gigabitethernet 1/0/3

[SwitchA-GigabitEthernet1/0/3] mld-snooping static-router-port vlan 100

[SwitchA-GigabitEthernet1/0/3] quit

(4)     配置Switch B

# 全局使能MLD Snooping。

<SwitchB> system-view

[SwitchB] mld-snooping

[SwitchB-mld-snooping] quit

# 創建VLAN 100,把端口GigabitEthernet1/0/1和GigabitEthernet1/0/2添加到該VLAN中,並在該VLAN內使能MLD Snooping。

[SwitchB] vlan 100

[SwitchB-vlan100] port gigabitethernet 1/0/1 gigabitethernet 1/0/2

[SwitchB-vlan100] mld-snooping enable

[SwitchB-vlan100] quit

(5)     配置Switch C

# 全局使能MLD Snooping。

<SwitchC> system-view

[SwitchC] mld-snooping

[SwitchC-mld-snooping] quit

# 創建VLAN 100,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/5添加到該VLAN中,並在該VLAN內使能MLD Snooping。

[SwitchC] vlan 100

[SwitchC-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/5

[SwitchC-vlan100] mld-snooping enable

[SwitchC-vlan100] quit

# 分別在端口GigabitEthernet1/0/3和GigabitEthernet1/0/5上配置靜態加入IPv6組播組FF1E::101。

[SwitchC] interface Gigabitethernet 1/0/3

[SwitchC-GigabitEthernet1/0/3] mld-snooping static-group ff1e::101 vlan 100

[SwitchC-GigabitEthernet1/0/3] quit

[SwitchC] interface Gigabitethernet 1/0/5

[SwitchC-GigabitEthernet1/0/5] mld-snooping static-group ff1e::101 vlan 100

[SwitchC-GigabitEthernet1/0/5] quit

(6)     檢驗配置效果

# 查看Switch A上VLAN 100內MLD Snooping組播組的詳細信息。

[SwitchA] display mld-snooping group vlan 100 verbose

  Total 1 IP Group(s).

  Total 1 IP Source(s).

  Total 1 MAC Group(s).

 

  Port flags: D-Dynamic port, S-Static port, C-Copy port

  Subvlan flags: R-Real VLAN, C-Copy VLAN

  Vlan(id):100.

    Total 1 IP Group(s).

    Total 1 IP Source(s).

    Total 1 MAC Group(s).

    Router port(s):total 2 port(s).

            GE1/0/1                (D) ( 00:01:30 )

            GE1/0/3                (S)

    IP group(s):the following ip group(s) match to one mac group.

      IP group address:FF1E::101

        (::, FF1E::101):

          Attribute:    Host Port

          Host port(s):total 1 port(s).

            GE1/0/2                (D) ( 00:03:23 )

    MAC group(s):

      MAC group address:3333-0000-0101

          Host port(s):total 1 port(s).

            GE1/0/2

由此可見,Switch A上的端口GigabitEthernet1/0/3已經成為了靜態路由器端口。

# 查看Switch C上VLAN 100內MLD Snooping組播組的詳細信息。

[SwitchC] display mld-snooping group vlan 100 verbose

  Total 1 IP Group(s).

  Total 1 IP Source(s).

  Total 1 MAC Group(s).

 

  Port flags: D-Dynamic port, S-Static port, C-Copy port

  Subvlan flags: R-Real VLAN, C-Copy VLAN

  Vlan(id):100.

    Total 1 IP Group(s).

    Total 1 IP Source(s).

    Total 1 MAC Group(s).

    Router port(s):total 1 port(s).

            GE1/0/2                (D) ( 00:01:23 )

    IP group(s):the following ip group(s) match to one mac group.

      IP group address:FF1E::101

        (::, FF1E::101):

          Attribute:    Host Port

          Host port(s):total 2 port(s).

            GE1/0/3                (S)

            GE1/0/5                (S)

    MAC group(s):

      MAC group address:3333-0000-0101

          Host port(s):total 2 port(s).

            GE1/0/3

            GE1/0/5

由此可見,Switch C上的端口GigabitEthernet1/0/3和GigabitEthernet1/0/5已經成為了IPv6組播組FF1E::101的靜態成員端口。

1.9.3  MLD Snooping查詢器配置舉例

1. 組網需求

·     如圖1-6所示,在一個沒有三層設備的純二層網絡環境中,IPv6組播源Source 1和Source 2分別向IPv6組播組FF1E::101和FF1E::102發送IPv6組播數據,Host A和Host C是IPv6組播組FF1E::101的接收者(Receiver),Host B和Host D則是IPv6組播組FF1E::102的接收者;

·     所有接收者均使用MLDv1,所有交換機上都運行版本1的MLD Snooping,並選擇距IPv6組播源較近的Switch A來充當MLD Snooping查詢器;

·     為了防止交換機在沒有二層IPv6組播轉發表項時將IPv6組播數據在VLAN內廣播,要求在所有交換機上都使能丟棄未知IPv6組播數據報文的功能。

2. 組網圖

圖1-6 MLD Snooping查詢器配置組網圖

 

 

3. 配置步驟

(1)     配置Switch A

# 使能IPv6轉發功能,並全局使能MLD Snooping。

<SwitchA> system-view

[SwitchA] ipv6

[SwitchA] mld-snooping

[SwitchA-mld-snooping] quit

# 創建VLAN 100,並把端口GigabitEthernet1/0/1到GigabitEthernet1/0/3添加到該VLAN中。

[SwitchA] vlan 100

[SwitchA-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/3

# 在VLAN 100內使能MLD Snooping,並使能丟棄未知IPv6組播數據報文功能。

[SwitchA-vlan100] mld-snooping enable

[SwitchA-vlan100] mld-snooping drop-unknown

# 在VLAN 100內使能MLD Snooping查詢器。

[SwitchA-vlan100] mld-snooping querier

[SwitchA-vlan100] quit

(2)     配置Switch B

# 使能IPv6轉發功能,並全局使能MLD Snooping。

<SwitchB> system-view

[SwitchB] ipv6

[SwitchB] mld-snooping

[SwitchB-mld-snooping] quit

# 創建VLAN 100,並把端口GigabitEthernet1/0/1到GigabitEthernet1/0/4添加到該VLAN中。

[SwitchB] vlan 100

[SwitchB-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/4

# 在VLAN 100內使能MLD Snooping,並使能丟棄未知IPv6組播數據報文功能。

[SwitchB-vlan100] mld-snooping enable

[SwitchB-vlan100] mld-snooping drop-unknown

[SwitchB-vlan100] quit

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

(3)     檢驗配置效果

當MLD Snooping查詢器開始工作之後,除查詢器以外的所有交換機都能收到MLD普遍組查詢報文。通過使用display mld-snooping statistics命令可以查看MLD報文的統計信息,例如:

# 查看Switch B上收到的MLD報文的統計信息。

[SwitchB] display mld-snooping statistics

  Received MLD general queries:3.

  Received MLDv1 specific queries:0.

  Received MLDv1 reports:12.

  Received MLD dones:0.

  Sent     MLDv1 specific queries:0.

  Received MLDv2 reports:0.

  Received MLDv2 reports with right and wrong records:0.

  Received MLDv2 specific queries:0.

  Received MLDv2 specific sg queries:0.

  Sent     MLDv2 specific queries:0.

  Sent     MLDv2 specific sg queries:0.

  Received error MLD messages:0.

1.9.4  MLD Snooping Proxying配置舉例

1. 組網需求

·     如圖1-7所示,Router A通過GigabitEthernet1/0/2接口連接IPv6組播源(Source),通過GigabitEthernet1/0/1接口連接Switch A;

·     Router A上運行MLDv1,Switch A上運行版本1的MLD Snooping,並由Router A充當MLD查詢器;

·     通過配置,使Switch A能夠代理下遊主機向Router A發送的MLD報告報文和離開報文,以及響應Router A發來的MLD查詢報文並向下遊主機轉發。

2. 組網圖

圖1-7 MLD Snooping Proxying配置組網圖

 

3. 配置步驟

(1)     配置IPv6地址

使能各設備的IPv6轉發功能,並按照圖1-7配置各接口的IPv6地址和前綴長度,具體配置過程略。

(2)     配置Router A

# 使能IPv6組播路由,在各接口上使能IPv6 PIM-DM,並在接口GigabitEthernet1/0/1上使能MLD

<RouterA> system-view

[RouterA] multicast ipv6 routing-enable

[RouterA] interface gigabitethernet 1/0/1

[RouterA-GigabitEthernet1/0/1] mld enable

[RouterA-GigabitEthernet1/0/1] pim ipv6 dm

[RouterA-GigabitEthernet1/0/1] quit

[RouterA] interface gigabitethernet 1/0/2

[RouterA-GigabitEthernet1/0/2] pim ipv6 dm

[RouterA-GigabitEthernet1/0/2] quit

(3)     配置Switch A

# 全局使能MLD Snooping。

<SwitchA> system-view

[SwitchA] mld-snooping

[SwitchA-mld-snooping] quit

# 創建VLAN 100,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並使能MLD Snooping Proxying。

[SwitchA] vlan 100

[SwitchA-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/4

[SwitchA-vlan100] mld-snooping enable

[SwitchA-vlan100] mld-snooping proxying enable

[SwitchA-vlan100] quit

(4)     檢驗配置效果

當配置完成後,Host A和Host B分別發送組地址為FF1E::101的MLD加入報文,Switch A收到該報文後通過其路由器端口GigabitEthernet1/0/1向Router A也發送該組的加入報文。通過使用display mld-snooping groupdisplay mld group命令可以分別查看MLD Snooping組播組和MLD組播組的信息,例如:

# 查看Switch A上MLD Snooping組播組的信息。

[SwitchA] display mld-snooping group

  Total 1 IP Group(s).

  Total 1 IP Source(s).

  Total 1 MAC Group(s).

 

  Port flags: D-Dynamic port, S-Static port, C-Copy port

  Subvlan flags: R-Real VLAN, C-Copy VLAN

  Vlan(id):100.

    Total 1 IP Group(s).

    Total 1 IP Source(s).

    Total 1 MAC Group(s).

    Router port(s):total 1 port(s).

            GE1/0/1                (D)

    IP group(s):the following ip group(s) match to one mac group.

      IP group address:FF1E::101

        (::, FF1E::101):

          Host port(s):total 2 port(s).

            GE1/0/3                (D)

            GE1/0/4                (D)

    MAC group(s):

      MAC group address:3333-0000-0101

          Host port(s):total 2 port(s).

            GE1/0/3

            GE1/0/4

# 查看Router A上MLD組播組的信息。

[RouterA] display mld group

Total 1 MLD Group(s).

Interface group report information

 GigabitEthernet1/0/1(2001::1):

  Total 1 MLD Group reported

   Group Address: FF1E::101

    Last Reporter: FE80::2FF:FFFF:FE00:1

    Uptime: 00:00:03

    Expires: 00:04:17

當Host A離開IPv6組播組FF1E::101時,向Switch A發送該組的MLD離開報文,但由於Host B仍未離開該組,因此Switch A並不會刪除該組,也不會向Router A發送該組的離開報文,隻是在該組對應轉發表項的成員端口列表中將端口GigabitEthernet1/0/3刪除。通過使用display mld-snooping group命令可以查看MLD Snooping組播組的信息,例如:

# 查看Switch A上MLD Snooping組播組的信息。

[SwitchA] display mld-snooping group

  Total 1 IP Group(s).

  Total 1 IP Source(s).

  Total 1 MAC Group(s).

 

  Port flags: D-Dynamic port, S-Static port, C-Copy port

  Subvlan flags: R-Real VLAN, C-Copy VLAN

  Vlan(id):100.

    Total 1 IP Group(s).

    Total 1 IP Source(s).

    Total 1 MAC Group(s).

    Router port(s):total 1 port(s).

            GE1/0/1                (D)

    IP group(s):the following ip group(s) match to one mac group.

      IP group address:FF1E::101

        (::, FF1E::101):

          Host port(s):total 1 port(s).

            GE1/0/4                (D)

    MAC group(s):

      MAC group address:3333-0000-0101

          Host port(s):total 1 port(s).

            GE1/0/4

1.10  常見配置錯誤舉例

1.10.1  交換機不能實現二層組播

1. 故障現象

交換機不能實現MLD snooping二層組播功能。

2. 分析

MLD Snooping沒有使能。

3. 處理過程

(1)     使用display current-configuration命令查看MLD Snooping的運行狀態。

(2)     如果是沒有使能MLD Snooping,則需先在係統視圖下使用mld-snooping命令全局使能MLD Snooping,然後在VLAN視圖下使用mld-snooping enable命令使能VLAN內的MLD Snooping。

(3)     如果隻是沒有在相應VLAN下使能MLD Snooping,則隻需在VLAN視圖下使用mld-snooping enable命令使能VLAN內的MLD Snooping。

1.10.2  配置的IPv6組播組策略不生效

1. 故障現象

配置了IPv6組播組策略,隻允許主機加入某些特定的IPv6組播組,但主機仍然可以收到發往其它IPv6組播組的IPv6組播數據。

2. 分析

·     IPv6 ACL規則配置不正確;

·     IPv6組播組策略應用不正確;

·     沒有使能丟棄未知IPv6組播數據報文的功能,使得屬於過濾策略之外的IPv6組播數據報文(即未知IPv6組播數據報文)被廣播。

3. 處理過程

(1)     使用display acl ipv6命令查看所配置的IPv6 ACL規則,檢查其是否與所要實現的IPv6組播組過濾策略相符合。

(2)     在MLD-Snooping視圖或相應的接口視圖下使用display this命令查看是否應用了正確的IPv6組播組策略。如果沒有,則使用group-policymld-snooping group-policy命令應用正確的IPv6組播組策略。

(3)     使用display current-configuration命令查看是否已使能丟棄未知IPv6組播數據報文的功能。如果沒有使能,則使用mld-snooping drop-unknown命令使能丟棄未知IPv6組播數據報文功能。

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

BOB登陆
官網
聯係我們