08-MLD Snooping配置
本章節下載: 08-MLD Snooping配置 (633.70 KB)
目 錄
1.7.2 配置MLD Snooping轉發表項的全局最大數量
1.13.1 基於VLAN的IPv6組策略及模擬主機加入配置舉例
1.13.3 基於VLAN的MLD Snooping查詢器配置舉例
MLD Snooping(Multicast Listener Discovery Snooping,組播偵聽者發現協議窺探)運行在二層設備上,通過偵聽三層設備與主機之間的MLD報文來生成二層組播轉發表,從而管理和控製IPv6組播數據報文的轉發,實現IPv6組播數據報文在二層的按需分發。
運行MLD Snooping的二層設備通過對收到的MLD報文進行分析,為端口和MAC組播地址建立起映射關係,並根據這樣的映射關係轉發IPv6組播數據。
如圖1-1所示,當二層設備沒有運行MLD Snooping時,IPv6組播數據報文在二層網絡中被廣播;當二層設備運行了MLD Snooping後,已知IPv6組播組的組播數據報文不會在二層網絡中被廣播,而被組播給指定的接收者。
圖1-1 二層設備運行MLD Snooping前後的對比
MLD Snooping通過二層組播將信息隻轉發給有需要的接收者,可以帶來以下好處:
· 減少了二層網絡中的廣播報文,節約了網絡帶寬;
· 增強了IPv6組播信息的安全性;
· 為實現對每台主機的單獨計費帶來了方便。
如圖1-2所示,Device 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的Port A1端口和Switch B的Port B1端口。
根據來源不同,路由器端口可分為:
· 動態路由器端口:所有收到MLD普遍組查詢報文(源地址非0::0)或IPv6 PIM Hello報文的端口,都被維護為動態路由器端口。這些端口被記錄在動態路由器端口列表中,每個端口都有一個老化定時器。在老化定時器超時前,動態路由器端口如果收到了MLD普遍組查詢報文(源地址非0::0)或IPv6 PIM Hello報文,該定時器將被重置;否則,該端口將被從動態路由器端口列表中刪除。
· 靜態路由器端口:通過命令行手工配置的路由器端口稱為靜態路由器端口,這些端口被記錄在靜態路由器端口列表中。靜態路由器端口隻能通過命令行手工刪除,不會被老化。
· 本文中提到的路由器端口都是指二層設備上朝向三層組播設備的端口,而不是指路由器上的端口。
· 如果沒有特別指明,本文中提到的路由器端口包括動態路由器端口和靜態路由器端口。
在運行了MLD Snooping的二層設備上,朝向下遊組播組成員的端口稱為成員端口。如圖1-2中Switch A的Port A2和Port A3端口,以及Switch B的Port B2端口。
根據來源不同,成員端口也可分為:
· 動態成員端口:所有收到MLD成員關係報告報文的端口,都被維護為動態成員端口。這些端口被記錄在動態MLD Snooping轉發表中,每個端口都有一個老化定時器。在老化定時器超時前,動態成員端口如果收到了MLD成員關係報告報文,該定時器將被重置;否則,該端口將被從動態MLD Snooping轉發表中刪除。
· 靜態成員端口:通過命令行手工配置的成員端口稱為靜態成員端口,這些端口被記錄在靜態MLD Snooping轉發表中。靜態成員端口隻能通過命令行手工刪除,不會被老化。
如果沒有特別指明,本文中提到的成員端口包括動態成員端口和靜態成員端口。
運行了MLD Snooping的二層設備對不同MLD動作的具體處理方式如下:
MLD查詢器定期向本地網段內的所有主機與設備(FF02::1)發送MLD普遍組查詢報文,以查詢該網段有哪些IPv6組播組的成員。
在收到MLD普遍組查詢報文時,二層設備將其通過VLAN內除接收端口以外的其它所有端口轉發出去,並對該報文的接收端口做如下處理:
· 如果在動態路由器端口列表中已包含該動態路由器端口,則重置其老化定時器。
· 如果在動態路由器端口列表中尚未包含該動態路由器端口,則將其添加到動態路由器端口列表中,並啟動其老化定時器。
以下情況,主機會向MLD查詢器發送MLD成員關係報告報文:
· 當IPv6組播組的成員主機收到MLD查詢報文後,會回複MLD成員關係報告報文。
· 如果主機要加入某個IPv6組播組,它會主動向MLD查詢器發送MLD成員關係報告報文以聲明加入該IPv6組播組。
在收到MLD成員關係報告報文時,二層設備將其通過VLAN內的所有路由器端口轉發出去,從該報文中解析出主機要加入的IPv6組播組地址,並對該報文的接收端口做如下處理:
· 如果不存在該IPv6組播組所對應的轉發表項,則創建轉發表項,將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;
· 如果已存在該IPv6組播組所對應的轉發表項,但其出端口列表中不包含該端口,則將該端口作為動態成員端口添加到出端口列表中,並啟動其老化定時器;
· 如果已存在該IPv6組播組所對應的轉發表項,且其出端口列表中已包含該動態成員端口,則重置其老化定時器。
二層設備不會將MLD成員關係報告報文通過非路由器端口轉發出去,因為根據主機上的MLD成員關係報告抑製機製,如果非路由器端口下還有該IPv6組播組的成員主機,則這些主機在收到該報告報文後便抑製了自身的報告,從而使二層設備無法獲知這些端口下還有該IPv6組播組的成員主機。有關主機上的MLD成員關係報告抑製機製的詳細介紹,請參見“IP組播配置指導”中的“MLD”。
當主機離開IPv6組播組時,會通過發送MLD離開組報文,以通知三層組播設備自己離開了某個IPv6組播組。當二層設備從某動態成員端口上收到MLD離開組報文時,首先判斷要離開的IPv6組播組所對應的轉發表項是否存在,以及該IPv6組播組所對應轉發表項的出端口列表中是否包含該接收端口:
· 如果不存在該IPv6組播組對應的轉發表項,或者該IPv6組播組對應轉發表項的出端口列表中不包含該端口,二層設備不會向任何端口轉發該報文,而將其直接丟棄;
· 如果存在該IPv6組播組對應的轉發表項,且該IPv6組播組對應轉發表項的出端口列表中除該端口還有別的成員端口存在,二層設備不會向任何端口轉發該報文,而將其直接丟棄。同時,由於並不知道該接收端口下是否還有該IPv6組播組的其它成員,所以二層設備不會立刻把該端口從該IPv6組播組所對應轉發表項的出端口列表中刪除,而是向該端口發送MLD特定組查詢報文,並根據MLD特定組查詢報文調整該端口的老化定時器(老化時間為2×MLD特定組查詢報文的發送間隔);
· 如果存在該IPv6組播組對應的轉發表項,且該IPv6組播組對應轉發表項的出端口列表中隻有該端口,二層設備會將該報文通過VLAN內的所有路由器端口轉發出去。同時,由於並不知道該接收端口下是否還有該IPv6組播組的其它成員,所以二層設備不會立刻把該端口從該IPv6組播組所對應轉發表項的出端口列表中刪除,而是向該端口發送MLD特定組查詢報文,並根據MLD特定組查詢報文調整該端口的老化定時器(老化時間為2×MLD特定組查詢報文的發送間隔)。
當MLD查詢器收到MLD離開組報文後,從中解析出主機要離開的IPv6組播組的地址,並通過接收端口向該IPv6組播組發送MLD特定組查詢報文。二層設備在收到MLD特定組查詢報文後,將其通過VLAN內的所有路由器端口和該IPv6組播組的所有成員端口轉發出去。對於MLD離開組報文的接收端口(假定為動態成員端口),二層設備在其老化時間內:
· 如果從該端口收到了主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下還有該IPv6組播組的成員,於是重置其老化定時器;
· 如果沒有從該端口收到主機響應該特定組查詢的MLD成員關係報告報文,則表示該端口下已沒有該IPv6組播組的成員。當該端口的老化定時器超時後,將其從該IPv6組播組所對應轉發表項的出端口列表中刪除。
與MLD Snooping相關的協議規範有:
· RFC 4541:Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches
本特性的支持情況與設備型號有關,請以設備的實際情況為準。
款型 |
說明 |
· 如下款型的固定二層接口上支持: ¡ MSR810、MSR810-W、MSR810-W-DB、MSR810-LM、MSR810-W-LM、MSR810-10-PoE、MSR810-LM-HK、MSR810-W-LM-HK、MSR810-LM-CNDE-SJK ¡ MSR810-LMS-EA、MSR810-LME ¡ MSR2600-6-X1、MSR2600-10-X1、MSR2600-15-X1、MSR2600-15-X1-T ¡ MSR3600-28、MSR3600-51、MSR3600-28-SI、MSR3600-51-SI ¡ MSR3600-28-X1、MSR3600-28-X1-DP、MSR3600-51-X1、MSR3600-51-X1-DP ¡ MSR3600-28-G-DP、MSR3600-51-G-DP ¡ MSR3610-I-DP、MSR3610-IE-DP、MSR3610-IE-ES、MSR3610-I-IG、MSR3610-IE-IG ¡ MSR810-W-WiNet、MSR810-LM-WiNet ¡ MSR830-4LM-WiNet ¡ MSR830-5BEI-WiNet、MSR830-6EI-WiNet、MSR830-10BEI-WiNet ¡ MSR830-6BHI-WiNet、MSR830-10BHI-WiNet ¡ MSR2600-6-WiNet 、MSR2600-10-X1-WiNet ¡ MSR3600-28-WiNet ¡ MSR2630-XS ¡ MSR3600-28-XS ¡ MSR3610-I-XS ¡ MSR3610-IE-XS · 安裝了二層接口模塊的款型上支持 |
接口模塊信息及適配關係請參見“接口模塊手冊”。 |
對於從Secondary VLAN中收到的主機加入請求,相關的MLD Snooping轉發表項都將維護在Primary VLAN中,因此MLD Snooping功能隻需在Primary VLAN中配置既可,在Secondary VLAN中即使配置了也不會生效。有關Primary VLAN和Secondary VLAN的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“Private VLAN”。
二層聚合接口與其各成員端口上的配置互不影響,且成員端口上的配置隻有當該端口退出聚合組後才會生效,二層聚合接口上的配置也不會參與聚合計算。
使能全局MLD Snooping後,若還需在某指定VLAN內配置其他MLD Snooping功能,則必須在這些VLAN下使能MLD Snooping。
對於既可在VLAN視圖下配置,又可在MLD-Snooping視圖下對多個VLAN進行配置的功能,兩個視圖下配置的優先級相同,最新配置生效。
對於既可在VLAN視圖下配置,又可在MLD-Snooping視圖下對所有VLAN配置的功能,VLAN視圖下的配置的優先級較高。
對於既可在接口視圖下配置,又可在MLD-Snooping視圖下配置的功能,MLD-Snooping視圖下的配置對指定VLAN內的所有端口生效,接口視圖下配置隻對當前接口生效,且接口視圖下的配置優先級較高。
MSR3600-28-G-DP和MSR3600-51-G-DP設備在配置MLD Snooping版本為2時,不支持指定源的二層組播轉發,依舊按照任意源組播的方式轉發。
基於VLAN的MLD Snooping的配置任務如下:
(3) (可選)配置MLD Snooping基本功能
(4) (可選)配置MLD Snooping端口功能
¡ 配置靜態成員端口
¡ 配置模擬主機加入
(5) (可選)配置MLD Snooping查詢器
(6) (可選)調整MLD報文
(7) (可選)配置MLD Snooping策略
隻有在開啟了設備的MLD Snooping特性後,才能進行其它的MLD Snooping相關配置。
(1) 進入係統視圖。
system-view
(2) 開啟設備的MLD Snooping特性,並進入MLD-Snooping視圖。
mld-snooping
缺省情況下,設備的MLD Snooping特性處於關閉狀態。
用戶既可在MLD-Snooping視圖下對單個或多個VLAN進行配置,也可在VLAN視圖下隻對當前VLAN進行配置,二者的配置優先級相同。
在VLAN內使能了MLD Snooping之後,MLD Snooping隻在屬於該VLAN的端口上生效。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 使能單個或多個VLAN的MLD Snooping。
enable vlan vlan-list
缺省情況下,VLAN內的MLD Snooping處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 使能該VLAN的MLD Snooping。
mld-snooping enable
缺省情況下,VLAN內的MLD Snooping處於關閉狀態。
配置MLD Snooping的版本,實際上就是配置MLD Snooping可以處理的MLD報文的版本:
· 當MLD Snooping的版本為1時,MLD Snooping能夠對MLDv1的報文和MLDv2的查詢報文進行處理,對MLDv2的成員關係報文則不進行處理,而是在VLAN內將其廣播;
· 當MLD Snooping的版本為2時,MLD Snooping能夠對MLDv1和MLDv2的報文進行處理。
當MLD Snooping的版本由版本2切換到版本1時,係統將清除所有通過動態加入的MLD Snooping轉發表項;對於在版本2下通過手工配置而靜態加入的MLD Snooping轉發表項,則分為以下兩種情況進行不同的處理:
· 如果配置的僅僅是靜態加入IPv6組播組,而沒有指定IPv6組播源,則這些轉發表項將不會被清除;
· 如果配置的是指定了IPv6組播源的靜態加入IPv6組播源組,則這些轉發表項將會被清除,並且當再次切換回版本2時,這些轉發表項將被重新恢複。
有關靜態加入的詳細配置,請參見“1.8.2 配置靜態成員端口”。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 配置指定VLAN內的MLD Snooping的版本。
version version-number vlan vlan-list
缺省情況下,VLAN內MLD Snooping的版本為1。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內配置MLD Snooping的版本。
mld-snooping version version-number
缺省情況下,VLAN內MLD Snooping的版本為1。
用戶可以調整MLD Snooping轉發表項(包括動態表項和靜態表項)的全局最大數量,當設備上維護的表項數量達到或超過最大數量後,係統不再創建新的表項,也不會主動刪除多餘表項,直至有表項被老化或被手工刪除,所以當設備上維護的表項數量達到或超過最大數量後,為避免此後無法再創建新的表項,建議用戶手工刪除多餘表項。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 配置MLD Snooping轉發表項的全局最大數量。
entry-limit limit
缺省情況下,MLD Snooping轉發表項的全局最大數量為4294967295。
合理配置MLD特定組查詢的最大響應時間,既可以使主機對MLD查詢報文做出快速響應,又可以減少由於定時器同時超時,造成大量主機同時發送報告報文而引起的網絡擁塞。
二層設備所發送的MLD特定組查詢報文,其報文的最大響應時間字段由所配置的MLD特定組查詢報文的發送間隔來填充,在主機在收到MLD特定組查詢報文後,會為其所加入的該IPv6組播組啟動一個定時器,定時器的值在0到最大響應時間(該時間值由主機從所收到的MLD特定組查詢報文的最大響應時間字段獲得)中隨機選定,當定時器的值減為0時,主機就會向該定時器對應的IPv6組播組發送MLD成員關係報告報文。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局配置MLD特定組查詢報文的發送間隔。
last-listener-query-interval interval
缺省情況下,MLD特定組查詢報文的發送間隔為1秒。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內配置MLD特定組查詢報文的發送間隔。
mld-snooping last-listener-query-interval interval
缺省情況下,MLD特定組查詢報文的發送間隔為1秒。
對於動態路由器端口,如果在其老化時間內沒有收到MLD普遍組查詢報文或者IPv6 PIM Hello報文,二層設備將把該端口從動態路由器端口列表中刪除。
對於動態成員端口,如果在其老化時間內沒有收到該IPv6組播組的MLD成員關係報告報文,二層設備將把該端口從該IPv6組播組所對應轉發表的出端口列表中刪除。
· 請根據網絡環境合理設置動態端口的老化時間,比如網絡中IPv6組播組成員變動比較頻繁,可以把動態成員端口老化時間設置小一些,避免一些無效表項老化時間過長。
· 如果動態路由器端口收到的是IPv6 PIMv2 Hello報文,那麼該端口的老化時間將由IPv6 PIMv2 Hello報文所攜帶的參數決定,而不受本節配置的影響。
· 如果二層設備向動態成員端口主動發送MLD特定組查詢報文,則該端口的老化時間將根據該MLD特定組查詢報文進行調整,調整的老化時間為2×MLD特定組查詢報文的發送間隔。二層設備MLD特定組查詢報文發送間隔的配置,請參見“1.7.3 配置MLD特定組查詢報文的發送間隔”。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局配置動態路由器端口老化時間。
router-aging-time seconds
缺省情況下,動態路由器端口的老化時間為260秒。
(4) 全局配置動態成員端口老化時間。
host-aging-time seconds
缺省情況下,動態成員端口的老化時間為260秒。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內配置動態路由器端口老化時間。
mld-snooping router-aging-time seconds
缺省情況下,動態路由器端口的老化時間為260秒。
(4) 在VLAN內配置動態成員端口老化時間。
mld-snooping host-aging-time seconds
缺省情況下,動態成員端口的老化時間為260秒。
如果某端口所連接的主機需要固定接收發往某IPv6組播組的IPv6組播數據,可以配置該端口靜態加入該IPv6組播組,成為靜態成員端口。靜態成員端口不會對MLD查詢器發出的查詢報文進行響應;當配置靜態成員端口或取消靜態成員端口的配置時,端口也不會主動發送MLD成員關係報告報文或MLD離開組報文。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 配置靜態成員端口。
mld-snooping static-group ipv6-group-address [ source-ip ipv6-source-address ] vlan vlan-id
缺省情況下,端口不是靜態成員端口。
可以通過將二層設備上的端口配置為靜態路由器端口,從而使二層設備上收到的所有IPv6組播數據可以通過該端口被轉發出去。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 配置靜態路由器端口。
mld-snooping static-router-port vlan vlan-id
缺省情況下,端口不是靜態路由器端口。
在二層設備的端口上配置了模擬主機加入後,該模擬主機就可以模仿真實的IPv6組播組成員主機,對MLD查詢器發出的查詢報文進行響應,包括:
· 啟動模擬主機時,該端口會主動發送一個MLD成員關係報告報文。
· 在模擬主機的運行過程中,當收到MLD查詢報文時,該端口會響應一個MLD成員關係報告報文。
· 停止模擬主機時,該端口會發送一個MLD離開組報文。
在二層設備的端口上配置了模擬主機加入後,模擬主機所采用的MLD版本與MLD Snooping的版本一致,並且該端口將作為動態成員端口參與動態成員端口的老化過程。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 配置模擬主機加入。
mld-snooping host-join ipv6-group-address [ source-ip ipv6-source-address ] vlan vlan-id
缺省情況下,未配置模擬主機加入。
端口快速離開功能是指當端口收到主機發來的離開指定IPv6組播組的MLD離開組報文時,直接將該端口從相應轉發表項的出端口列表中刪除。此後,二層設備不會向該端口發送或轉發針對該IPv6組播組的MLD特定組查詢報文。
對於一個VLAN,隻有當一個端口下隻有一個接收者時,才建議配置本功能;否則,當一個端口下有多個接收者時,其中一個接收者的離開會觸發該端口的快速離開,從而導致屬於同一IPv6組播組的其它接收者無法收到IPv6組播數據。
同時開啟了二層和三層組播功能的網絡中,當端口上的組播組成員需要快速離開時,隻需通過本功能開啟二層組播的端口快速離開功能,不建議同時開啟三層組播的IPv6組播組成員快速離開功能(通過mld fast-leave命令),否則可能會導致同VLAN內的其他端口上組播業務中斷。有關mld fast-leave命令的詳細介紹,請參見“IP組播命令參考”中的“MLD”。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局開啟端口快速離開功能。
fast-leave [ vlan vlan-list ]
缺省情況下,端口快速離開功能處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 在端口上開啟端口快速離開功能。
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) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 禁止端口成為動態路由器端口。
mld-snooping router-port-deny [ vlan vlan-list ]
缺省情況下,端口可以成為動態路由器端口。
在運行了MLD的IPv6組播網絡中,會有一台三層組播設備充當MLD查詢器,負責發送MLD查詢報文,使三層組播設備能夠在網絡層建立並維護IPv6組播轉發表項,從而在網絡層正常轉發IPv6組播數據。
但是,在一個沒有三層組播設備的網絡中,由於二層設備並不支持MLD,因此無法實現MLD查詢器的相關功能。為了解決這個問題,可以在二層設備上開啟MLD Snooping查詢器,使二層設備能夠在數據鏈路層建立並維護IPv6組播轉發表項,從而在數據鏈路層正常轉發IPv6組播數據。
請避免在運行了MLD的網絡中配置MLD Snooping查詢器,因為盡管MLD Snooping查詢器並不參與MLD查詢器的選舉,但在運行了MLD的網絡中,配置MLD Snooping查詢器不但沒有實際的意義,反而可能會由於其發送的MLD普遍組查詢報文的源IPv6地址較小而影響MLD查詢器的選舉。有關MLD查詢器的詳細介紹,請參見“IP組播配置指導”中的“MLD”。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 開啟MLD Snooping查詢器。
mld-snooping querier
缺省情況下,MLD Snooping查詢器處於關閉狀態。
可以根據網絡的實際情況來修改MLD普遍組查詢報文的發送間隔。
合理配置MLD普遍組查詢的最大響應時間,既可以使主機對MLD查詢報文做出快速響應,又可以減少由於定時器同時超時,造成大量主機同時發送報告報文而引起的網絡擁塞。
對於MLD普遍組查詢報文,其報文最大響應時間字段由所配置的MLD普遍組查詢的最大響應時間來填充,在主機收到MLD普遍組查詢報文後,主機會為其所加入的每個IPv6組播組都啟動一個定時器,定時器的值在0到最大響應時間(該時間值由主機從所收到的MLD普遍組查詢報文的最大響應時間字段獲得)中隨機選定,當定時器的值減為0時,主機就會向該定時器對應的IPv6組播組發送MLD成員關係報告報文。
為避免誤刪IPv6組播組成員,請確保MLD普遍組查詢報文的發送間隔大於MLD普遍組查詢的最大響應時間,否則配置雖能生效但係統會給出提示。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局配置MLD普遍組查詢的最大響應時間。
max-response-time seconds
缺省情況下,MLD普遍組查詢的最大響應時間為10秒。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內配置MLD普遍組查詢報文的發送間隔。
mld-snooping query-interval interval
缺省情況下,MLD普遍組查詢報文的發送間隔為125秒。
(4) 在VLAN內配置MLD普遍組查詢的最大響應時間。
mld-snooping max-response-time seconds
缺省情況下,MLD普遍組查詢的最大響應時間為10秒。
用戶可以通過本配置改變MLD Snooping查詢器發送的MLD查詢報文的源IPv6地址。如果本網段內存在別的MLD查詢器,MLD查詢報文源IPv6地址的改變可能會影響網段內MLD查詢器的選舉。
用戶也可以改變模擬主發送的MLD成員關係報告報文或MLD離開組報文的源IPv6地址。
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 配置MLD普遍組查詢報文的源IPv6地址。
mld-snooping general-query source-ip ipv6-address
缺省情況下,MLD普遍組查詢報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001。
(4) 配置MLD特定組查詢報文的源IPv6地址。
mld-snooping special-query source-ip ipv6-address
缺省情況下,如果收到過MLD普遍組查詢報文,則以其源IPv6地址作為MLD特定組查詢報文的源IPv6地址;否則,采用當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001。
(5) 配置MLD成員關係報告報文的源IPv6地址。
mld-snooping report source-ip ipv6-address
缺省情況下,MLD成員關係報告報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001。
(6) 配置MLD離開組報文的源IPv6地址。
mld-snooping done source-ip ipv6-address
缺省情況下,MLD離開組報文的源IPv6地址為當前VLAN接口的IPv6鏈路本地地址;若當前VLAN接口沒有IPv6鏈路本地地址,則采用FE80::02FF:FFFF:FE00:0001。
當二層設備的出端口發生擁塞時,二層設備通過識別報文的802.1p優先級,優先發送優先級較高的報文。用戶可以通過本配置改變MLD報文(包括本設備生成的以及途經本設備的)的802.1p優先級。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局配置MLD報文的802.1p優先級。
dot1p-priority priority
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內配置MLD報文的802.1p優先級。
mld-snooping dot1p-priority priority
在使能了MLD Snooping的二層設備上,通過配置IPv6組播組過濾器,可以限製用戶對組播節目的點播。本配置隻對動態組播組有效,對靜態組播組無效。
在實際應用中,配置本功能後,當用戶點播某個組播節目時,主機會發起一個MLD成員關係報告報文,該報文將在二層設備上接受IPv6組播組過濾器的檢查。隻有通過了檢查,二層設備才會將該主機所屬的端口加入到出端口列表中,用戶才能收到所點播節目的組播流量。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局配置IPv6組播組過濾器。
group-policy ipv6-acl-number [ vlan vlan-list ]
缺省情況下,未配置IPv6組播組過濾器,即主機可以加入任意合法的IPv6組播組。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 在端口上配置IPv6組播組過濾器。
mld-snooping group-policy ipv6-acl-number [ vlan vlan-list ]
缺省情況下,未配置IPv6組播組過濾器,即主機可以加入任意合法的IPv6組播組。
通過配置IPv6組播數據報文源端口過濾功能,可以允許或禁止端口作為IPv6組播源端口:
· 開啟該功能後,端口不能連接IPv6組播源,因為該端口將過濾掉所有的IPv6組播數據報文(但允許IPv6組播協議報文通過),因此隻能連接IPv6組播數據接收者。
· 關閉該功能後,端口既能連接IPv6組播源,也能連接IPv6組播數據接收者。
設備各款型對於本節所描述的特性的支持情況有所不同,詳細差異信息如下:
款型 |
說明 |
· 如下款型的固定二層接口上支持: ¡ MSR810、MSR810-W、MSR810-W-DB、MSR810-LM、MSR810-W-LM、MSR810-10-PoE、MSR810-LM-HK、MSR810-W-LM-HK、MSR810-LM-CNDE-SJK ¡ MSR2600-6-X1、MSR2600-10-X1、MSR2600-15-X1、MSR2600-15-X1-T ¡ MSR3600-28、MSR3600-51、MSR3600-28-SI、MSR3600-51-SI ¡ MSR3600-28-X1、MSR3600-28-X1-DP、MSR3600-51-X1、MSR3600-51-X1-DP ¡ MSR3610-I-DP、MSR3610-IE-DP、MSR3610-IE-ES、MSR3610-I-IG、MSR3610-IE-IG ¡ MSR2600-10-X1-WiNet、MSR3600-28-WiNet ¡ MSR2630-XS ¡ MSR3600-28-XS ¡ MSR3610-I-XS ¡ MSR3610-IE-XS · 安裝了二層接口模塊的款型上支持 |
接口模塊信息及適配關係請參見“接口模塊手冊”。 |
配置IPv6組播數據報文源端口過濾在全局配置或在端口上配置的優先級相同,最新配置生效。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 開啟指定端口的IPv6組播數據報文源端口過濾功能。
source-deny port interface-list
缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網接口視圖。
interface interface-type interface-number
(3) 開啟當前端口的IPv6組播數據報文源端口過濾功能。
mld-snooping source-deny
缺省情況下,IPv6組播數據報文源端口過濾功能處於關閉狀態。
未知IPv6組播數據報文是指在MLD Snooping轉發表中不存在對應轉發表項的那些IPv6組播數據報文:
· 當開啟了丟棄未知IPv6組播數據報文功能時,二層設備隻向其路由器端口轉發未知IPv6組播數據報文,不在VLAN內廣播;如果二層設備沒有路由器端口,未知IPv6組播數據報文會被丟棄,不再轉發。
· 當關閉了丟棄未知IPv6組播數據報文功能時,二層設備將在未知IPv6組播數據報文所屬的VLAN內廣播該報文。
在開啟了丟棄未知IPv6組播數據報文功能之後,未知IPv4組播數據報文也將被丟棄。
在VLAN開啟了丟棄未知IPv6組播數據報文的功能之後,仍會向該VLAN內的其它路由器端口轉發未知IPv6組播數據報文。
MSR3600-28-G-DP、MSR3600-51-G-DP設備配置本命令後,若已知IPv6組播和未知IPv6組播映射到同一個組播MAC,則該未知IPv6組播報文不會被丟棄
(1) 進入係統視圖。
system-view
(2) 進入VLAN視圖。
vlan vlan-id
(3) 在VLAN內開啟丟棄未知IPv6組播數據報文功能。
mld-snooping drop-unknown
缺省情況下,丟棄未知IPv6組播數據報文功能處於關閉狀態,即對未知IPv6組播數據報文進行廣播。
設備各款型對於本節所描述的特性的支持情況有所不同,詳細差異信息如下:
款型 |
說明 |
· 如下款型的固定二層接口上支持: ¡ MSR810、MSR810-W、MSR810-W-DB、MSR810-LM/810-W-LM、MSR810-10-PoE、MSR810-LM-HK、MSR810-W-LM-HK、MSR810-LM-CNDE-SJK ¡ MSR810-LMS-EA、MSR810-LME ¡ MSR1104S-W、MSR1104S-W-CAT6 ¡ MSR2600-6-X1、2600-10-X1、MSR2600-15-X1、MSR2600-15-X1-T ¡ MSR3600-28、MSR3600-51、MSR3600-28-SI、MSR3600-51-SI ¡ MSR3600-28-X1、MSR3600-28-X1-DP、MSR3600-51-X1、MSR600-51-X1-DP ¡ MSR3600-28-G-DP、MSR3600-51-G-DP ¡ MSR3610-I-DP、MSR3610-IE-DP、MSR3610-IE-ES、MSR3610-I-IG、MSR3610-IE-IG ¡ MSR810-W-WiNet、MSR810-LM-WiNet ¡ MSR830-4LM-WiNet ¡ MSR830-5BEI-WiNet、MSR830-6EI-WiNet、MSR830-10BEI-WiNet ¡ MSR830-6BHI-WiNet、MSR830-10BHI-WiNet ¡ MSR2600-6-WiNet 、MSR2600-10-X1-WiNet ¡ MSR3600-28-WiNet ¡ MSR2630-XS ¡ MSR3600-28-XS ¡ MSR3610-I-XS ¡ MSR3610-IE-XS · 安裝了二層接口模塊的款型上支持 |
接口模塊信息及適配關係請參見“接口模塊手冊”。 |
當二層設備收到來自某IPv6組播組成員的MLD成員關係報告報文時,會將該報文轉發給與其直連的三層設備。這樣,當二層設備上存在屬於某IPv6組播組的多個成員時,與其直連的三層設備會收到這些成員發送的相同MLD成員關係報告報文。
當開啟了MLD成員關係報告報文抑製功能後,在一個查詢間隔內二層設備隻會把收到的某IPv6組播組內的第一個MLD成員關係報告報文轉發給三層設備,而不繼續向三層設備轉發來自同一IPv6組播組的其它MLD成員關係報告報文,這樣可以減少網絡中的報文數量。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 開啟MLD成員關係報告報文抑製功能。
report-aggregation
缺省情況下,MLD成員關係報告報文抑製功能處於開啟狀態。
通過配置端口加入的IPv6組播組的最大數量,可以限製用戶點播組播節目的數量,從而控製了端口上的數據流量。本配置隻對動態組播組有效,對靜態組播組無效。
在配置端口加入的IPv6組播組最大數量時,如果當前端口上的IPv6組播組數量已超過配置值,係統將把該端口相關的所有轉發表項從MLD Snooping轉發表中刪除,該端口下的主機都需要重新加入IPv6組播組,直至該端口上的IPv6組播組數量達到限製值,係統將自動丟棄新的MLD成員關係報告報文。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 配置端口加入的IPv6組播組最大數量。
mld-snooping group-limit limit [ vlan vlan-list ]
缺省情況下,未對端口加入的IPv6組播組最大數量進行限製。
當端口上的IPv6組播組數目達到配置端口加入的IPv6組播組最大數量時,會自動丟棄新的MLD成員關係報告報文。IPv6組播組替換功能開啟後,當端口收到新的MLD成員關係報告報文時,會自動離開IPv6地址最小的IPv6組播組並加入新的IPv6組播組。該特性的典型應用就是頻道切換。用戶切換頻道時,就是離開一個IPv6組播組並加入到新的IPv6組播組。
本配置隻對動態組播組有效,對靜態組播組無效。
當設備上維護的MLD Snooping轉發表項達到或超過配置的MLD Snooping轉發表項的全局最大數量並且端口新加入的IPv6組播組不在設備維護的IPv6組播組列表中時,IPv6組播組替換功能不能生效。
(1) 進入係統視圖。
system-view
(2) 進入MLD-Snooping視圖。
mld-snooping
(3) 全局開啟IPv6組播組替換功能。
overflow-replace [ vlan vlan-list ]
缺省情況下,IPv6組播組替換功能處於關閉狀態。
(1) 進入係統視圖。
system-view
(2) 進入二層接口視圖。
¡ 進入二層以太網接口視圖。
interface interface-type interface-number
¡ 進入二層聚合接口視圖。
interface bridge-aggregation interface-number
(3) 在端口上開啟IPv6組播組替換功能。
mld-snooping overflow-replace [ vlan vlan-list ]
缺省情況下,IPv6組播組替換功能處於關閉狀態。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後MLD Snooping的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除MLD Snooping的信息。
表1-1 MLD Snooping顯示和維護
命令 |
|
顯示IPv6二層組播快速轉發表信息 |
(獨立運行模式) display ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] [ ipv6-source-address | ipv6-group-address ] * (IRF模式) display ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] [ ipv6-source-address | ipv6-group-address ] * [ slot slot-number ] |
顯示IPv6二層組播的IP組播組信息 |
(獨立運行模式) display ipv6 l2-multicast ip [ group ipv6-group-address | source ipv6-source-address ] * [ vlan vlan-id ] (IRF模式) display ipv6 l2-multicast ip [ group ipv6-group-address | source ipv6-source-address ] * [ vlan vlan-id ] [ slot slot-number ] |
顯示IPv6二層組播的IP轉發表信息 |
(獨立運行模式) display ipv6 l2-multicast ip forwarding [ group ipv6-group-address | source ipv6-source-address ] * [ vlan vlan-id ] (IRF模式) display ipv6 l2-multicast ip forwarding [ group ipv6-group-address | source ipv6-source-address ] * [ vlan vlan-id ] [ slot slot-number ] |
顯示IPv6二層組播的MAC組播組信息 |
(獨立運行模式) display ipv6 l2-multicast mac [ mac-address ] [ vlan vlan-id ] (IRF模式) display ipv6 l2-multicast mac [ mac-address ] [ vlan vlan-id ] [ slot slot-number ] |
顯示IPv6二層組播的MAC轉發表信息 |
(獨立運行模式) display ipv6 l2-multicast mac forwarding [ mac-address ] [ vlan vlan-id ] (IRF模式) display ipv6 l2-multicast mac forwarding [ mac-address ] [ vlan vlan-id ] [ 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 ] |
顯示動態MLD Snooping IPv6組播組的信息 |
(獨立運行模式) display mld-snooping group [ ipv6-group-address | ipv6-source-address ] * [ vlan vlan-id ] [ verbose ] (IRF模式) display mld-snooping group [ ipv6-group-address | ipv6-source-address ] * [ vlan vlan-id ] [ verbose ] [ slot slot-number ] |
顯示IPv6動態路由器端口的信息 |
(獨立運行模式) display mld-snooping router-port [ verbose | vlan vlan-id ] (IRF模式) display mld-snooping router-port [ verbose | vlan vlan-id ] [ slot slot-number ] |
顯示靜態MLD Snooping IPv6組播組的信息 |
(獨立運行模式) display mld-snooping static-group [ ipv6-group-address | ipv6-source-address ] * [ vlan vlan-id ] [ verbose ] (IRF模式) display mld-snooping static-group [ ipv6-group-address | ipv6-source-address ] * [ vlan vlan-id ] [ verbose ] [ slot slot-number ] |
顯示IPv6靜態路由器端口的信息 |
(獨立運行模式) display mld-snooping static-router-port [ vlan vlan-id ] (IRF模式) display mld-snooping static-router-port [ vlan vlan-id ] [ 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-source-address | ipv6-group-address } * | all } (IRF模式) reset ipv6 l2-multicast fast-forwarding cache [ vlan vlan-id ] { { ipv6-source-address | ipv6-group-address } * | all } [ slot slot-number ] |
清除動態MLD Snooping IPv6組播組的信息 |
reset mld-snooping group { ipv6-group-address [ ipv6-source-address ] | all } [ vlan vlan-id ] |
清除IPv6動態路由器端口的信息 |
reset mld-snooping router-port { all | vlan vlan-id } |
清除MLD Snooping監聽到的MLD報文和IPv6 PIM hello報文的統計信息 |
reset mld-snooping statistics |
· 如圖1-3所示,Router A通過GigabitEthernet1/0/2接口連接IPv6組播源(Source),通過GigabitEthernet1/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的接口GigabitEthernet1/0/3和GigabitEthernet1/0/4轉發出去;同時,使Switch A將收到的未知IPv6組播數據直接丟棄,避免在其所屬的VLAN 100內廣播。
圖1-3 基於VLAN的IPv6組策略及模擬主機加入配置組網圖
請按照圖1-3配置各接口的IPv6地址和前綴長度,具體配置過程略。
(2) 配置Router A
# 使能IPv6組播路由,在接口GigabitEthernet1/0/2上使能IPv6 PIM-DM,並在接口GigabitEthernet1/0/1上使能MLD。
<RouterA> system-view
[RouterA] ipv6 multicast routing
[RouterA-mrib6] quit
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] mld enable
[RouterA-GigabitEthernet1/0/1] quit
[RouterA] interface gigabitethernet 1/0/2
[RouterA-GigabitEthernet1/0/2] ipv6 pim 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 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
# 在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
假設IPv6組播源分別向IPv6組播組FF1E::101和FF1E::202發送的IPv6組播數據,Host A和Host B也都申請加入這兩個IPv6組播組。
# 顯示Switch A上VLAN 100內動態MLD Snooping IPv6組播組的信息。
[SwitchA] display mld-snooping group vlan 100
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (2 in total):
GE1/0/3 (00:03:23)
GE1/0/4 (00:04:10)
由此可見,Host A和Host B所在的端口GigabitEthernet1/0/4和GigabitEthernet1/0/3均已加入IPv6組播組FF1E::101,但都未加入IPv6組播組FF1E::202,這表明IPv6組播組過濾器已生效。
· 如圖1-4所示,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的端口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,生成樹協議)的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“生成樹”。
圖1-4 基於VLAN的靜態端口配置組網圖
(1) 配置IPv6地址
請按照圖1-4配置各接口的IPv6地址和前綴長度,具體配置過程略。
(2) 配置Router A
# 使能IPv6組播路由,在接口GigabitEthernet1/0/2上使能IPv6 PIM-DM,並在接口GigabitEthernet1/0/1上使能MLD。
<RouterA> system-view
[RouterA] ipv6 multicast routing
[RouterA-mrib6] quit
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] mld enable
[RouterA-GigabitEthernet1/0/1] quit
[RouterA] interface gigabitethernet 1/0/2
[RouterA-GigabitEthernet1/0/2] ipv6 pim 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
# 顯示Switch A上VLAN 100內靜態路由器端口的信息。
[SwitchA] display mld-snooping static-router-port vlan 100
VLAN 100:
Router ports (1 in total):
GE1/0/3
由此可見,Switch A上的端口GigabitEthernet1/0/3已經成為了靜態路由器端口。
# 顯示Switch C上VLAN 100內靜態MLD Snooping IPv6組播組的信息。
[SwitchC] display mld-snooping static-group vlan 100
Total 1 entries.
VLAN 100: Total 1 entries.
(::, FF1E::101)
Host ports (2 in total):
GE1/0/3
GE1/0/5
由此可見,Switch C上的端口GigabitEthernet1/0/3和GigabitEthernet1/0/5已經成為了IPv6組播組FF1E::101的靜態成員端口。
· 如圖1-5所示,在一個沒有三層設備的純二層網絡環境中,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-5 基於VLAN的MLD Snooping查詢器配置組網圖
(1) 配置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,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchA] vlan 100
[SwitchA-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 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,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/4添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchB] vlan 100
[SwitchB-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 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,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/3添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchC] vlan 100
[SwitchC-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 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,把端口GigabitEthernet1/0/1到GigabitEthernet1/0/2添加到該VLAN中;在該VLAN內使能MLD Snooping,並開啟丟棄未知IPv6組播數據報文功能。
[SwitchD] vlan 100
[SwitchD-vlan100] port gigabitethernet 1/0/1 to gigabitethernet 1/0/2
[SwitchD-vlan100] mld-snooping enable
[SwitchD-vlan100] mld-snooping drop-unknown
[SwitchD-vlan100] quit
當MLD Snooping查詢器開始工作之後,除查詢器以外的所有交換機都能收到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 IPv6 PIM hello: 0
Received error MLD messages: 0
二層設備不能實現MLD snooping二層組播功能。
MLD Snooping沒有使能。
(1) 使用display mld-snooping命令查看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。
配置了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組播數據報文的功能。如果沒有開啟,則使用drop-unknown或mld-snooping drop-unknown命令開啟丟棄未知IPv6組播數據報文功能。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!