信创交换机(S5300G/S6300G、S3200G)

信锐技术自主研发的千兆盒式交换机产品,支持主流协议标准和应用程序,可方便快速的部署和管理,满足下一代企业网、数据中心、城域网和超融合等多种应用场合需求。
{{sendMatomoQuery("信创交换机(S5300G/S6300G、S3200G)","IPv6 组播配置指导")}}

IPv6 组播配置指导

更新时间:2025-07-14

14.1IPv6 组播路由配置

14.1.1概述

简介

随着Internet网络的不断发展,网络数据、语音、视频信息等多种交互业务与日俱增。另外,新兴的电子商务、网上会议、网上拍卖、视频点播、远程教学等对带宽和实时数据交互要求较高的服务逐渐兴起,这些服务对信息安全性、可计费性、网络带宽提出了更高的要求。

当网络中需要某信息的用户量不确定时,单播和广播方式的效率会很低,IPv6组播技术的出现改变了这一现状。当网络中的某些用户需要特定信息时,组播信息发送者(即组播源)仅发送一次信息,借助组播路由协议为组播数据包建立树型路由,被传递的信息在距离用户端尽可能近的节点才开始复制和分发。

通过组播路由协议,多个接收者能跨越不同网络接收到组播数据。

MLD(Multicast Listener Discovery,组播侦听发现协议)IPv6协议族中负责IPv6组播成员管理的协议。它用来在IPv6主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。

PIMv6Protocol Independent Multicast,协议无关组播),用于IPv6组播路由器或多层交换机之间。为IPv6组播提供路由的单播路由协议,可以是静态路由、RIPngOSPFv3 等,组播路由和单播路由协议无关,只要单播路由协议能产生路由表项即可。借助RPFReverse Path Forwarding,逆向路径转发)机制,PIMv6实现了在网络中传递组播信息。为了描述上的方便,我们把由支持PIMv6协议的组播路由器所组成的网络称为PIMv6组播域,PIMv6有两种模式:密集模式和稀疏模式,我们目前只支持稀疏模式。

14.1.2配置举例

配置组播路由规格

步骤 1进入配置模式

Switch# configure terminal

步骤 2设置组播路由的最大规格

Switch(config)# ipv6 multicast route-limit 1000

步骤 3退出配置模式

Switch(config)# end

步骤 4检查配置

Switch# show ipv6 mroute route-limit
IPv6 Max Multicast Route Limit Number: 1000
IPv6 Multicast Route Limit Warning Threshold: 1000
IPv6 Multicast Hardware Route Limit: 255
IPv6 Current Multicast Route Entry Number: 0

14.2MLD配置

14.2.1概述

简介

参与IPv6组播的主机、路由器、多层交换机必须具备MLD功能。该协议定义了查询器和主机角色:

网络设备的查询器发送查询消息给网络中特定组来发现组播中的成员。

主机发送MLD报告报文(响应查询报文)来通知查询者主机要加入相应的组播组列表中。

一个组播组的成员是动态的,主机可以随时加入和离开。一个多播组成员在位置或数量上没有限制。

一个主机可同时加入多个组播组。在网络中,组播组的存在可以持续很长一段时间,也可以非常短暂。

MLD报文使用下面的组播地址:

MLD普通组查询以ff02::1为目的地址(在一个子网中的所有系统)

MLD特定组的查询以特定组IPv6地址为目的查询。

MLD组成员发送Report报文给特定的组播IPv6地址。

MLD版本1(MLDv1)离开组播组时,发送离开消息给ff02::2

原理描述

MLD模块是基于以下RFC

RFC 2710

RFC 3810

14.2.2配置举例

MLD的使能依赖于PIMv6的使能,当接口上使能PIMv6MLD将会在接口上自动启用。

MLD开始工作之前,IPv6转发和IPv6组播路由必须在全局模式启用。

系统支持动态学习MLD组记录,也可以配置静态MLD组。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能ipv6ipv6组播

Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing

步骤 3进入接口配置模式,配置地址和使能pim sparse mode

Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:1::1/64
Switch(config-if)# ipv6 pim sparse-mode

步骤 4配置MLD接口参数(可选)

Switch(config-if)# ipv6 mld version 2
Switch(config-if)# ipv6 mld query-interval 120
Switch(config-if)# ipv6 mld query-max-response-time 12
Switch(config-if)# ipv6 mld robustness-variable 3
Switch(config-if)# ipv6 mld last-member-query-count 3
Switch(config-if)# ipv6 mld last-member-query-interval 2000

步骤 5配置最大MLD组数目(可选)

配置接口最大MLD组数目为1000

Switch(config-if)# ipv6 mld limit 1000
Switch(config-if)# exit

配置全局最大MLD组数目为2000

Switch(config)# ipv6 mld limit 2000

步骤 6配置静态MLD

Switch(config)# interface eth-0-1
Switch(config-if)# ipv6 mld static-group ff0e::1234
Switch(config-if)# exit

步骤 7配置MLD代理(可选)

Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# ipv6 mld proxy-service
Switch(config-if)# exit

Switch(config)# interface eth-0-2
Switch(config-if)# no switchport
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# ipv6 mld mroute-proxy eth-0-1
Switch(config-if)# exit

步骤 8退出配置模式

Switch(config)# end

步骤 9检查配置

显示MLD接口信息:

Switch# show ipv6 mld interface
Interface eth-0-2 (Index 2)
MLD Inactive, Version 1 (default)
MLD mroute-proxy interface is eth-0-1
MLD global limit is 2000
MLD global limit states count is currently 0
MLD interface limit is 4096
MLD interface has 0 group-record states
MLD activity: 0 joins, 0 leaves
MLD query interval is 125 seconds
MLD querier timeout is 255 seconds
MLD max query response time is 10 seconds
Last member query response interval is 1000 milliseconds
Group Membership interval is 260 seconds
Last memeber query count is 2
Robustness Variable is 2
Interface eth-0-1 (Index 1)
MLD Inactive, Configured for Version 2 proxy-service
MLD host version 2
MLD global limit is 2000
MLD global limit states count is currently 0
MLD interface limit is 1000
MLD interface has 0 group-record states
MLD activity: 0 joins, 0 leaves
MLD query interval is 120 seconds
MLD querier timeout is 366 seconds
MLD max query response time is 12 seconds
Last member query response interval is 2000 milliseconds
Group Membership interval is 372 seconds
Last memeber query count is 3
Robustness Variable is 3

显示MLD 组信息:

Switch# show ipv6 mld groups
MLD Connected Group Membership
Group Address                           Interface            Expires
ff0e::1234                              eth-0-1              stopped  

14.3PIMv6-SM配置

14.3.1概述

简介

协议无关组播稀疏模式(PIMv6-SM)是一个组播路由协议,用来将稀疏分散的组播设备联系起来协同工作。它将有助于分散的网络节点节约带宽和通过发送单一流量到多个接收者来降低网络流量。

PIMv6-SM使用的IP组播模型中,接收者需要主动发起请求成为组成员。支持共享和最短路径树,并使用软状态机制,以适应不断变化的网络条件。它依赖于单播路由协议来建立和维护路由器间的组播路由。

原理描述

PIMv6-SM模块基于以下IETF标准: RFC 4601

相关术语:

汇聚点(RP)RPRendezvous Point)在SM模式中作为组播的汇聚点,发送者和接收者在RP处进行汇聚。对于所有的组播路由器,必须知道某个组播组对应哪个RP。所有的组播数据需要在RP上注册,然后所有需要组播数据的接收者通过向RP发送JOIN报文来请求数据。源的注册机制就是让RP知道现在网络内有什么源的数据。

组播路由信息库(MRIB):反向路径转发是指路由器在接受数据包从源A通过接口IF1时,只有IF1是到达源A的出接口时才会接受这个包。反向路径转发通过使用单播路由表来决定入端口是否正确。这个数据包将被转发是由于单播路由表表明了接口IF1是到达源A的最短路径。单播路由表为组播数据选择最短路径。

组播树状态信息库(TIB):组播树状态信息库是组播路由器上保存所有组播转发树信息的一个信息库,通过收到PIMv6加入/剪枝消息,Assert消息和MLD消息建立起来。

上游Upstream:朝向树根,树根可能是源或RP

下游Downstream:远离树根,树根可能是源或RP

基于源的树:基于源的树的转发路径是到达源的最短转发路径,如果单播路由度量是跳数,基于源的树的转发路径的跳数最小,如果单播路由度量是延迟,基于源的树的转发路径的延迟最小。对于每个组播源,有一个对应的组播转发树直接将源和接收者连接起来。所有发往指定组的流量沿着对应的转发树进行转发。

共享树:共享树依赖于汇聚点(RP),所有流量从源发往那个汇聚点,然后汇聚点再将流量发送给接收者。对于每一个组播组来说,不管有多少个源,只有一个转发树。共享树是单向的,流量只会从RP流向接收者。如果一个源要发送组播数据,首先组播数据要被发到RP,然后在从RP发送到接收者。

自举路由器(BSR):当一个组播源开始发送组播数据或者一个接收者开始发送加入信息到RP,组播路由器必须知道汇聚点的信息。自举路由器负责在PIMv6-SM网络启动后,收集网络内的RP信息,为每个组选举出RP,然后将RP集(即组-RP映射数据库)发布到整个PIMv6-SM网络。

(数据流从源到接收者)发送Hello消息PIMv6路由器定期的发送Hello消息来发现PIMv6路由器邻居。Hello消息是组播报文,使用ff02::d这个地址。PIMv6路由器对Hello消息进行响应,Hello消息中的Hold时间来决定信息的有效时间。

选举指定路由器:在一个多路访问的网络中如果有多个组播路由器,只能有一个组播路由器被选为指定路由器,负责为本地网络的组播接收者往RP发送加入/剪枝消息。

RP发现PIMv6-SM通过自举路由器来产生自举消息,然后发布RP信息给所有的组播路由器。组播路由器接收和保存自举消息,当DR从直连host收到一个MLD报文或组播数据,DR计算出该组播组的RP,然后发送加入/剪枝到RP或者封装register报文到RP。在小网络环境下可以静态指定RP

加入共享树:要加入一个多播组,主机发送一个MLD消息给上游路由器,组播路由器向RP方向的上游的PIMv6邻居发送加入报文。当组播路由器接收到下游设备的加入请求后,检查本地的组播组是否存在。如果存在,说明加入消息被送到共享树,收到消息的接口被称为outgoing的接口。如果不存在,条目将被创建,收到消息接口的被加入到outgoing中并再次向RP方向的上游的PIMv6邻居发送加入报文。

组播源注册:与组播源S直接相连的路由器接收到该组播报文后,就将该报文封装成Register注册报文,并单播发送给对应的RP。当RP接收到来自组播源S的注册消息后,一方面解封装注册消息并将组播信息沿着RPT树转发到接收者,另一方面朝组播源S逐跳发送(SG)加入消息,从而让RP和组播源S之间的所有路由器上都生成了(SG)表项,这些沿途经过的路由器就形成了SPT树的一个分支。SPT源树以组播源S为根,以RP为目的地组播源S发出的组播信息沿着已经建立好的SPT树到达RP,然后由RP将信息沿着RPT共享树进行转发。

发送注册停止消息:当RP从组播源接收到注册报文后也收到未封装的组播报文,将发送注册停止消息给组播源一侧的DR,当DR收到注册停止消息后将不再发送注册消息给RP了。

剪枝端口:接收者侧的组播路由器向RP方向的上游的PIMv6邻居发送剪枝报文,当上联组播路由器收到剪枝报文后,将收到剪枝报文的端口从转发端口中删除,当本路由器上没有其他接收者后会继续向RP方向的上游的PIMv6邻居发送剪枝报文。

转发组播数据PIMv6-SM路由器将组播数据发往那些已经明确表示加入组播组的接收者。组播路由器将进行RPF检查,只有检查通过的组播数据包才将通过出端口发送出去。

14.3.2配置举例

配置通用PIMv6 Sparse-mode (静态RP)

PIMv6-SM是一个软状态协议。要求所需的接口上启用PIMv6-SM协议,并通过静态或动态的方法正确配置的RP信息。所有组播组的状态依据MLD报告/离开和PIMv6加入/剪枝消息动态的维护。

1.组网拓扑

PIMv6 Sparse-mode

图14-1PIMv6 Sparse-mode

下面的例子中使用的网络拓扑如上图。

2.配置步骤

例子中Switch1RP,所有的路由器都配置静态RP

每个路由器配置静态RP地址2001:1::1

所有接口上必须启用PIMv6-SM功能。

以下配置如未说明在哪个Switch配置,则表示所有Switch配置相同:

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能ipv6ipv6组播

Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing

步骤 3进入接口配置模式,配置接口属性

Switch1的接口配置:

Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:1::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:9::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch2的接口配置:

Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:2::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:9::2/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

步骤 4配置静态单播路由

switch1配置:

Switch(config)# ipv6 route 2001:2::/64 2001:9::2

switch2配置:

Switch(config)# ipv6 route 2001:1::/64 2001:9::1

步骤 5配置静态RP地址

Switch(config)# ipv6 pim rp-address 2001:1::1

步骤 6退出配置模式

Switch(config)# end

步骤 7检查配置

所有的路由器配置使用相同的RP地址2001:1::1,使用以下命令来验证RP的配置,接口的详细信息和组播路由表。

详细说明

Switch1上,显示PIMv6稀疏模式RP映射的命令表明2001:1::1是对所有组播组ff00::/8静态配置的RP。所有其他路由器都会有类似的输出:

Switch# show ipv6 pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): ff00::/8, Static
    RP: 2001:1::1
         Uptime: 00:00:04
Embedded RP Groups:

接口的详细信息

显示Switch1接口的组播信息。

Switch# show ipv6 pim sparse-mode interface
Interface    VIFindex Ver/   Nbr    DR  
                      Mode   Count  Prior
eth-0-1      2        v2/S   0      1   
    Address       : fe80::fc94:efff:fe96:2600               
    Global Address: 2001:1::1                               
    DR            : this system
eth-0-9      0        v2/S   0      1   
    Address       : fe80::fc94:efff:fe96:2600               
    Global Address: 2001:9::1                               
    DR            : this system

IPv6组播路由表

显示PIMv6-SM的组播路由表。

Switch1 显示结果:

Switch# show ipv6 pim sparse-mode mroute detail
IPv6 Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
FCR Entries: 0
*, ff0e::1234:5678
Type: (*,G)
Uptime: 00:01:37
  RP: 2001:1::1, RPF nbr: None, RPF idx: None
  Upstream:
   State: JOINED, SPT Switch: Enabled, JT: off
   Macro state: Join Desired,
  Downstream:
   eth-0-1:
     State: NO INFO, ET: off, PPT: off
     Assert State: NO INFO, AT: off
      Winner: ::, Metric: 4294967295, Pref: 4294967295, RPT bit: on
     Macro state: Could Assert, Assert Track
  Local Olist:
   eth-0-1

Switch2 显示结果:

Switch# show ipv6 pim sparse-mode mroute detail
IPv6 Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
FCR Entries: 0
*, ff0e::1234:5678
Type: (*,G)
Uptime: 00:00:06
  RP: 2001:1::1, RPF nbr: None, RPF idx: None
  Upstream:
   State: JOINED, SPT Switch: Enabled, JT: off
   Macro state: Join Desired,
  Downstream:
   eth-0-1:
     State: NO INFO, ET: off, PPT: off
     Assert State: NO INFO, AT: off
      Winner: ::, Metric: 4294967295, Pref: 4294967295, RPT bit: on
     Macro state: Could Assert, Assert Track
  Local Olist:
   eth-0-1

配置通用PIMv6 Sparse-mode (动态RP)

在小型并且简单的网络中,组播信息量少,全网络仅依靠一个RP进行信息转发即可,此时可以在SM域中各路由器上静态指定RP位置。但是更多的情况下,PIMv6-SM网络规模都很大,通过RP转发的组播信息量巨大,为了缓解RP的负担同时优化共享树的拓扑结构,不同组播组应该对应不同的RP,此时就需要自举机制来动态选举RP

以下配置如未说明在哪个Switch配置,则表示所有Switch配置相同:

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能ipv6ipv6组播

Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing

步骤 3进入接口配置模式,配置接口属性

Switch1的接口配置:

Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:1::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:9::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch2的接口配置:

Switch(config)# interface eth-0-1
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:2::1/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# no switchport
Switch(config-if)# ipv6 address 2001:9::2/64
Switch(config-if)# ipv6 pim sparse-mode
Switch(config-if)# exit

步骤 4配置静态单播路由

switch1配置:

Switch(config)# ipv6 route 2001:2::/64 2001:9::2

switch2配置:

Switch(config)# ipv6 route 2001:1::/64 2001:9::1

步骤 5配置候选RP接口

switch1配置:

Switch(config)# ipv6 pim rp-candidate eth-0-1

switch2配置:

Switch(config)# ipv6 pim rp-candidate eth-0-9

步骤 6配置候选BSR接口

switch2配置:

Switch(config)# ipv6 pim bsr-candidate eth-0-9

选择最高优先级的路由器为RP。如果有两个或多个路由器的优先级相同,使用BSR机制的哈希函数来选择RP,确保在PIMv6域内所有路由器的同一个组都选择相同的RP。可以使用ipv6 pim rp-candidate IFNAME PRIORITY命令来改变候选RP的默认的优先级。

步骤 7退出配置模式

Switch(config)# end

步骤 8检查配置

PIMv6-SM的组-RPMapping关系

使用show ipv6 pim sparse-mode rp mapping命令,来显示组-RP的映射的详细信息,输出内容是候选RP信息。在这个例子中,组的范围ff00::/8,有两个候选RP。候选RP 2001:1::1默认的优先级192,候选RP 2001:9::2的优先级被配置为2。由于候选RP 2001:1::1由于具有更高的优先权,它被选中作为组播组ff00::/8RP

Switch2 显示结果:

Switch# show ipv6 pim sparse-mode rp mapping
PIM Group-to-RP Mappings
This system is the Bootstrap Router (v2)
Group(s): ff00::/8
  RP: 2001:9::2
    Info source: 2001:9::2, via bootstrap, priority 2
         Uptime: 00:00:32, expires: 00:02:02
  RP: 2001:1::1
    Info source: 2001:1::1, via bootstrap, priority 192
         Uptime: 00:00:31, expires: 00:02:03
Embedded RP Groups:

RP 详细显示

要显示特定组的RP路由器的信息,使用下面的命令。此输出显示,2001:9::2已经被选择作为ff02::1234的组播组的RP

Switch2 显示结果:

Switch# show ipv6 pim sparse-mode rp-hash ff02::1234

Info source: 2001:9::2, via bootstrap

RP信息需要通知域中的所有PIMv6路由器,通过各种状态机保持所有路由器的组成员的加入/剪枝的结果。要显示接口的详细信息和组播路由表的信息,请参见以上配置RP的静态部分。

配置自举路由器

每个组播组需要有一个为它服务的RP,这个RP作为基于组播组的分发树的根。为了组播数据能从发送者到达接收者,在一个组播域内的组播路由器需要使用同样的组播组-RP的映射。为了选择指定组播组的RP,组播路由器需要维护一系列的组播组-RP的映射关系,这被称为RP集。自举路由器的机制就是用来让在同一个组播域内的组播路由器能够学习到这个RP集。

BSRPIMv6-SM网络里的管理核心,主要负责:

负责收集网络中Candidate-RPC-RP)发来的Advertisement宣告信息。

为每个组播组选择部分C-RP信息以组成RP-Set集(即组播组和RP的映射数据库)。

发布到整个PIMv6-SM网络,从而使网络内的所有路由器(包括DR)都会知道RP的位置。

在一个PIMv6域中,需要配置一个或多个候选BSR,候选BSR之间通过自动选举,产生自举路由器BSR,负责收集并发布RP信息。下面简单描述一下候选BSR之间的自动选举:

在将路由器配置为候选BSR时,必须同时指定一个启动了PIMv6-SM的接口。

每个候选BSR开始都认为自己是本PIMv6-SMBSR,并使用这个接口的IPv6地址作为BSR地址,发送自举报文(Bootstrap message)。

当候选BSR收到其它路由器发来的自举报文时,它将新收到的自举报文的BSR地址与自己的BSR地址进行比较,比较标准包括优先级和IPv6地址,优先级相同的情况下,较大的IPv6地址被认为是更好的。如果前者更好,则将这个新的BSR地址替换自己的BSR地址,并且不再认为自己是BSR。否则,保留自己的BSR地址,继续将自己视为BSR

备选RP将自己的RP信息报告给自举路由器,然后自举路由器将汇聚的RP集通过自举报文发布到整个组播域的所有路由器。

1.组网拓扑

BSR

图14-2BSR

2.配置步骤

以下配置如未说明在哪个Switch配置,则表示所有Switch配置相同:

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能ipv6ipv6组播

Switch(config)# ipv6 enable
Switch(config)# ipv6 multicast-routing

步骤 3指定BSR候选接口

switch1配置:

Switch(config)# ipv6 pim bsr-candidate eth-0-1

switch2配置:

Switch(config)# ipv6 pim bsr-candidate eth-0-1 10 25

步骤 4指定RP候选接口

switch2配置:

Switch(config)# ipv6 pim rp-candidate eth-0-1 priority 0

步骤 5进入接口配置模式,配置接口属性

Switch2的接口配置:

Switch(config)# interface eth-0-1
Switch(config-if)# ipv6 pim dr-priority 10
Switch(config-if)# ipv6 pim unicast-bsm
Switch(config-if)# exit

步骤 6退出配置模式

Switch(config)# end

步骤 7检查配置

检查候选BSR路由器

Switch# show ipv6 pim sparse-mode bsr-router
PIM6v2 Bootstrap information
This system is the Bootstrap Router (BSR)
  BSR address: 2001:9::1 (?)
  Uptime:      00:01:27, BSR Priority: 64, Hash mask length: 126
  Next bootstrap message in 00:00:16
  Role: Candidate BSR
  State: Elected BSR

检查候选BSR路由器

Switch# show ipv6 pim sparse-mode bsr-router
PIM6v2 Bootstrap information
  BSR address: 2001:9::1 (?)
  Uptime:      00:01:34, BSR Priority: 64, Hash mask length: 126
  Expires:     00:01:51
  Role: Candidate BSR
  State: Candidate BSR
  Candidate RP: 2001:9::2(eth-0-9)
    Advertisement interval 60 seconds
    Next C-RP advertisement in 00:00:35

E-BSR上检查RP

Switch# show ipv6 pim sparse-mode rp mapping
PIM Group-to-RP Mappings
This system is the Bootstrap Router (v2)
Group(s): ff00::/8
  RP: 2001:9::2
    Info source: 2001:9::2, via bootstrap, priority 0
         Uptime: 00:45:37, expires: 00:02:29
Embedded RP Groups:

C-BSR上检查RP

Switch# show ipv6 pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): ff00::/8
  RP: 2001:9::2
    Info source: 2001:9::1, via bootstrap, priority 0
         Uptime: 00:03:14, expires: 00:01:51
Embedded RP Groups:

配置PIMv6-SSM

PIMv6-SSM可以跟PIMv6-SM在组播路由器上一起工作。PIMv6-SSM默认是disable的。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能PIMv6-ssm

Switch(config)# ipv6 pim ssm default
Switch(config)# ipv6 pim ssm range ipv6acl

步骤 3退出配置模式

Switch(config)# end

14.4MLD Snooping配置

14.4.1概述

简介

MLD SnoopingMulticast Listener DiscoveryMLD侦听)是运行在二层以太网交换机上的IPv6组播约束机制,用于管理和控制IPv6组播组。

二层交换机通过MLD Snooping来控制IPv6组播流量的泛洪。当二层以太网交换收到主机和路由器之间传递的MLD报文时,MLD Snooping将对MLD报文所带的信息进行分析,将端口和MAC组播地址建立起映射关系,并根据这样的映射关系转发IPv6组播数据。IPv6组播路由器定期发送通用组查询来维护IPv6组播组成员关系。所有接收者将发送MLD报告报文来响应这个查询,交换机通过这个监听MLD报告报文来建立转发表项。

二层的组播组可以通过MLD报文动态建立,也可以静态配置。静态配置的组播组将覆盖动态学习的组播组。

限制和指导:

VRRPRIPngOSPFv3等协议使用了IPv6组播,因此在使能了MLD Snooping的网络中,要避免使用这些IPv6组播地址,以免产生冲突而导致异常:

VRRP使用了ff02::12,因此组播MAC 3333.0000.0012映射出的组播IPv6MLD SnoopingVRRP的网络中避免使用。

RIPv6使用了ff02::9,因此组播MAC 3333.0000.0009映射出的组播IPv6MLD SnoopingRIPng的网络中避免使用。

OSPF使用了ff02::5,因此组播MAC 3333.0000.0005映射出的组播IPv6MLD SnoopingOSPFv3的网络中避免使用。

14.4.2配置举例

配置启用MLD Snooping

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4退出配置模式

Switch(config)# end

步骤 5检查配置

Switch # show ipv6 mld snooping vlan 1
Global Mld Snooping Configuration
-------------------------------------------------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Disabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Report-Suppression          :Enabled
Vlan 1
-----------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Disabled
Mld Snooping Report-Suppression          :Enabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Group Access-list           :N/A
Mld Snooping Mrouter Port                :
Mld Snooping Mrouter Port Aging Interval(sec) :255

配置MLD Snooping快速离开

正常情况下,MLD Snooping在接收到MLD离开报文后不会直接将端口从组播组中删除,而是发送MLD特定组查询报文,如果等待一段时间后没有得到响应,才将该端口从组播组中删除。启动快速删除功能后,MLD Snooping收到MLD离开报文时,直接将端口从组播组中删除。当端口下只有一个用户时,快速删除可以节省带宽。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4全局使能快速离开

Switch(config)# ipv6 mld snooping fast-leave

步骤 5vlan使能快速离开

Switch(config)# ipv6 mld snooping vlan 1 fast-leave

步骤 6退出配置模式

Switch(config)# end

步骤 7检查配置

Switch# show ipv6 mld snooping vlan 1
Global Mld Snooping Configuration
-------------------------------------------------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Enabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Report-Suppression          :Enabled
Vlan 1
-----------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Enabled
Mld Snooping Report-Suppression          :Enabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Group Access-list           :N/A
Mld Snooping Mrouter Port                :
Mld Snooping Mrouter Port Aging Interval(sec) :255

配置MLD Snooping查询参数(可选)

三层交换机在所连接的网段上周期性的发送MLD通用查询报文,通过解析返回的MLD主机报告报文,获知该网段内哪些组播组有成员。组播路由器周期性地发送查询报文,当得到某一组成员的MLD主机报告报文的时候,刷新该网段相应的组成员关系信息。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4配置mld查询参数

设置查询时间间隔和最大响应时间:

Switch(config)# ipv6 mld snooping query-interval 100
Switch(config)# ipv6 mld snooping query-max-response-time 5

仅存最后一个成员时的查询间隔:

Switch(config)# ipv6 mld snooping last-member-query-interval 2000

设置vlan1的查询参数:

Switch(config)# ipv6 mld snooping vlan 1 querier address fe80::1
Switch(config)# ipv6 mld snooping vlan 1 querier
Switch(config)# ipv6 mld snooping vlan 1 query-interval 200
Switch(config)# ipv6 mld snooping vlan 1 query-max-response-time 5
Switch(config)# ipv6 mld snooping vlan 1 querier-timeout 100
Switch(config)# ipv6 mld snooping vlan 1 last-member-query-interval 2000
Switch(config)# ipv6 mld snooping vlan 1 discard-unknown

在全局模式下设置丢弃未知组播报文:

Switch(config)# ipv6 mld snooping discard-unknown

步骤 5退出配置模式

Switch(config)# end

步骤 6检查配置

Switch # show ipv6 mld snooping querier
Global Mld Snooping Querier Configuration
-------------------------------------------------
Version                           :1
Last-Member-Query-Interval (msec) :2000
Max-Query-Response-Time (sec)     :5
Query-Interval (sec)              :100
Global Source-Address             :::
TCN Query Count                   :2
TCN Query Interval (sec)          :10
Vlan 1:   MLD snooping querier status
--------------------------------------------
Elected querier is : fe80::1
--------------------------------------------
Admin state                       :Enabled
Admin version                     :1
Operational state                 :Querier
Querier operational address       :fe80::1
Querier configure address         :fe80::1
Last-Member-Query-Interval (msec) :2000
Max-Query-Response-Time (sec)     :5
Query-Interval (sec)              :200
Querier-Timeout (sec)             :100

配置MLD Snooping组播路由端口

组播路由端口是交换机上连接到组播路由器的端口,可以动态学习或者静态配置。当某个VLAN的端口上收到MLD通用组查询报文或者是PIMv6 Hello报文,该端口成为这个VLAN的组播路由端口。所有从组播路由端口上收到的的MLD查询报文要在所属VLAN内广播。所有VLAN上收到MLD报告/离开报文也将从组播路由端口转发(报文抑制关闭的情况下),另外所有从该VLAN上收到的组播流量将从组播路由端口转发。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4全局启用MLD Snooping的报告抑制功能

Switch(config)# ipv6 mld snooping report-suppression

步骤 5配置静态组播路由端口

Switch(config)# ipv6 mld snooping vlan 1 mrouter interface eth-0-1

步骤 6配置vlanmld snooping属性

启用报告抑制功能和配置端口老化时间

Switch(config)# ipv6 mld snooping vlan 1 report-suppression
Switch(config)# ipv6 mld snooping vlan 1 mrouter-aging-interval 200

步骤 7退出配置模式

Switch(config)# end

步骤 8检查配置

Switch# show ipv6 mld snooping vlan 1
Global Mld Snooping Configuration
-------------------------------------------------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Enabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Discard
Mld Snooping Report-Suppression          :Enabled
Vlan 1
-----------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Enabled
Mld Snooping Report-Suppression          :Enabled
Mld Snooping Version                     :1
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Discard
Mld Snooping Group Access-list           :N/A
Mld Snooping Mrouter Port                :eth-0-1(static)
Mld Snooping Mrouter Port Aging Interval(sec) :200

配置MLD Snooping查询TCN

可以通过配置TCN的时间间隔以及查询次数来适应STP收敛拓扑后的组播组学习以及更新。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4配置MLD Snooping查询TCN参数

设置TCN的查询次数和查询时间间隔

Switch(config)# ipv6 mld snooping querier tcn query-count 5
Switch(config)# ipv6 mld snooping querier tcn query-interval 20

步骤 5退出配置模式

Switch(config)# end

步骤 6检查配置

Switch # show ipv6 mld snooping querier
Global Mld Snooping Querier Configuration
-------------------------------------------------
Version                           :1
Last-Member-Query-Interval (msec) :2000
Max-Query-Response-Time (sec)     :5
Query-Interval (sec)              :100
Global Source-Address             :::
TCN Query Count                   :5
TCN Query Interval (sec)          :20
Vlan 1:   MLD snooping querier status
--------------------------------------------
Elected querier is : fe80::1
--------------------------------------------
Admin state                       :Enabled
Admin version                     :1
Operational state                 :Querier
Querier operational address       :fe80::1
Querier configure address         :fe80::1
Last-Member-Query-Interval (msec) :2000
Max-Query-Response-Time (sec)     :5
Query-Interval (sec)              :200
Querier-Timeout (sec)             :100

配置MLD Snooping报告抑制

交换机使用MLD报告抑制功能来防止同一个MLD报文重复发送给组播路由器。当MLD路由器抑制使能时(默认情况下使能抑制),交换机将第一个MLD报告报文发送给组播路由器,其余同样的MLD报告报文将不再发送给组播路由器。这样就阻止了重复MLD报告报文发送给组播路由器了。

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4全局启用报告抑制

Switch(config)# ipv6 mld snooping report-suppression

步骤 5vlan启用报告抑制

Switch(config)# ipv6 mld snooping vlan 1 report-suppression

步骤 6退出配置模式

Switch(config)# end

步骤 7检查配置

Switch # show ipv6 mld snooping
Global Mld Snooping Configuration
-------------------------------------------------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Disabled
Mld Snooping Version                     :2
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Report-Suppression          :Enabled
Vlan 1
-----------
Mld Snooping                             :Enabled
Mld Snooping Fast-Leave                  :Disabled
Mld Snooping Report-Suppression          :Enabled
Mld Snooping Version                     :2
Mld Snooping Max-Member-Number           :4096
Mld Snooping Unknown Multicast Behavior  :Flood
Mld Snooping Group Access-list           :N/A
Mld Snooping Mrouter Port                :
Mld Snooping Mrouter Port Aging Interval(sec) :255

配置静态组播组

交换机在二层端口上收到MLD报文时会建立MLD Snooping的组记录。目前系统中也支持静态配置MLD Snooping的组记录,在静态配置时需要指定组地址,二层端口,以及二层端口所属的VLAN

步骤 1进入配置模式

Switch# configure terminal

步骤 2全局使能mld snooping

Switch(config)# ipv6 mld snooping

步骤 3vlan使能mld snooping

Switch(config)#ipv6 mld snooping vlan 1

步骤 4配置静态组播组

Switch(config)# ipv6 mld snooping vlan 1 static-group ff0e::1234 interface eth-0-2

步骤 5退出配置模式

Switch(config)# end

步骤 6检查配置

Switch# show ipv6 mld snooping groups
VLAN  Interface  Group Address                            Uptime     Expire-time
1     eth-0-2    ff0e::1234                               00:00:02   stopped

14.5MVR6配置

14.5.1概述

简介

在传统的IPv6组播点播方式下,汇聚组播路由器下连一些接入交换机,接入交换机上连接了分布在不同VLAN中的用户。当这些不同VLAN的用户点播相同Group的节目时,汇聚的组播路由器需要为每个VLAN内的用户复制一份数据,每个VLAN的组播流量都要占用接入交换机的带宽。这样既增加了汇聚路由器的负担,也浪费接入设备的带宽。

MVR6(IPv6组播VLAN注册)功能能够很好的解决这个问题。在靠近用户侧的接入交换机上启用组播VLAN,汇聚路由器只需把组播数据在源VLAN内发送给接入交换机,而不必在每个用户VLAN内都复制一份,接入交换机收到组播数据后再根据用户请求进行复制,给每个VLAN内的用户发送一份组播数据。从而节省了网络带宽,也减轻了三层设备的负担。

MVR6依赖于MLD Snooping进行工作,而且只有MVR6全局配置的Group才会生效。如果在MVR6的下游口上接收的MLD报文中组播组不在MVR6全局Group中,该报文将被忽略。通过在MVR6的下游口上接收的MLD报告/离开报文来维护接收者信息,MVR6上游口收到IPv6组播数据后根据下游口的IPv6组播组信息来决定将IPv6组播数据从哪些VLAN的端口转发出去。

14.5.2配置举例

1.组网拓扑

MVR6

图14-3MVR6

2.配置步骤

步骤 1进入配置模式

Switch# configure terminal

步骤 2进入vlan配置模式,创建vlan

Switch2配置:

Switch2(config)# vlan database
Switch2(config-vlan)# vlan 111,10,30
Switch2(config-vlan)# quit

步骤 3进入接口配置模式,配置接口属性

Switch1的接口配置:

Switch1(config)# interface eth-0-1
Switch1(config-if)# no switchport
Switch1(config-if)# no shutdown
Switch1(config-if)# ipv6 address 2001:1::1/64
Switch1(config-if)# ipv6 pim sparse-mode
Switch1(config-if)# exit

Switch2的接口配置:

Switch2(config)# interface vlan 111
Switch2(config-if)# exit
Switch2(config)# interface vlan 10
Switch2(config-if)# exit
Switch2(config)# interface vlan 30
Switch2(config-if)# exit
Switch2(config)# interface eth-0-1
Switch2(config-if)# switchport access vlan 111
Switch2(config-if)# exit
Switch2(config)# interface eth-0-2
Switch2(config-if)# switchport access vlan 10
Switch2(config-if)# exit
Switch2(config)# interface eth-0-3
Switch2(config-if)# switchport access vlan 30
Switch2(config-if)# exit

步骤 4启用MVR6

switch启用MVR6,这样从RouterSwitch只会拷贝一份组播流,在Switch上再将这个组播流从eth-0-2eth-0-3发送出去。

Switch2(config)# no ipv6 multicast-routing
Switch2(config)# ipv6 mld snooping
Switch2(config)# mvr6
Switch2(config)# mvr6 vlan 111
Switch2(config)# mvr6 group ff0e::1234 64
Switch2(config)# mvr6 source-address fe80::1111
Switch2(config)# interface eth-0-1
Switch2(config-if)# mvr6 type source
Switch2(config-if)# exit
Switch2(config)# interface eth-0-2
Switch2(config-if)# mvr6 type receiver vlan 10
Switch2(config-if)# exit
Switch2(config)# interface eth-0-3
Switch2(config-if)# mvr6 type receiver vlan 30
Switch2(config-if)# exit

步骤 5退出配置模式

Switch(config)# end

步骤 6检查配置

Switch1 的显示结果:

Switch1# show ipv6 mld groups
MLD Connected Group Membership
Group Address                           Interface            Expires
ff0e::1234                              eth-0-2              00:03:01
ff0e::1235                              eth-0-2              00:03:01
ff0e::1236                              eth-0-2              00:03:01
ff0e::1237                              eth-0-2              00:03:01
ff0e::1238                              eth-0-2              00:03:01
………… 
ff0e::1273                              eth-0-2              00:03:01

Switch2 的显示结果:

Switch2# show mvr6
MVR6 Running: TRUE
MVR6 Multicast VLAN: 111
MVR6 Source-address: fe80::111
MVR6 Max Multicast Groups: 1024
MVR6 Hw Rt Limit: 224
MVR6 Current Multicast Groups: 64
VLAN  Interface  Group Address                            Uptime     Expire-time
10     eth-0-2   ff0e::1234                               00:03:23   00:02:03  
10     eth-0-2   ff0e::1235                               00:03:23   00:02:03  
10     eth-0-2   ff0e::1236                               00:03:23   00:02:03  
10     eth-0-2   ff0e::1237                               00:03:23   00:02:03  
10     eth-0-2   ff0e::1238                               00:03:23   00:02:03  
10     eth-0-2   ff0e::1239                               00:03:23   00:02:03  
……
10     eth-0-2   ff0e::1273                               00:03:23   00:02:03