09-MLD Snooping配置
本章節下載: 09-MLD Snooping配置 (616.75 KB)
1.3.3 配置MLD Snooping轉發表項的全局最大數量
1.9.1 基於VLAN的IPv6組策略及模擬主機加入配置舉例
1.9.3 基於VLAN的MLD Snooping查詢器配置舉例
1.9.4 基於VLAN的MLD Snooping Proxy配置舉例
MLD Snooping(Multicast Listener Discovery Snooping,組播偵聽者發現協議窺探)運行在二層設備上,通過偵聽三層設備與主機之間的MLD報文來生成二層組播轉發表,從而管理和控製IPv6組播數據報文的轉發,實現IPv6組播數據報文在二層的按需分發。
運行MLD Snooping的二層設備通過對收到的MLD報文進行分析,為端口和MAC組播地址建立起映射關係,並根據這樣的映射關係轉發IPv6組播數據。
如圖1-1所示,當二層設備沒有運行MLD Snooping時,IPv6組播數據報文在二層網絡(包括VLAN和VSI)中被廣播;當二層設備運行了MLD Snooping後,已知IPv6組播組的組播數據報文不會在二層網絡中被廣播,而被組播給指定的接收者。
圖1-1 二層設備運行MLD Snooping前後的對比
MLD Snooping通過二層組播將信息隻轉發給有需要的接收者,可以帶來以下好處:
· 減少了二層網絡中的廣播報文,節約了網絡帶寬;
· 增強了IPv6組播信息的安全性;
· 為實現對每台主機的單獨計費帶來了方便。
如圖1-2所示,Router A連接IPv6組播源,在Switch A和Switch B上分別運行MLD Snooping,Host A和Host C為接收者主機(即IPv6組播組成員)。根據在網絡中所處位置的不同,我們將MLD Snooping端口分為路由器端口和成員端口兩類,以下分別介紹。
圖1-2 MLD Snooping端口示意圖
在運行了MLD Snooping的二層設備上,朝向上遊三層組播設備的端口稱為路由器端口。如圖1-2中Switch A和Switch B各自的HundredGigE1/0/1端口。
根據來源不同,路由器端口可分為:
· 動態路由器端口:所有收到MLD普遍組查詢報文(源地址非0::0)或IPv6 PIM Hello報文的端口,都被維護為動態路由器端口。這些端口被記錄在動態路由器端口列表中,每個端口都有一個老化定時器。在老化定時器超時前,動態路由器端口如果收到了MLD普遍組查詢報文(源地址非0::0)或IPv6 PIM Hello報文,該定時器將被重置;否則,該端口將被從動態路由器端口列表中刪除。
· 靜態路由器端口:通過命令行手工配置的路由器端口稱為靜態路由器端口,這些端口被記錄在靜態路由器端口列表中。靜態路由器端口隻能通過命令行手工刪除,不會被老化。
· 本文中提到的路由器端口都是指二層設備上朝向三層組播設備的端口,而不是指路由器上的端口。
· 如果沒有特別指明,本文中提到的路由器端口包括動態路由器端口和靜態路由器端口。
在運行了MLD Snooping的二層設備上,朝向下遊組播組成員的端口稱為成員端口。如圖1-2中Switch A的HundredGigE1/0/2和HundredGigE1/0/3端口,以及Switch B的HundredGigE1/0/2端口。
根據來源不同,成員端口也可分為:
· 動態成員端口:所有收到MLD成員關係報告報文的端口,都被維護為動態成員端口。這些端口被記錄在動態MLD Snooping轉發表中,每個端口都有一個老化定時器。在老化定時器超時前,動態成員端口如果收到了MLD成員關係報告報文,該定時器將被重置;否則,該端口將被從動態MLD Snooping轉發表中刪除。
· 靜態成員端口:通過命令行手工配置的成員端口稱為靜態成員端口,這些端口被記錄在靜態MLD Snooping轉發表中。靜態路由器端口隻能通過命令行手工刪除,不會被老化。
如果沒有特別指明,本文中提到的成員端口包括動態成員端口和靜態成員端口。
運行了MLD Snooping的二層設備對不同MLD動作的具體處理方式如下:
MLD查詢器定期向本地網段內的所有主機與路由器(FF02::1)發送MLD普遍組查詢報文,以查詢該網段有哪些IPv6組播組的成員。
在收到MLD普遍組查詢報文時,二層設備將其通過VLAN/VSI內除接收端口以外的其它所有端口轉發出去,並對該報文的接收端口做如下處理:
· 如果在動態路由器端口列表中已包含該動態路由器端口,則重置其老化定時器。
· 如果在動態路由器端口列表中尚未包含該動態路由器端口,則將其添加到動態路由器端口列表中,並啟動其老化定時器。
以下情況,主機會向MLD查詢器發送MLD成員關係報告報文:
· 當IPv6組播組的成員主機收到MLD查詢報文後,會回複MLD成員關係報告報文。
· 如果主機要加入某個IPv6組播組,它會主動向MLD查詢器發送MLD成員關係報告報文以聲明加入該IPv6組播組。
在收到MLD成員關係報告報文時,二層設備將其通過VLAN/VSI內的所有路由器端口轉發出去,從該報文中解析出主機要加入的IPv6組播組地址,並對該報文的接收端口做如下處理:
· 如果不存在該IPv6組播組所對應的轉發表項,則創建轉發表項,將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;
· 如果已存在該IPv6組播組所對應的轉發表項,但其出端口列表中不包含該端口,則將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;
· 如果已存在該IPv6組播組所對應的轉發表項,且其出端口列表中已包含該動態成員端口,則重置其老化定時器。
二層設備不會將MLD成員關係報告報文通過非路由器端口轉發出去,因為根據主機上的MLD成員關係報告抑製機製,如果非路由器端口下還有該IPv6組播組的成員主機,則這些主機在收到該報告報文後便抑製了自身的報告,從而使二層設備無法獲知這些端口下還有該IPv6組播組的成員主機。
當主機離開IPv6組播組時,會通過發送MLD離開組報文,以通知三層組播設備自己離開了某個IPv6組播組。當二層設備從某動態成員端口上收到MLD離開組報文時,首先判斷要離開的IPv6組播組所對應的轉發表項是否存在,以及該IPv6組播組所對應轉發表項的出端口列表中是否包含該接收端口:
· 如果不存在該IPv6組播組對應的轉發表項,或者該IPv6組播組對應轉發表項的出端口列表中不包含該端口,二層設備不會向任何端口轉發該報文,而將其直接丟棄;
· 如果存在該IPv6組播組對應的轉發表項,且該IPv6組播組對應轉發表項的出端口列表中除該端口還有別的成員端口存在,二層設備不會向任何端口轉發該報文,而將其直接丟棄。同時,由於並不知道該接收端口下是否還有該IPv6組播組的其它成員,所以二層設備不會立刻把該端口從該IPv6組播組所對應轉發表項的出端口列表中刪除,而是向該端口發送MLD特定組查詢報文,並根據MLD特定組查詢報文調整該端口的老化定時器(老化時間為2×MLD特定組查詢報文的發送間隔);
· 如果存在該IPv6組播組對應的轉發表項,且該IPv6組播組對應轉發表項的出端口列表中隻有該端口,二層設備會將該報文通過VLAN/VSI內的所有路由器端口轉發出去。同時,由於並不知道該接收端口下是否還有該IPv6組播組的其它成員,所以二層設備不會立刻把該端口從該IPv6組播組所對應轉發表項的出端口列表中刪除,而是向該端口發送MLD特定組查詢報文,並根據MLD特定組查詢報文調整該端口的老化定時器(老化時間為2×MLD特定組查詢報文的發送間隔)。
當MLD查詢器收到MLD離開組報文後,從中解析出主機要離開的IPv6組播組的地址,並通過接收端口向該IPv6組播組發送MLD特定組查詢報文。二層設備在收到MLD特定組查詢報文後,將其通過VLAN/VSI內的所有路由器端口和該IPv6組播組的所有成員端口轉發出去。對於MLD離開組報文的接收端口(假定為動態成員端口),二層設備在其老化時間內:
· 如果從該端口收到了主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下還有該IPv6組播組的成員,於是重置其老化定時器;
· 如果沒有從該端口收到主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下已沒有該IPv6組播組的成員。當該端口的老化定時器超時後,將其從該IPv6組播組所對應轉發表項的出端口列表中刪除。
為了減少上遊設備收到的MLD報告報文和離開報文的數量,可以通過在邊緣設備上配置MLD Snooping Proxy(MLD Snooping代理)功能,使其能夠代理下遊主機向上遊設備發送報告報文和離開報文。配置了MLD Snooping Proxy功能的設備稱為MLD Snooping代理設備,在其上遊設備看來,它就相當於一台主機。但主機上的MLD成員關係報告抑製機製在MLD Snooping代理設備上並不會生效。
如圖1-3 所示,作為MLD Snooping代理設備的Switch A,對其上遊的MLD查詢器Router A來說相當於一台主機,代理下遊主機向Router A發送報告報文和離開報文。
MLD Snooping代理設備對MLD報文的處理方式如表1-1所示。
表1-1 MLD Snooping代理設備對MLD報文的處理方式
MLD報文 |
處理方式 |
普遍組查詢報文 |
收到普遍組查詢報文後,向本VLAN內除接收端口以外的所有端口轉發;同時根據本地維護的組成員關係生成報告報文,並向所有路由器端口發送 |
特定組/特定源組查詢報文 |
收到針對某組播組的特定組/特定源組查詢報文時,向本VLAN內除接收端口以外的所有路由器端口轉發;若該組對應的轉發表項中還有成員端口,則向本VLAN內所有路由器端口回複該組的報告報文 |
報告報文 |
從某端口收到某IPv6組播組的報告報文時,若已存在該組對應的轉發表項,且其出端口列表中已包含該動態成員端口,則重置其老化定時器;若已存在該組對應的轉發表項,但其出端口列表中不包含該端口,則將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;若尚不存在該組對應的轉發表項,則創建轉發表項,將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器,然後向所有路由器端口發送該組的報告報文 |
離開報文 |
從某端口收到某IPv6組播組的離開報文後,向該端口發送針對該組的特定組查詢報文。隻有當刪除某IPv6組播組對應轉發表項中的最後一個成員端口時,才會向所有路由器端口發送該組的離開報文 |
MLD Snooping的版本決定了MLD Snooping可以處理的MLD報文的版本:
· 當MLD Snooping的版本為1時,MLD Snooping能夠對MLDv1的報文進行處理,對MLDv2的報文則不進行處理,而是在VLAN內將其廣播;
· 當MLD Snooping的版本為2時,MLD Snooping能夠對MLDv1和MLDv2的報文進行處理。
本係列交換機僅支持版本為1的MLD Snooping。
與MLD Snooping相關的協議規範有:
· RFC 4541:Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches
用戶可以在VLAN和VSI兩種二層網絡中配置MLD Snooping,請分別參見表1-2和表1-3。
表1-2 基於VLAN的MLD Snooping配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置MLD Snooping基本功能 |
使能MLD Snooping |
必選 |
|
配置MLD Snooping轉發表項的全局最大數量 |
可選 |
||
配置IPv6靜態組播MAC地址表項 |
可選 |
||
配置MLD特定組查詢報文的發送間隔 |
可選 |
||
配置MLD Snooping端口功能 |
配置動態端口老化定時器 |
可選 |
|
配置靜態端口 |
可選 |
||
配置模擬主機加入 |
可選 |
||
配置端口快速離開 |
可選 |
||
禁止端口成為動態路由器端口 |
可選 |
||
開啟端口識別MLD報文內層VLAN功能 |
可選 |
||
配置MLD Snooping查詢器 |
開啟MLD Snooping查詢器 |
可選 |
|
配置MLD普遍組查詢和響應 |
可選 |
||
配置MLD Snooping Proxy |
開啟MLD Snooping Proxy |
可選 |
|
調整MLD報文 |
配置MLD報文的源IPv6地址 |
可選 |
|
配置MLD報文的802.1p優先級 |
可選 |
||
配置MLD Snooping策略 |
配置IPv6組播組過濾器 |
可選 |
|
配置IPv6組播數據報文源端口過濾 |
可選 |
||
配置丟棄未知IPv6組播數據報文 |
可選 |
||
配置MLD成員關係報告報文抑製 |
可選 |
||
配置端口加入的IPv6組播組最大數量 |
可選 |
||
配置IPv6組播組替換功能 |
可選 |
||
配置MLD Snooping主機跟蹤功能 |
可選 |
表1-3 基於VSI的MLD Snooping配置任務簡介
配置任務 |
說明 |
詳細配置 |
|
配置MLD Snooping基本功能 |
使能MLD Snooping |
必選 |
|
配置MLD Snooping轉發表項的全局最大數量 |
可選 |
||
配置MLD特定組查詢報文的發送間隔 |
可選 |
||
配置MLD Snooping端口功能 |
配置動態端口老化定時器 |
可選 |
|
配置MLD Snooping查詢器 |
開啟MLD Snooping查詢器 |
可選 |
|
配置MLD普遍組查詢和響應 |
可選 |
||
調整MLD報文 |
配置MLD報文的源IPv6地址 |
可選 |
|
配置MLD報文的802.1p優先級 |
可選 |
||
配置MLD Snooping策略 |
配置丟棄未知IPv6組播數據報文 |
可選 |
|
配置MLD成員關係報告報文抑製 |
可選 |
二層聚合接口與其各成員端口上的配置互不影響,且成員端口上的配置隻有當該端口退出聚合組後才會生效,二層聚合接口上的配置也不會參與聚合計算。
在配置MLD Snooping基本功能之前,需完成以下任務:
· 配置相應VLAN/VSI
在配置MLD Snooping基本功能之前,需準備以下數據:
· MLD Snooping轉發表項的全局最大數量
· MLD特定組查詢報文的發送間隔
在VLAN/VSI內使能MLD Snooping之前,必須先全局使能MLD Snooping。在VLAN/VSI內使能了MLD Snooping之後,MLD Snooping隻在屬於該VLAN/VSI的端口上生效。
對於基於VLAN的配置,用戶既可在MLD-Snooping視圖下對指定VLAN進行配置,也可在VLAN視圖下隻對當前VLAN進行配置,二者的配置優先級相同;對於基於VSI的配置,用戶隻能在VSI視圖下對當前VSI進行配置。
表1-4 在VLAN內使能MLD Snooping
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
全局使能MLD Snooping,並進入MLD-Snooping視圖 |
mld-snooping |
缺省情況下,MLD Snooping處於全局關閉狀態 |
使能指定VLAN內的MLD Snooping |
enable vlan vlan-list |
缺省情況下,VLAN內的MLD Snooping處於關閉狀態 |
表1-5 在VLAN/VSI內使能MLD Snooping
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
全局使能MLD Snooping,並進入MLD-Snooping視圖 |
mld-snooping |
缺省情況下,MLD Snooping處於全局關閉狀態 |
|
退回係統視圖 |
quit |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
vsi vsi-name |
||
在VLAN/VSI內使能MLD Snooping |
mld-snooping enable |
缺省情況下,VLAN/VSI內的MLD Snooping處於關閉狀態 |
用戶可以調整MLD Snooping轉發表項(包括動態表項和靜態表項)的全局最大數量,當設備上維護的表項數量達到最大數量後,將不再創建新的表項,直至有表項被老化或被手工刪除。
表1-6 配置MLD Snooping轉發表項的全局最大數量
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
配置MLD Snooping轉發表項的全局最大數量 |
entry-limit limit |
缺省情況下,MLD Snooping轉發表項的全局最大數量為4294967295 |
· 進行本配置不需要使能IPv6組播路由。
· 可手工配置的組播MAC地址表項必須是尚未使用的組播MAC地址(即最高字節的最低比特位為1的MAC地址)。
在二層組播中,除了可通過二層IPv6組播協議(如MLD Snooping)動態建立IPv6組播MAC地址表項外,還可通過手工方式配置IPv6組播MAC地址表項,將端口與IPv6組播MAC地址進行靜態綁定,以便靈活控製IPv6組播信息送達的目的端口。
用戶既可以在係統視圖對指定接口進行配置,也可以在接口視圖下隻對當前接口進行配置。
表1-7 係統視圖下配置IPv6靜態組播MAC地址表項
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置靜態組播MAC地址表項 |
mac-address multicast mac-address interface interface-list vlan vlan-id |
缺省情況下,沒有配置靜態組播MAC地址表項 本命令的詳細介紹請參見“IP組播命令參考”中的“IGMP Snooping” |
表1-8 接口視圖下配置IPv6靜態組播MAC地址表項
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置靜態組播MAC地址表項 |
mac-address multicast mac-address vlan vlan-id |
缺省情況下,沒有配置靜態組播MAC地址表項 本命令的詳細介紹請參見“IP組播命令參考”中的“IGMP Snooping” |
當二層設備從某動態成員端口上收到MLD離開組報文時,如果設備上存在要離開的IPv6組播組所對應的轉發表項,且該IPv6組播組所對應轉發表項的出端口列表中也包含該接收端口,則二層設備會向該端口發送MLD特定組查詢報文,並根據MLD特定組查詢報文調整該端口的老化定時器(老化時間為2×MLD特定組查詢報文的發送間隔)。
合理配置MLD特定組查詢的最大響應時間,既可以使主機對MLD查詢報文做出快速響應,又可以減少由於定時器同時超時,造成大量主機同時發送報告報文而引起的網絡擁塞。
二層設備所發送的MLD特定組查詢報文,其報文的最大響應時間字段由所配置的MLD特定組查詢報文的發送間隔來填充,在主機在收到MLD特定組查詢報文後,會為其所加入的該IPv6組播組啟動一個定時器,定時器的值在0到最大響應時間(該時間值由主機從所收到的MLD特定組查詢報文的最大響應時間字段獲得)中隨機選定,當定時器的值減為0時,主機就會向該定時器對應的IPv6組播組發送MLD成員關係報告報文。
用戶既可在MLD-Snooping視圖下對所有VLAN和VSI進行全局配置,也可在VLAN視圖/VSI視圖下隻對當前VLAN/VSI進行配置,後者的配置優先級較高。
如果二層設備的某端口上開啟了端口快速離開功能,該端口收到MLD離開組報文後,二層設備不會向該端口發送MLD特定組查詢報文。
表1-9 全局配置MLD特定組查詢報文的發送間隔
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局配置MLD特定組查詢報文的發送間隔 |
last-listener-query-interval interval |
缺省情況下,MLD特定組查詢報文的發送間隔為1秒 |
表1-10 在VLAN/VSI內配置MLD特定組查詢報文的發送間隔
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
vsi vsi-name |
||
在VLAN/VSI內配置MLD特定組查詢報文的發送間隔 |
mld-snooping last-listener-query-interval interval |
缺省情況下,MLD特定組查詢報文的發送間隔為1秒 |
在配置MLD Snooping端口功能之前,需完成以下任務:
· 在VLAN/VSI內使能MLD Snooping
在配置MLD Snooping端口功能之前,需準備以下數據:
· 動態路由器端口老化時間
· 動態成員端口老化時間
· IPv6組播組和IPv6組播源的地址
對於動態路由器端口,如果在其老化時間內沒有收到MLD普遍組查詢報文或者IPv6 PIM Hello報文,二層設備將把該端口從動態路由器端口列表中刪除。
對於動態成員端口,如果在其老化時間內沒有收到該IPv6組播組的MLD成員關係報告報文,二層設備將把該端口從該IPv6組播組所對應轉發表的出端口列表中刪除。
如果IPv6組播組成員的變動比較頻繁,可以把動態成員端口老化時間設置小一些,反之亦然。
用戶既可在MLD-Snooping視圖下對所有VLAN和VSI進行全局配置,也可在VLAN視圖/VSI視圖下隻對當前VLAN/VSI進行配置,後者的配置優先級較高。
· 如果動態路由器端口收到的是IPv6 PIMv2 Hello報文,那麼該端口的老化時間將由IPv6 PIMv2 Hello報文所攜帶的參數決定,而不受本節配置的影響。
· 如果二層設備向動態成員端口主動發送MLD特定組查詢報文,則該端口的老化時間將根據該MLD特定組查詢報文進行調整,調整的老化時間為2×MLD特定組查詢報文的發送間隔。二層設備MLD特定組查詢報文發送間隔的配置,請參見“1.3.5 配置MLD特定組查詢報文的發送間隔”。
表1-11 全局配置動態端口老化定時器
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局配置動態路由器端口老化時間 |
router-aging-time seconds |
缺省情況下,動態路由器端口的老化時間為260秒 |
全局配置動態成員端口老化時間 |
host-aging-time seconds |
缺省情況下,動態成員端口的老化時間為260秒 |
表1-12 在VLAN/VSI內配置動態端口老化定時器
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
進入VSI視圖 |
||
在VLAN/VSI內配置動態路由器端口老化時間 |
mld-snooping router-aging-time seconds |
缺省情況下,動態路由器端口的老化時間為260秒 |
|
在VLAN/VSI內配置動態成員端口老化時間 |
mld-snooping host-aging-time seconds |
缺省情況下,動態成員端口的老化時間為260秒 |
如果某端口所連接的主機需要固定接收發往某IPv6組播組的IPv6組播數據,可以配置該端口靜態加入該IPv6組播組,成為靜態成員端口。靜態成員端口不會對MLD查詢器發出的查詢報文進行響應;當配置靜態成員端口或取消靜態成員端口的配置時,端口也不會主動發送MLD成員關係報告報文或MLD離開組報文。
可以通過將二層設備上的端口配置為靜態路由器端口,從而使二層設備上收到的所有IPv6組播數據可以通過該端口被轉發出去。
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置靜態成員端口 |
mld-snooping static-group ipv6-group-address vlan vlan-id |
缺省情況下,端口不是靜態成員端口 |
配置靜態路由器端口 |
mld-snooping static-router-port vlan vlan-id |
缺省情況下,端口不是靜態路由器端口 |
在二層設備的端口上配置了模擬主機加入後,該模擬主機就可以模仿真實的IPv6組播組成員主機,對MLD查詢器發出的查詢報文進行響應,包括:
· 啟動模擬主機時,該端口會主動發送一個MLD成員關係報告報文。
· 在模擬主機的運行過程中,當收到MLD查詢報文時,該端口會響應一個MLD成員關係報告報文。
· 停止模擬主機時,該端口會發送一個MLD離開組報文。
· 與靜態成員端口不同,配置了模擬主機加入的端口將作為動態成員端口參與動態成員端口的老化過程。
· 模擬主機所采用的MLD版本與MLD Snooping的版本一致。
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置模擬主機加入IPv6組播組 |
mld-snooping host-join ipv6-group-address vlan vlan-id |
缺省情況下,未配置模擬主機加入IPv6組播組 |
端口快速離開是指當端口收到主機發來的離開指定IPv6組播組的MLD離開組報文時,直接將該端口從相應轉發表項的出端口列表中刪除。此後,當收到針對該IPv6組播組的MLD特定組查詢報文時,二層設備將不再向該端口轉發。
對於一個VLAN,隻有當一個端口下隻有一個接收者時,才建議配置本功能;否則,當一個端口下有多個接收者時,其中一個接收者的離開會觸發該端口的快速離開,從而導致屬於同一IPv6組播組的其它接收者無法收到IPv6組播數據。
用戶既可在MLD-Snooping視圖下對所有端口進行全局配置,也可在接口視圖下隻對當前端口進行配置,後者的配置優先級較高。
表1-15 全局配置端口快速離開
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局開啟端口快速離開功能 |
fast-leave [ vlan vlan-list ] |
缺省情況下,端口快速離開功能處於關閉狀態 |
表1-16 在端口上配置端口快速離開
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
在端口上開啟端口快速離開功能 |
mld-snooping fast-leave [ vlan vlan-list ] |
缺省情況下,端口快速離開功能處於關閉狀態 |
在IPv6組播用戶接入網絡中,用戶主機在某些情況下(比如測試)也會發出MLD普遍組查詢報文或IPv6 PIM Hello報文:
· 如果二層設備收到了某用戶主機發來的MLD普遍組查詢報文或IPv6 PIM Hello報文,那麼接收報文的端口就將成為動態路由器端口,從而使VLAN內的所有IPv6組播報文都會向該端口轉發,導致該主機收到大量無用的IPv6組播報文。
· 同時,用戶主機發送MLD普遍組查詢報文或IPv6 PIM Hello報文,也會影響該接入網絡中三層設備上的IPv6組播路由協議狀態(如影響MLD查詢器或DR的選舉),嚴重時可能導致網絡中斷。
當禁止一個端口成為動態路由器端口後,即使該端口收到了MLD普遍組查詢報文或IPv6 PIM Hello報文,該端口也不會成為動態路由器端口,從而能夠有效解決上述問題,提高網絡的安全性和對組播用戶的控製能力。
本配置與靜態路由器端口的配置互不影響。
表1-17 禁止端口成為動態路由器端口
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
禁止端口成為動態路由器端口 |
mld-snooping router-port-deny [ vlan vlan-list ] |
缺省情況下,端口可以成為動態路由器端口 |
通常情況下,設備根據端口收到的MLD報文最外層VLAN ID來創建和維護轉發表項。配置本功能後,設備根據端口收到的雙VLAN tag MLD報文按其內層VLAN ID來創建和維護轉發表項。
表1-18 使能端口識別MLD報文內層VLAN功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
開啟端口對接收的雙VLAN tag的MLD報文按內層VLAN ID來創建和維護轉發表項 |
mld-snooping cvid-forward |
缺省情況下,端口對接收的MLD報文按外層VLAN ID來創建和維護轉發表項 |
在配置MLD Snooping查詢器之前,需完成以下任務:
· 在VLAN/VSI內使能MLD Snooping
在配置MLD Snooping查詢器之前,需準備以下數據:
· MLD普遍組查詢報文的發送間隔
· MLD普遍組查詢的最大響應時間
在運行了MLD的IPv6組播網絡中,會有一台三層組播設備充當MLD查詢器,負責發送MLD查詢報文,使三層組播設備能夠在網絡層建立並維護IPv6組播轉發表項,從而在網絡層正常轉發IPv6組播數據。
但是,在一個沒有三層組播設備的網絡中,由於二層設備並不支持MLD,因此無法實現MLD查詢器的相關功能。為了解決這個問題,可以在二層設備上開啟MLD Snooping查詢器,使二層設備能夠在數據鏈路層建立並維護IPv6組播轉發表項,從而在數據鏈路層正常轉發IPv6組播數據。
· 請避免在運行了MLD的網絡中配置MLD Snooping查詢器,因為盡管MLD Snooping查詢器並不參與MLD查詢器的選舉,但在運行了MLD的網絡中,配置MLD Snooping查詢器不但沒有實際的意義,反而可能會由於其發送的MLD普遍組查詢報文的源IPv6地址較小而影響MLD查詢器的選舉。
· 在VSI/VXLAN組網中,由於VSI內MLD Snooping查詢器發送查詢報文不攜帶VLAN Tag,所以不建議在攜帶VLAN Tag的Ethernet接入模式下配置MLD Snooping查詢器,有關Ethernet接入模式的詳細介紹,請參見“VXLAN配置指導”中的“接入模式”。
表1-19 開啟MLD Snooping查詢器
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
vsi vsi-name |
||
開啟MLD Snooping查詢器 |
mld-snooping querier |
缺省情況下,MLD Snooping查詢器處於關閉狀態 |
可以根據網絡的實際情況來修改MLD普遍組查詢報文的發送間隔。
合理配置MLD普遍組查詢的最大響應時間,既可以使主機對MLD查詢報文做出快速響應,又可以減少由於定時器同時超時,造成大量主機同時發送報告報文而引起的網絡擁塞。
對於MLD普遍組查詢報文,其報文最大響應時間字段由所配置的MLD普遍組查詢的最大響應時間來填充,在主機收到MLD普遍組查詢報文後,主機會為其所加入的每個IPv6組播組都啟動一個定時器,定時器的值在0到最大響應時間(該時間值由主機從所收到的MLD普遍組查詢報文的最大響應時間字段獲得)中隨機選定,當定時器的值減為0時,主機就會向該定時器對應的IPv6組播組發送MLD成員關係報告報文。
用戶既可在MLD-Snooping視圖下對所有VLAN和VSI進行全局配置,也可在VLAN視圖/VSI視圖下隻對當前VLAN/VSI進行配置,後者的配置優先級較高。
為避免誤刪IPv6組播組成員,請確保MLD普遍組查詢報文的發送間隔大於MLD普遍組查詢的最大響應時間,否則配置雖能生效但係統會給出提示。
表1-20 全局配置MLD普遍組查詢和響應
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局配置MLD普遍組查詢的最大響應時間 |
max-response-time seconds |
缺省情況下,MLD普遍組查詢的最大響應時間為10秒 |
表1-21 在VLAN/VSI內配置MLD普遍組查詢和響應
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
vsi vsi-name |
||
在VLAN/VSI內配置MLD普遍組查詢報文的發送間隔 |
mld-snooping query-interval interval |
缺省情況下,MLD普遍組查詢報文的發送間隔為125秒 |
|
在VLAN/VSI內配置MLD普遍組查詢的最大響應時間 |
mld-snooping max-response-time seconds |
缺省情況下,MLD普遍組查詢的最大響應時間為10秒 |
表1-22 開啟MLD Snooping Proxy
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入VLAN視圖 |
vlan vlan-id |
- |
在VLAN內開啟MLD Snooping Proxy功能 |
mld-snooping proxy enable |
缺省情況下,VLAN內的MLD Snooping Proxy功能處於關閉狀態 |
在調整MLD報文之前,需完成以下任務:
· 在VLAN/VSI內使能MLD Snooping
在調整MLD報文之前,需準備以下數據:
· MLD普遍組查詢報文的源IPv6地址
· MLD特定組查詢報文的源IPv6地址
· MLD成員關係報告報文的源IPv6地址
· MLD離開組報文的源IPv6地址
· MLD報文的802.1p優先級
用戶可以通過本配置改變MLD Snooping查詢器發送的MLD查詢報文的源IPv6地址。
用戶也可以通過本配置改變模擬主機或MLD Snooping代理發送的MLD成員關係報告報文或MLD離開組報文的源IPv6地址。
MLD查詢報文源IPv6地址的改變可能會影響網段內MLD查詢器的選舉。
表1-23 在VLAN內配置MLD報文的源IPv6地址
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入VLAN視圖 |
vlan vlan-id |
- |
配置MLD普遍組查詢報文的源IPv6地址 |
mld-snooping general-query source-ip ipv6-address |
缺省情況下,MLD普遍組查詢報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD特定組查詢報文的源IPv6地址 |
mld-snooping special-query source-ip ipv6-address |
缺省情況下,如果收到過MLD普遍組查詢報文,則以其源IPv6地址作為MLD特定組查詢報文的源IPv6地址;否則,采用當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD成員關係報告報文的源IPv6地址 |
mld-snooping report source-ip ipv6-address |
缺省情況下,MLD成員關係報告報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD離開組報文的源IPv6地址 |
mld-snooping done source-ip ipv6-address |
缺省情況下,MLD離開組報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
表1-24 在VSI內配置MLD報文的源IPv6地址
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入VSI視圖 |
vsi vsi-name |
- |
配置MLD普遍組查詢報文的源IPv6地址 |
mld-snooping general-query source-ip ipv6-address |
缺省情況下,MLD普遍組查詢報文的源IPv6地址為VSI綁定的VSI接口的IPv6鏈路本地地址;若綁定的VSI接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD特定組查詢報文的源IPv6地址 |
mld-snooping special-query source-ip ipv6-address |
缺省情況下,如果收到過MLD普遍組查詢報文,則以其源IPv6地址作為MLD特定組查詢報文的源IPv6地址;否則,采用VSI綁定的VSI接口的IPv6鏈路本地地址;若綁定的VSI接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD成員關係報告報文的源IPv6地址 |
mld-snooping report source-ip ipv6-address |
缺省情況下,MLD成員關係報告報文的源IPv6地址為VSI綁定的VSI接口的IPv6鏈路本地地址;若綁定的VSI接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
配置MLD離開組報文的源IPv6地址 |
mld-snooping done source-ip ipv6-address |
缺省情況下,MLD離開組報文的源IPv6地址為VSI綁定的VSI接口的IPv6鏈路本地地址;若綁定的VSI接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001 |
當二層設備的出端口發生擁塞時,二層設備通過識別報文的802.1p優先級,優先發送優先級較高的報文。用戶可以通過本配置改變MLD報文(包括本設備生成的以及途經本設備的)的802.1p優先級。
對於基於VLAN的配置,用戶既可在MLD-Snooping視圖下對所有VLAN進行全局配置,也可在VLAN視圖下隻對當前VLAN進行配置,後者的配置優先級較高;對於基於VSI的配置,用戶隻能在MLD-Snooping視圖下對所有VSI進行全局配置。
表1-25 全局配置MLD報文的802.1p優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局配置MLD報文的802.1p優先級 |
dot1p-priority priority |
缺省情況下,沒有配置MLD報文的802.1p優先級,即對於本設備生成的MLD報文,其802.1p優先級為0,而對途經本設備的MLD報文,不改變其802.1p優先級。 |
表1-26 在VLAN內配置MLD報文的802.1p優先級
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入VLAN視圖 |
vlan vlan-id |
- |
在VLAN內配置MLD報文的802.1p優先級 |
mld-snooping dot1p-priority priority |
缺省情況下,沒有配置MLD報文的802.1p優先級,即對於本設備生成的MLD報文,其802.1p優先級為0,而對途經本設備的MLD報文,不改變其802.1p優先級。 |
在配置MLD Snooping策略之前,需完成以下任務:
· 在VLAN/VSI內使能MLD Snooping
在配置MLD Snooping策略之前,需準備以下數據:
· IPv6組播組過濾的ACL規則
· 端口加入的IPv6組播組最大數量
本配置隻對動態組播組有效,對靜態組播組無效。
在使能了MLD Snooping的二層設備上,通過配置IPv6組播組過濾器,可以限製用戶對組播節目的點播。
在實際應用中,當用戶點播某個組播節目時,主機會發起一個MLD成員關係報告報文,該報文將在二層設備上接受IPv6組播組過濾器的檢查,隻有通過了檢查,二層設備才會將該主機所屬的端口加入到出端口列表中,從而達到控製用戶點播組播節目的目的。
用戶既可在MLD-Snooping視圖下對所有端口進行全局配置,也可在接口視圖下隻對當前端口進行配置,後者的配置優先級較高。
表1-27 全局配置IPv6組播組過濾器
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局配置IPv6組播組過濾器 |
group-policy ipv6-acl-number [ vlan vlan-list ] |
缺省情況下,未配置IPv6組播組過濾器,即主機可以加入任意合法的IPv6組播組 |
表1-28 在端口上配置IPv6組播組過濾器
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
在端口上配置IPv6組播組過濾器 |
mld-snooping group-policy ipv6-acl-number [ vlan vlan-list ] |
缺省情況下,未配置IPv6組播組過濾器,即主機可以加入任意合法的IPv6組播組 |
通過配置IPv6組播數據報文源端口過濾功能,可以允許或禁止端口作為IPv6組播源端口:
· 開啟該功能後,端口不能連接IPv6組播源,因為該端口將過濾掉所有的IPv6組播數據報文(但允許IPv6組播協議報文通過),因此隻能連接IPv6組播數據接收者。
· 關閉該功能後,端口既能連接IPv6組播源,也能連接IPv6組播數據接收者。
用戶既可在MLD-Snooping視圖下對指定端口進行全局配置,也可在接口視圖下隻對當前端口進行配置,二者的配置優先級相同。
表1-29 全局配置IPv6組播數據報文源端口過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
開啟指定端口的IPv6組播數據報文源端口過濾功能 |
source-deny port interface-list |
缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態 |
表1-30 在端口上配置IPv6組播數據報文源端口過濾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網接口視圖 |
interface interface-type interface-number |
- |
開啟當前端口的IPv6組播數據報文源端口過濾功能 |
mld-snooping source-deny |
缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態 |
未知IPv6組播數據報文是指在MLD Snooping轉發表中不存在對應轉發表項的那些IPv6組播數據報文:
· 當開啟了丟棄未知IPv6組播數據報文功能時,交換機收到未知IPv6組播數據報文,隻向其路由器端口轉發,不在VLAN內廣播。如果交換機沒有路由器端口,IPv6數據報文會被丟棄,不再轉發;
· 當關閉了丟棄未知IPv6組播數據報文功能時,二層設備將在未知IPv6組播數據報文所屬的VLAN內廣播該報文。
表1-31 在VLAN/VSI內配置丟棄未知IPv6組播數據報文
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入相應視圖 |
進入VLAN視圖 |
vlan vlan-id |
二者選其一 |
進入VSI視圖 |
vsi vsi-name |
||
在VLAN/VSI內開啟丟棄未知IPv6組播數據報文功能 |
mld-snooping drop-unknown |
缺省情況下,丟棄未知IPv6組播數據報文功能處於關閉狀態,即對未知IPv6組播數據報文進行廣播 |
當二層設備收到來自某IPv6組播組成員的MLD成員關係報告報文時,會將該報文轉發給與其直連的三層設備。這樣,當二層設備上存在屬於某IPv6組播組的多個成員時,與其直連的三層設備會收到這些成員發送的相同MLD成員關係報告報文。
當開啟了MLD成員關係報告報文抑製功能後,在一個查詢間隔內二層設備隻會把收到的某IPv6組播組內的第一個MLD成員關係報告報文轉發給三層設備,而不繼續向三層設備轉發來自同一IPv6組播組的其它MLD成員關係報告報文,這樣可以減少網絡中的報文數量。
表1-32 配置MLD成員關係報告報文抑製
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
開啟MLD成員關係報告報文抑製功能 |
report-aggregation |
缺省情況下,MLD成員關係報告報文抑製功能處於開啟狀態 |
本配置隻對動態組播組有效,對靜態組播組無效。
通過配置端口加入的IPv6組播組的最大數量,可以限製用戶點播組播節目的數量,從而控製了端口上的數據流量。
表1-33 配置端口加入的IPv6組播組最大數量
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置端口加入的IPv6組播組最大數量 |
mld-snooping group-limit limit [ vlan vlan-list ] |
缺省情況下,未對端口加入的IPv6組播組最大數量進行限製 |
在配置端口加入的IPv6組播組最大數量時,如果當前端口上的IPv6組播組數量已超過配置值,係統將把該端口相關的所有轉發表項從MLD Snooping轉發表中刪除,該端口下的主機都需要重新加入IPv6組播組,直至該端口上的IPv6組播組數量達到限製值為止。
本配置隻對動態組播組有效,對靜態組播組無效。
由於某些特殊的原因,當前二層設備或端口上通過的IPv6組播組數目有可能會超過二層設備或該端口的限定;另外,在某些特定的應用中,二層設備上新加入的IPv6組播組需要自動替換已存在的IPv6組播組(一個典型的應用就是“頻道切換”,即用戶通過加入一個新的IPv6組播組就能完成離開原IPv6組播組並切換到新IPv6組播組的動作)。
針對以上情況,可以在二層設備或者某些端口上開啟IPv6組播組替換功能。當二層設備或端口上加入的IPv6組播組數量已達到限定值時:
· 若開啟了IPv6組播組替換功能,則新加入的IPv6組播組會自動替代已存在的IPv6組播組,替代規則是替代IPv6地址最小的IPv6組播組;
· 若沒有開啟IPv6組播組替換功能,則自動丟棄新的MLD成員關係報告報文。
用戶既可在MLD-Snooping視圖下對所有端口進行全局配置,也可在接口視圖下隻對當前端口進行配置,後者的配置優先級較高。
表1-34 全局配置IPv6組播組替換功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局開啟IPv6組播組替換功能 |
overflow-replace [ vlan vlan-list ] |
缺省情況下,IPv6組播組替換功能處於關閉狀態 |
表1-35 在端口上配置IPv6組播組替換功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入二層以太網或二層聚合接口視圖 |
interface interface-type interface-number |
- |
在端口上開啟IPv6組播組替換功能 |
mld-snooping overflow-replace [ vlan vlan-list ] |
缺省情況下,IPv6組播組替換功能處於關閉狀態 |
通過開啟MLD Snooping主機跟蹤功能,可以使交換機能夠記錄正在接收IPv6組播數據的成員主機信息(包括主機的IPv6地址、加入IPv6組播組的運行時長和超時剩餘時間等),以便於網絡管理員對這些主機進行監控和管理。
表1-36 全局配置MLD Snooping主機跟蹤功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入MLD-Snooping視圖 |
mld-snooping |
- |
全局開啟MLD Snooping主機跟蹤功能 |
host-tracking |
缺省情況下,MLD Snooping主機跟蹤功能處於關閉狀態 |
表1-37 在VLAN內配置MLD Snooping主機跟蹤功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
進入VLAN視圖 |
vlan vlan-id |
- |
在VLAN內開啟MLD Snooping主機跟蹤功能 |
mld-snooping host-tracking |
缺省情況下,MLD Snooping主機跟蹤功能處於關閉狀態 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後MLD Snooping的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除MLD Snooping的信息。
表1-38 MLD Snooping顯示和維護
命令 |
|
顯示IPv6二層組播快速轉發表信息(獨立運行模式) |
display ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] [ ipv6-group-address ] [ slot slot-number ] |
顯示IPv6二層組播快速轉發表信息(IRF模式) |
display ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] [ ipv6-group-address ] [ chassis chassis-number slot slot-number ] |
顯示IPv6二層組播的IP組播組信息(獨立運行模式) |
display ipv6 l2-multicast ip [ group ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ slot slot-number ] |
顯示IPv6二層組播的IP組播組信息(IRF模式) |
display ipv6 l2-multicast ip [ group ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ chassis chassis-number slot slot-number ] |
顯示IPv6二層組播的IP轉發表信息(獨立運行模式) |
display ipv6 l2-multicast ip forwarding [ group ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ slot slot-number ] |
顯示IPv6二層組播的IP轉發表信息(IRF模式) |
display ipv6 l2-multicast ip forwarding [ group ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ chassis chassis-number slot slot-number ] |
顯示IPv6二層組播的MAC組播組信息(獨立運行模式) |
display ipv6 l2-multicast mac [ mac-address ] [ vlan vlan-id | vsi vsi-name ] [ slot slot-number ] |
顯示IPv6二層組播的MAC組播組信息(IRF模式) |
display ipv6 l2-multicast mac [ mac-address ] [ vlan vlan-id | vsi vsi-name ] [ chassis chassis-number slot slot-number ] |
顯示IPv6二層組播的MAC轉發表信息(獨立運行模式) |
display ipv6 l2-multicast mac forwarding [ mac-address ] [ vlan vlan-id | vsi vsi-name ] [ slot slot-number ] |
顯示IPv6二層組播的MAC轉發表信息(IRF模式) |
display ipv6 l2-multicast mac forwarding [ mac-address ] [ vlan vlan-id | vsi vsi-name ] [ chassis chassis-number slot slot-number ] |
顯示IPv6靜態組播MAC地址表信息 |
display mac-address [ mac-address [ vlan vlan-id ] | [ multicast ] [ vlan vlan-id ] [ count ] ] |
顯示MLD Snooping的狀態信息 |
display mld-snooping [ global | vlan vlan-id | vsi vsi-name ] |
顯示動態MLD Snooping組播組的信息(獨立運行模式) |
display mld-snooping group [ ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ verbose ] [ slot slot-number ] |
顯示動態MLD Snooping組播組的信息(IRF模式) |
display mld-snooping group [ ipv6-group-address ] [ vlan vlan-id | vsi vsi-name ] [ verbose ] [ chassis chassis-number slot slot-number ] |
顯示MLD Snooping 主機跟蹤信息(獨立運行模式) |
display mld-snooping host-tracking vlan vlan-id group ipv6-group-address [ slot slot-number ] |
顯示MLD Snooping 主機跟蹤信息(IRF模式) |
display mld-snooping host-tracking vlan vlan-id group ipv6-group-address [ chassis chassis-number slot slot-number ] |
顯示IPv6動態路由器端口的信息(獨立運行模式) |
display mld-snooping router-port [ vlan vlan-id | vsi vsi-name ] [ verbose ] [ slot slot-number ] |
顯示IPv6動態路由器端口的信息(IRF模式) |
display mld-snooping router-port [ vlan vlan-id | vsi vsi-name ] [ verbose ] [ chassis chassis-number slot slot-number ] |
顯示靜態MLD Snooping組播組的信息(獨立運行模式) |
display mld-snooping static-group [ ipv6-group-address ] [ vlan vlan-id ] [ verbose ] [ slot slot-number ] |
顯示靜態MLD Snooping組播組的信息(IRF模式) |
display mld-snooping static-group [ ipv6-group-address ] [ vlan vlan-id ] [ verbose ] [ chassis chassis-number slot slot-number ] |
顯示IPv6靜態路由器端口的信息(獨立運行模式) |
display mld-snooping static-router-port [ vlan vlan-id ] [ verbose ] [ slot slot-number ] |
顯示IPv6靜態路由器端口的信息(IRF模式) |
display mld-snooping static-router-port [ vlan vlan-id ] [ verbose ] [ chassis chassis-number slot slot-number ] |
顯示MLD Snooping監聽到的MLD報文和IPv6 PIM hello報文的統計信息 |
display mld-snooping statistics |
清除IPv6二層組播快速轉發表中的轉發項(獨立運行模式) |
reset ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] { ipv6-group-address | all } [ slot slot-number ] |
清除IPv6二層組播快速轉發表中的轉發項(IRF模式) |
reset ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] { ipv6-group-address | all } [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
清除動態MLD Snooping組播組的信息 |
reset mld-snooping group { ipv6-group-address | all } [ vlan vlan-id | vsi vsi-name ] |
清除IPv6動態路由器端口的信息 |
reset mld-snooping router-port { all | vlan vlan-id | vsi vsi-name } |
清除MLD Snooping監聽到的MLD報文和IPv6 PIM hello報文的統計信息 |
reset mld-snooping statistics |
有關display mac-address multicast命令的詳細介紹,請參見“IP組播命令參考”中的“IGMP Snooping”。
· 如圖1-4所示,Router A通過HundredGigE1/0/2接口連接IPv6組播源(Source),通過HundredGigE1/0/1接口連接Switch A;Router A上運行MLDv1,Switch A上運行版本1的MLD Snooping,並由Router A充當MLD查詢器。
· 通過配置,使Host A和Host B能且隻能接收發往IPv6組播組FF1E::101的IPv6組播數據,並且當Host A和Host B發生意外而臨時中斷接收IPv6組播數據時,發往IPv6組播組FF1E::101的IPv6組播數據也能不間斷地通過Switch A的接口HundredGigE1/0/3和HundredGigE1/0/4轉發出去;同時,使Switch A將收到的未知IPv6組播數據直接丟棄,避免在其所屬的VLAN 100內廣播。
圖1-4 基於VLAN的IPv6組策略及模擬主機加入配置組網圖
請按照圖1-4配置各接口的IPv6地址和前綴長度,具體配置過程略。
(2) 配置Router A
# 使能IPv6組播路由,在接口HundredGigE1/0/2上使能IPv6 PIM-DM,並在接口HundredGigE1/0/1上使能MLD。
<RouterA> system-view
[RouterA] ipv6 multicast routing
[RouterA-mrib6] quit
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] mld enable
[RouterA-HundredGigE1/0/1] quit
[RouterA] interface hundredgige 1/0/2
[RouterA-HundredGigE1/0/2] ipv6 pim dm
[RouterA-HundredGigE1/0/2] quit
(3) 配置Switch A
# 全局使能MLD Snooping。
<SwitchA> system-view
[SwitchA] mld-snooping
[SwitchA-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchA] vlan 100
[SwitchA-vlan100] port hundredgige 1/0/1 to hundredgige 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 basic 2001
[SwitchA-acl-ipv6-basic-2001] rule permit source ff1e::101 128
[SwitchA-acl-ipv6-basic-2001] quit
[SwitchA] mld-snooping
[SwitchA–mld-snooping] group-policy 2001 vlan 100
[SwitchA–mld-snooping] quit
# 在HundredGigE1/0/3和HundredGigE1/0/4上分別配置模擬主機加入IPv6組播組FF1E::101。
[SwitchA] interface hundredgige 1/0/3
[SwitchA-HundredGigE1/0/3] mld-snooping host-join ff1e::101 vlan 100
[SwitchA-HundredGigE1/0/3] quit
[SwitchA] interface hundredgige 1/0/4
[SwitchA-HundredGigE1/0/4] mld-snooping host-join ff1e::101 vlan 100
[SwitchA-HundredGigE1/0/4] quit
假設IPv6組播源分別向IPv6組播組FF1E::101和FF1E::202發送的IPv6組播數據,Host A和Host B也都申請加入這兩個IPv6組播組。
# 顯示Switch A上VLAN 100內動態MLD Snooping轉發表的信息。
[SwitchA] display mld-snooping group vlan 100
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (2 in total):
HGE1/0/3 (00:03:23)
HGE1/0/4 (00:04:10)
由此可見,Host A和Host B所在的端口HundredGigE1/0/4和HundredGigE1/0/3均已加入IPv6組播組FF1E::101,但都未加入IPv6組播組FF1E::202,這表明IPv6組播組過濾器已生效。
· 如圖1-5所示,Router A通過HundredGigE1/0/2接口連接IPv6組播源(Source),通過HundredGigE1/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上的端口HundredGigE1/0/3和HundredGigE1/0/5配置為IPv6組播組FF1E::101的靜態成員端口,可以增強IPv6組播數據在傳輸過程中的可靠性。
· 假設由於受STP等鏈路層協議的影響,為了避免出現環路,Switch A—Switch C的轉發路徑在正常情況下是阻斷的,IPv6組播數據隻能通過Switch A—Switch B—Switch C的路徑傳遞給連接在Switch C上的接收者;要求通過將Switch A的端口HundredGigE1/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,生成樹協議)的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“生成樹”。
圖1-5 基於VLAN的靜態端口配置組網圖
(1) 配置IPv6地址
請按照圖1-5配置各接口的IPv6地址和前綴長度,具體配置過程略。
(2) 配置Router A
# 使能IPv6組播路由,在接口HundredGigE1/0/2上使能IPv6 PIM-DM,並在接口HundredGigE1/0/1上使能MLD。
<RouterA> system-view
[RouterA] ipv6 multicast routing
[RouterA-mrib6] quit
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] mld enable
[RouterA-HundredGigE1/0/1] quit
[RouterA] interface hundredgige 1/0/2
[RouterA-HundredGigE1/0/2] ipv6 pim dm
[RouterA-HundredGigE1/0/2] quit
(3) 配置Switch A
# 全局使能MLD Snooping。
<SwitchA> system-view
[SwitchA] mld-snooping
[SwitchA-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/3添加到該VLAN中,並在該VLAN內使能MLD Snooping。
[SwitchA] vlan 100
[SwitchA-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/3
[SwitchA-vlan100] mld-snooping enable
[SwitchA-vlan100] quit
# 把HundredGigE1/0/3配置為靜態路由器端口。
[SwitchA] interface hundredgige 1/0/3
[SwitchA-HundredGigE1/0/3] mld-snooping static-router-port vlan 100
[SwitchA-HundredGigE1/0/3] quit
(4) 配置Switch B
# 全局使能MLD Snooping。
<SwitchB> system-view
[SwitchB] mld-snooping
[SwitchB-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1和HundredGigE1/0/2添加到該VLAN中,並在該VLAN內使能MLD Snooping。
[SwitchB] vlan 100
[SwitchB-vlan100] port hundredgige 1/0/1 hundredgige 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,把端口HundredGigE1/0/1到HundredGigE1/0/5添加到該VLAN中,並在該VLAN內使能MLD Snooping。
[SwitchC] vlan 100
[SwitchC-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/5
[SwitchC-vlan100] mld-snooping enable
[SwitchC-vlan100] quit
# 分別在端口HundredGigE1/0/3和HundredGigE1/0/5上配置靜態加入IPv6組播組FF1E::101。
[SwitchC] interface hundredgige 1/0/3
[SwitchC-HundredGigE1/0/3] mld-snooping static-group ff1e::101 vlan 100
[SwitchC-HundredGigE1/0/3] quit
[SwitchC] interface hundredgige 1/0/5
[SwitchC-HundredGigE1/0/5] mld-snooping static-group ff1e::101 vlan 100
[SwitchC-HundredGigE1/0/5] quit
# 顯示Switch A上VLAN 100內靜態路由器端口的信息。
[SwitchA] display mld-snooping static-router-port vlan 100
VLAN 100:
Router ports (1 in total):
HGE1/0/3
由此可見,Switch A上的端口HundredGigE1/0/3已經成為了靜態路由器端口。
# 顯示Switch C上VLAN 100內靜態MLD Snooping轉發表的信息。
[SwitchC] display mld-snooping static-group vlan 100
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (2 in total):
HGE1/0/3
HGE1/0/5
由此可見,Switch C上的端口HundredGigE1/0/3和HundredGigE1/0/5已經成為了IPv6組播組FF1E::101的靜態成員端口。
· 如圖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組播數據報文功能。
圖1-6 基於VLAN的MLD Snooping查詢器配置組網圖
(1) 配置Switch A
# 全局使能MLD Snooping。
<SwitchA> system-view
[SwitchA] mld-snooping
[SwitchA-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/3添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchA] vlan 100
[SwitchA-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/3
[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
# 全局使能MLD Snooping。
<SwitchB> system-view
[SwitchB] mld-snooping
[SwitchB-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchB] vlan 100
[SwitchB-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/4
[SwitchB-vlan100] mld-snooping enable
[SwitchB-vlan100] mld-snooping drop-unknown
[SwitchB-vlan100] quit
(3) 配置Switch C
# 全局使能MLD Snooping。
<SwitchC> system-view
[SwitchC] mld-snooping
[SwitchC-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/3添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchC] vlan 100
[SwitchC-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/3
[SwitchC-vlan100] mld-snooping enable
[SwitchC-vlan100] mld-snooping drop-unknown
[SwitchC-vlan100] quit
(4) 配置Switch D
# 全局使能MLD Snooping。
<SwitchD> system-view
[SwitchD] mld-snooping
[SwitchD-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/2添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchD] vlan 100
[SwitchD-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/2
[SwitchD-vlan100] mld-snooping enable
[SwitchD-vlan100] mld-snooping drop-unknown
[SwitchD-vlan100] quit
當MLD Snooping查詢器開始工作之後,除查詢器以外的所有交換機都能收到MLD普遍組查詢報文。
# 顯示Switch B上收到的MLD報文和IPv6 PIM hello報文的統計信息。
[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 IPv6 PIM hello: 0
Received error MLD messages: 0
· 如圖1-7所示,Router A通過HundredGigE1/0/2接口連接IPv6組播源(Source),通過HundredGigE1/0/1接口連接Switch A;Router A上運行MLDv1,Switch A上運行版本1的MLD Snooping,並由Router A充當MLD查詢器。
· 通過配置,使Switch A能夠代理下遊主機向Router A發送的MLD報告報文和離開報文,以及響應Router A發來的MLD查詢報文並向下遊主機轉發。
圖1-7 基於VLAN的MLD Snooping Proxy配置組網圖
(1) 配置IPv6地址
使能各設備的IPv6轉發功能,並按照圖1-7配置各接口的IPv6地址和前綴長度,具體配置過程略。
(2) 配置Router A
# 使能IPv6組播路由,在接口HundredGigE1/0/2上使能IPv6 PIM-DM,並在接口HundredGigE1/0/1上使能MLD。
<RouterA> system-view
[RouterA] ipv6 multicast routing
[RouterA-mrib6] quit
[RouterA] interface hundredgige 1/0/1
[RouterA-HundredGigE1/0/1] mld enable
[RouterA-HundredGigE1/0/1] ipv6 pim dm
[RouterA-HundredGigE1/0/1] quit
[RouterA] interface hundredgige 1/0/2
[RouterA-HundredGigE1/0/2] ipv6 pim dm
[RouterA-HundredGigE1/0/2] quit
(3) 配置Switch A
# 全局使能MLD Snooping。
<SwitchA> system-view
[SwitchA] mld-snooping
[SwitchA-mld-snooping] quit
# 創建VLAN 100,把端口HundredGigE1/0/1到HundredGigE1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並使能MLD Snooping Proxy。
[SwitchA] vlan 100
[SwitchA-vlan100] port hundredgige 1/0/1 to hundredgige 1/0/4
[SwitchA-vlan100] mld-snooping enable
[SwitchA-vlan100] mld-snooping proxy enable
[SwitchA-vlan100] quit
當配置完成後,Host A和Host B分別發送組地址為FF1E::101的MLD加入報文,Switch A收到該報文後通過其路由器端口HundredGigE1/0/1向Router A也發送該組的加入報文。通過使用display mld-snooping group和display mld group命令可以分別查看MLD Snooping組和MLD組的信息,例如:
# 查看Switch A上MLD Snooping組的信息。
[SwitchA] display mld-snooping group
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (2 in total):
HGE1/0/3 (00:04:09)
HGE1/0/4 (00:03:06)
# 查看Router A上MLD組的信息。
[RouterA] display mld group
MLD groups in total: 1
HundredGigE1/0/1(2001::1):
MLD groups reported in total: 1
Group address: FF1E::101
Last reporter: FE80::2FF:FFFF:FE00:1
Uptime: 00:00:31
Expires: 00:03:48
當Host A離開IPv6組播組FF1E::101時,向Switch A發送該組的MLD離開報文,但由於Host B仍未離開該組,因此Switch A並不會刪除該組,也不會向Router A發送該組的離開報文,隻是在該組對應轉發表項的成員端口列表中將端口HundredGigE1/0/4刪除。通過使用display mld-snooping group命令可以查看MLD Snooping組的信息,例如:
# 查看Switch A上MLD Snooping組的信息。
[SwitchA] display mld-snooping group
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (1 in total):
HGE1/0/3 (00:01:23)
二層設備不能實現MLD snooping二層組播功能。
MLD Snooping沒有使能。
(1) 使用display mld-snooping命令查看MLD Snooping的運行狀態。
(2) 如果是沒有使能MLD Snooping,則需先在係統視圖下使用mld-snooping命令全局使能MLD Snooping,然後在VLAN視圖/VSI視圖下使用mld-snooping enable命令使能VLAN內的MLD Snooping。
(3) 如果隻是沒有在相應VLAN/VSI下使能MLD Snooping,則隻需在VLAN視圖/VSI視圖下使用mld-snooping enable命令使能VLAN/VSI內的MLD Snooping。
配置了IPv6組播組策略,隻允許主機加入某些特定的IPv6組播組,但主機仍然可以收到發往其它IPv6組播組的IPv6組播數據。
· IPv6 ACL規則配置不正確;
· IPv6組播組策略應用不正確;
· 沒有開啟丟棄未知IPv6組播數據報文的功能,使得屬於過濾策略之外的IPv6組播數據報文(即未知IPv6組播數據報文)被廣播。
(1) 使用display acl ipv6命令查看所配置的IPv6 ACL規則,檢查其是否與所要實現的IPv6組播組過濾策略相符合。
(2) 在MLD-Snooping視圖或相應的接口視圖下使用display this命令查看是否應用了正確的IPv6組播組策略。如果沒有,則使用group-policy或mld-snooping group-policy命令應用正確的IPv6組播組策略。
(3) 使用display mld-snooping命令查看是否已開啟丟棄未知IPv6組播數據報文的功能。如果沒有開啟,則使用mld-snooping drop-unknown命令開啟丟棄未知IPv6組播數據報文功能。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!