PIM(Protocol Independent Multicast,协议无关组播)是一种协议无关的域内组播路由协议。即为IP组播提供路由信息的可以是任意单播路由协议,如静态路由、RIP和OSPF等。组播路由和单播路由无关,只是利用单播路由表生成组播路由信息。PIM-SM是一种使用最广泛的域内组播路由协议,适用于任何形式的网络,尤其是在组成员分布相对分散和范围较广的大规模网络中,相比其他域内组播协议具有不可替代的优势。
PIM-SM假设所有主机不需要接收组播数据,只向明确提出需要组播数据的主机转发。
PIM组播设备同时提供ASM模型和SSM模型的组播服务。对SSM地址范围内的组,使用SSM模型。对其他组,使用ASM模型。在ASM模型中,组播数据接收者只指定加入某个组播组G,而没有指定组播源S。在SSM模型中,组播数据接收者可以同时指定组播源S和组播组G。
ASM模型的PIM-SM实现方法如下:
l 使用RP(Rendezvous Point,汇聚点)作为共享树的根,即RP作为中转机构。连接接收者的DR向某组播组对应的RP发出加入消息,路径上的各台组播设备逐跳创建(*,G)表项,最终生成一棵以RP为根的RPT共享转发树。
l 组播源要向某组播组发送数据,首先由源端DR负责向RP发送注册报文,在RP上创建(S,G)表项。注册成功后,组播源再把组播数据发向RP,当组播数据到达RP后,被复制并沿RPT发送给接收者。
在ASM模型中,PIM-SM的关键机制包括PIM邻居建立机制、DR竞选机制、RP机制、BSR机制、组播源注册机制、SPT切换机制及断言机制。
PIM组播设备之间必须首先建立邻居关系,形成PIM网络,才能交互其他PIM控制消息或转发组播报文。PIM接口对外发送Hello消息。封装Hello消息的组播报文的目的地址为224.0.0.13(表示同一网段中所有PIM组播设备);源地址为接口的IP地址;TTL数值为1。Hello消息的作用如下:
l 发现PIM邻居
同一网段中的PIM组播设备都会收到目的地址为224.0.0.13的组播报文,从而获得邻居信息,建立邻居关系。邻居建立成功后接口才可以接收并处理其他PIM协议报文,创建组播路由表项。
当接口状态由Down变为Up或是接口检测到新邻居时,会使用Triggered-Hello-Delay产生一个随机时间。在该随机时间内,接口会往外发送hello报文。
l 协商各项协议参数。Hello消息包含的关键参数如下:
○ DR优先级(DR Priority):组播设备接口竞选DR的优先级,优先级比较高的设备获胜。
○ 邻居保持时间(Holdtime):保持时间,超时前认为邻居为可达状态。
○ 剪枝报文传播延迟(Propagation Delay):PIM设备收到剪枝报文后向上游发送剪枝报文的延迟时间。
○ 剪枝否决时间(Override-Interval):剪枝否决时间的时间间隔。
l 维持邻居关系
PIM组播设备之间周期性地发送Hello消息。如果邻居保持时间超时还没有收到该PIM邻居发出的新的Hello报文,则认为该邻居不可达,将其从邻居列表中清除。PIM邻居的变化将导致网络中组播拓扑的变化。如果组播分发树上的某上游邻居或下游邻居不可达,将导致组播路由重新收敛,组播分发树迁移。
如 REF _Ref63623057 \r \h \* MERGEFORMAT 图1-1 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600320033003000350037000000 ,源端DR负责向RP发送注册报文,成员端DR负责向RP发送Join报文和转发组播数据给组播组成员。在连接组成员或者组播源的共享网段上,如果同时存在多台PIM设备,则PIM邻居建立过程中通过邻居Hello消息获取邻居的IP地址和DR优先级进行DR竞选。竞选成功的PIM设备成为成员端DR或者源端DR。竞选规则如下:
(1) 比较DR优先级,优先级较高的设备获胜。
(2) 如果DR优先级相等或者共享网段中有不支持DR优先级的邻居,则比较邻居接口的IP地址,IP地址较大者获胜。
图1-1 DR竞选示意图
在PIM网络中,BSR定期生成包括一系列C-RP以及相应的组地址的自举消息。自举消息在整个域中逐跳发送。整个网络中的所有PIM组播设备都会收到自举消息,并记录下C-RP以及相应的组地址。
PIM-SM域内配置了一个或多个C-BSR(Candidate-BSR,侯选自举设备),应用一定的规则从中选出BSR(自举设备)。
在PIM网络中,RP处理源端DR的注册信息及组成员的加入请求。组播源到组播组成员分成两段:以源端DR为根、以RP为叶子的SPT和以RP为根、以成员端DR为叶子的RPT。ASM模型的PIM-SM网络必须以RP为转发点,进行数据建立或转发。
在PIM网络中,一个RP可以为一个或多个组服务,但是一个组只能同时被一个RP服务。在PIM网络中,RP配置可以分为静态RP和动态RP。
l 静态RP
静态RP通过在各个PIM组播设备上直接设置RP地址,整个PIM网络都知道RP地址。
l 动态RP
如 REF _Ref63623103 \r \h \* MERGEFORMAT 图1-2 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600320033003100300033000000 ,PIM-SM域中可以配置几台C-RP(Candidate-RP,候选RP)来动态选举出RP,这些C-RP将包含它们的地址及其服务的组播组等信息,组成Advertisement报文,周期性地单播至BSR设备。BSR设备需要通过配置C-BSR,按照一定的规则竞选出来。BSR定期生成包括一系列C-RP及其服务的组地址的自举消息。自举消息在整个域中发布。域内每个PIM设备接收并保存这些自举消息,运用相同的Hash算法进行运算,竞选出各个组对应的RP。BSR和RP的竞选过程如下:
○ BSR的竞选过程:竞选初期每个C-BSR都认为本机是BSR,向全网发送Bootstrap自举消息。自举消息中携带C-BSR地址和优先级。全网中的每一台PIM设备收到自举消息后,通过比较优先级和C-BSR地址竞选出BSR。
○ RP的竞选过程:C-RP定期向BSR单播Advertisement报文通告C-RP地址、优先级及其服务的组地址。BSR把这些信息汇总成RP-Set,封装在Bootstrap自举消息中发布给全网的每一台PIM设备。全网中的每一台PIM设备收到RP-Set后使用相同的算法计算得到为每个特定组服务的RP。每个PIM设备都获知各个组对应的RP位置。
图1-2 动态RP竞选示意图
如 REF _Ref59800050 \r \h \* MERGEFORMAT 图1-3 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003800300030003000350030000000 所示当网络中出现组播源时,由连接组播源的DR向RP发送注册报文,使RP获得源信息和组播报文,进而将组播报文转发到组播组成员。具体过程如下:
(1) 组播源向源端DR发送组播数据报文。
(2) 源端DR将收到的组播数据报文封装在注册报文中单播发送给RP。
(3) RP收到注册报文后,解封装并沿着RPT向组成员转发组播报文。同时RP向源发送一个(S,G)Join加入报文。路径上的PIM设备创建(S,G),最终建立一个从源到RP之间的SPT转发树。
(4) 组播源S的DR组播设备会利用该SPT转发树转发组播报文,这样组播数据就会以组播报文的形式到达RP。
(5) RP收到来自组播源的组播数据报文时,丢弃注册报文并同时向组播源发送注册-停止报文。
(6) 组播源的DR收到注册-停止报文后,停止封装注册报文,直接沿着SPT转发组播数据并周期性的向RP发送注册探测报文。
(7) RP收到注册探测报文后向组播源DR发送注册-停止报文,并更新(S,G)表项。
(8) 组播源的DR收到注册-停止报文后继续沿着SPT转发组播数据报文,而不会重新封装注册报文。
当网络中出现组成员时,由连接组成员的DR向RP的方向发送Join加入报文,构建RPT。如果这时网络中存在组播源,则已送达RP的组播报文,可以沿RPT到达组成员。
构建RPT的过程如下:
l 当成员端DR收到一个IGMP(*,G)INCLUDE Report报文时,如果接收端的DR不是组G的RP,成员端DR会向RP发送一个(*,G)Join报文,路径上的各台组播设备逐跳创建(*,G)表项,生成一棵以RP为根的RPT共享转发树。
l 在RPT构建过程中,每一台PIM设备在向RP发送Join报文时进行RPF(Reverse Path Forwarding,逆向路径转发)检查:查找到达RP的单播路由,单播路由出接口为上行口,单播路由的下一跳为RPF邻居。Join报文从成员端DR逐跳发送到RP。
在ASM模型的PIM-SM网络中,一个或多个组播组对应一个RP。在未进行STP切换的情况下,所有发往RP服务的组播组的报文都必须先经过RP中转。当组播数据报文速率增大时,将增加RP的压力。为解决该问题,PIM-SM通过SPT切换来减轻RP的负担。SPT切换可以由RP触发,也可以由成员端DR触发:
l RP触发SPT切换
RP收到源端DR发送的注册报文后,解封装注册报文并将其中的组播数据报文沿着RPT转发到组播组成员,同时RP向源端DR发送(S,G)Join报文。路径上的每台PIM组播设备逐跳创建(S,G)表项,从而建立从RP到源的SPT。
l 成员端DR触发SPT切换
a 成员端DR收到第一个从RP转发过来的组播报文时,获取源的地址信息。
b 成员端DR向源端发送(S,G)Join报文,途中的每台PIM组播设备创建(S,G)表项,建立成员端DR到源端DR的SPT。
c SPT建立成功后,成员端DR逐跳向RP发送剪枝报文,删除(*,G)表项的下游接口。完成剪枝后,RP不再沿RPT向组成员端DR转发组播数据报文。
d 从成员端DR到源端DR的SPT不经过RP,则RP会向源端DR发送剪枝报文,删除(S,G)表项的下游接口。完成剪枝后,源端DR不再沿原来的“RP-源端DR”的SPT转发报文到RP。
在SSM(Source-Specific Multicast,指定源组播)模型中,组播组成员可以指定接收或者不接收某个组播源的数据。组成员事先通过访问服务器和接受广告等渠道了解到组播源的信息(S,G)。成员端DR了解到组成员需求后,向源端DR发送Join报文,该Join报文逐跳向组播源方向传输,建立组播源与组成员之间的SPT。
说明
● 在IPv4上实现SSM模型,需要先通过PIM-SM实现组播互通并配置IGMPv3对主机和设备的成员关系进行管理。
● SSM模型要求:必须通过其他方式的网络服务,使用户主机能够预先知道组播源的位置,用户主机才有可能对组播源进行选择。
● 在组播接收者到组播源的途径设备上,必须开启PIM-SM和SSM功能。
图1-4 SSM模型
说明
开启SSM功能后,SSM缺省的组范围为232/8。可以通过命令修改SSM的组范围。
在SSM模型中,PIM-SM的关键机制包括邻居建立、DR竞选及SPT建立。
SSM模型的PIM邻居建立与ASM模型的邻居建立机制相同,请参见“ REF _Ref59981335 \r \h \* MERGEFORMAT 1.2.1 2. 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380031003300330035000000 REF _Ref59981335 \h \* MERGEFORMAT PIM邻居建立 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380031003300330035000000 ”。
SSM模型的DR竞选与ASM模型的DR竞选机制相同,请参见“ REF _Ref59981392 \r \h \* MERGEFORMAT 1.2.1 3. 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380031003300390032000000 REF _Ref59981392 \h \* MERGEFORMAT DR竞选 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380031003300390032000000 ”。
SPT的构建过程如下:
(1) 成员端DR通过IGMPv3协议了解到组成员有接收某个组播源的数据需要,逐跳向源发送(S,G)Join报文。
(2) 沿途各个PIM组播设备接收到(S,G)Join报文后创建(S,G)表项,从而建立组成员到组播源的SPT最短路径树。
(3) SPT成功建立后,组播源将沿着SPT将组播数据报文分发给组成员。
l RFC 4601:Protocol Independent Multicast-Sparse Mode (PIM-SM)
l RFC 5059:Bootstrap Router (BSR) Mechanism for Protocol Independent Multicast (PIM)
l RFC 3962:Protocol Independent Multicast-Dense Mode protocol
l RFC 4607:Source-Specific Multicast for IP
l RFC 7431:Multicast-Only Fast Reroute
l 在开启PIM-SM前,请在全局配置模式下开启组播路由转发功能,否则即使开启了PIM-SM,也不能转发组播数据报文。
l 在IPv4组播网络里,所有三层设备上都需要运行PIM(IPv4)协议,否则组播转发路径无法正常建立。
(1) REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000
(2) 配置PIM-SM模型。以下配置任务请至少选择其中一项进行配置。
○ REF _Ref62050355 \h \* MERGEFORMAT 配置PIM-SM ASM模型 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003000350030003300350035000000
○ REF _Ref62050356 \h \* MERGEFORMAT 配置PIM-SM SSM模型 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003000350030003300350036000000
(3) REF _Ref50120594 \h \* MERGEFORMAT 配置PIM邻居参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003100320030003500390034000000 。以下所有配置任务均为可选配置,请根据实际情况选择配置。
○ REF _Ref59642735 \h \* MERGEFORMAT 配置邻居消息时间参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003700330035000000
○ REF _Ref59642872 \h \* MERGEFORMAT 配置邻居跟踪 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003800370032000000
○ REF _Ref59642760 \h \* MERGEFORMAT 配置邻居过滤 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003700360030000000
(4) (可选) REF _Ref59982646 \h \* MERGEFORMAT 配置DR优先级 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380032003600340036000000
(5) REF _Ref59982586 \h \* MERGEFORMAT 配置Join/Prune报文参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003900380032003500380036000000 。以下所有配置任务均为可选配置,请根据实际情况选择配置。
○ REF _Ref59555831 \h \* MERGEFORMAT 配置Join/Prune报文发送间隔 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500350035003800330031000000
○ REF _Ref59555837 \h \* MERGEFORMAT 配置剪枝延迟时间 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500350035003800330037000000
○ REF _Ref69234055 \h \* MERGEFORMAT 配置Join/Prune信息的源组地址过滤 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360039003200330034003000350035000000
(6) (可选) REF _Ref90988151 \h \* MERGEFORMAT 配置Super VLAN接口上开启PIM-SM 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600390030003900380038003100350031000000
(7) (可选) REF _Ref56172578 \h \* MERGEFORMAT 配置PIM-BFD联动 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500370038000000
(8) (可选) REF _Ref82418490 \h \* MERGEFORMAT 开启Generation ID变更功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600380032003400310038003400390030000000
组播PIM-SM网络中,PIM组播设备之间必须首先建立邻居关系,才能交互其他PIM控制消息或转发组播报文。所有的接口都需要配置PIM-SM功能,以便进行PIM邻居建立、组播表项建立及组播报文的转发。
在一个PIM网络中,如果一个接口只需要接收组播数据报文,不需要参与PIM网络拓扑构建,如末梢网络设备连接用户主机的接口,可以配置成PIM-SM Passive模式,接口配置PIM-SM Passive功能后不发送也不接收PIM报文,可以提升设备性能。
l 应在每台组播设备上开启IPv4组播路由功能。
l 应在以下接口上开启PIM-SM功能:组播设备互联接口,作为静态RP、C-RP和C-BSR的接口,连接组播源或用户主机的接口。
l PIM接口必须是三层接口,包括:三层以太网接口、三层聚合接口、SVI接口、环回口和VXLAN路由接口。
所有PIM接口IPv4单播路由可达。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 开启IPv4组播路由功能。
ip multicast-routing
缺省情况下,IPv4组播路由功能处于关闭状态。
(4) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(5) 开启PIM-SM功能。
ip pim sparse-mode
缺省情况下,PIM-SM功能处于关闭状态。
(6) (可选)开启PIM-SM Passive功能。
ip pim sparse-mode passive
缺省情况下,PIM-SM Passive功能处于关闭状态。
PIM-SM网络支持ASM和SSM两种模型的组播服务。可以仅支持其一,也可以两者都支持。
ASM模型的PIM-SM,可以为用户提供任意源的组播服务。加入某个组播组的用户都能收到任意源发往该组播组的组播报文。
如果要求PIM网络支持ASM模型的组播服务,则必须配置RP。配置RP的三种方法:
l 仅配置静态RP。
l 仅配置动态RP。
l 同时配置静态RP和动态RP。如果同时配置了静态RP和动态RP,则动态RP优先。
配置PIM-SM ASM模型配置任务如下,其中“配置静态RP”和“配置动态RP”至少选择一种进行配置:
l REF _Ref56172521 \h \* MERGEFORMAT 配置静态RP 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500320031000000
l 配置动态RP
○ REF _Ref61289046 \h \* MERGEFORMAT 配置C-BSR及其相关参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360031003200380039003000340036000000
○ REF _Ref61289050 \h \* MERGEFORMAT 配置C-RP及其相关参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360031003200380039003000350030000000
○ (可选) REF _Ref57124266 \h \* MERGEFORMAT 配置注册参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350037003100320034003200360036000000
l (可选) REF _Ref56172547 \h \* MERGEFORMAT 配置最后一跳设备由共享树切换到最短路径树 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500340037000000
PIM-SM组播网络中的各个节点IPv4单播路由可达。
通过手工的方式配置静态RP可以避免BSR与C-RP之间,BSR与各个PIM组播设备间频繁的报文交互而占用带宽。在组播网络相对简单或规模比较小的情况下可以使用静态的方式配置RP。
l 应在每台组播设备上配置静态RP。
l 应选择性能较强的组播设备作为静态RP。
l 建议以环回口地址作为静态RP地址。
l 所有组播设备上配置的静态RP(包括RP地址及其服务的组地址范围)应完全相同。
l 如果配置多个静态RP,对应不同的组地址范围,可以实现负载分担。
l 如果有多个静态RP服务于同一个组,IP地址大的静态RP将被优先采用。
l 使用控制列表静态配置RP地址可以配置多个的组播组(引用ACL)或者所有的组播组(不引用ACL),但是一个RP静态地址不能被多次配置使用,后面的配置会覆盖前面的配置。
配置静态RP服务的组地址范围前,需保证对应的ACL访问控制列表已经创建并指定静态RP服务的组播组范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 配置静态RP。
ip pim rp-address ipv4-rp-address [ { acl-name | acl-number } ]
缺省情况下,未配置静态RP。
在一个ASM模型的PIM-SM域中,必须存在一个唯一的自举路由器BSR。BSR负责收集并发布RP信息。
l BSR由C-BSR应用一定的规则选举产生。选举规则如下:
a 比较二者的优先级,优先级较高的设备获胜;
b 优先级相同时比较二者的IP地址,IP地址较大的设备获胜;
c 获胜者成为域内BSR,周期性地向域内发送自举报文。自举报文中包含本机的IP、RP-Set信息和哈希掩码信息。哈希掩码信息用于在C-RP竞选时进行哈希计算。如果在自举报文保持时间内,其他C-BSR没有收到BSR发来的自举报文,则认为BSR不可达,会发起新一轮的BSR选举。
l 为了防止非法BSR欺骗,可以在域内所有PIM设备上限定合法的BSR范围,PIM设备如果收到非法的BSR发出的自举报文则不进行处理。
l 为了限制BSM报文的泛洪,可以在接口上配置BSR边界。该接口收到BSM后会立即丢弃,BSM也不会从该接口转发,限制了BSM报文泛洪的范围。
l 应在一台或多台组播设备上配置C-BSR。
l 应选择性能较强的组播设备作为C-BSR。C-RP与C-BSR可以位于同一台组播设备,也可以位于不同的组播设备。
l 建议以环回口地址作为C-BSR地址。
l 如果配置多个C-BSR,可以实现冗余备份。
l 建议在域内所有PIM设备上配置合法的BSR范围。
l 必须在域之间的接口配置BSR边界。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
l 在PIM设备上配置合法BSR地址范围限制前,需保证对应的ACL访问控制列表已经创建并指定合法的BSR范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 配置C-BSR及其参数。
ip pim bsr-candidate interface-type interface-number [ hash-mask-length [ priority-value ] ]
缺省情况下,未配置C-BSR。
(4) (可选)在所有PIM设备上配置合法BSR地址范围限制。
ip pim accept-bsr { list acl-name | list acl-number }
缺省情况下,接收所有BSM报文。
(5) (可选)进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(6) (可选)PIM-SM域之间的接口配置BSR边界。
ip pim bsr-border
缺省情况下,未配置BSR边界。
如果存在多个域,则必须在两个域接口之间配置。
l 设备配置为C-RP后,会周期性的向BSR单播Advertisement报文。报文中包括RP优先级、Advertisement报文保持时间(大于Advertisement报文发送间隔)、RP地址及其服务的组地址和组播地址前缀。BSR收到Advertisement报文后在Advertisement报文保持时间内,将报文中的信息汇总成RP-Set信息封装在自举报文中,周期性地向所有PIM设备发送。域内的PIM设备收到BSR发出来的自举报文后,应用相同的算法进行哈希计算,计算出为每个组播组服务的胜选RP。如果在Advertisement报文保持时间超时后,BSR还没有收到C-RP发过来的下一个Advertisement报文,则认为该C-RP不可达。
l 为了防止非法C-RP欺骗,可以在BSR上限定合法的C-RP范围。如果收到非法C-RP发过来的Advertisement报文则不进行处理。
l BSR可以决定是否接收C-RP发来的组播地址前缀为0的Advertisement报文。当组播地址前缀为0时,表示该C-RP为所有组播组服务。
l 域内每台PIM组播设备收到BSR发来的自举消息时,应用一定的规则进行RP竞选,竞选规则如下:
a 比较用户加入的组播组地址与C-RP服务的组地址范围掩码长度,长度最长的设备获胜。
b 以上比较结果相同时,比较C-RP的优先级,优先级值越小优先级越高,优先级高的设备获胜。
c 以上结果结果相同时,执行哈希计算,计算结果最大的设备获胜。
d 以上比较结果相同时,比较C-RP的IP地址,IP地址较大的设备获胜。
l 应在一台或多台组播设备上配置C-RP。
l 应选择性能较强的组播设备作为C-RP。C-RP与C-BSR可以位于同一台组播设备,也可以位于不同的组播设备。
l 建议以环回口地址作为C-RP地址。
l 如果配置多个C-RP为相同的组服务,可以实现冗余备份。
l 如果配置多个C-RP为不同的组服务,可以实现负载分担。
l 在BSR上可以配置合法的C-RP范围。
l 若需要指定特定组范围为C-RP的服务对象,那么对应的命令可以带上ACL选项。需要注意的是组范围的计算只基于Permit的ACE表项,不会对Deny的ACE进行计算。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
l 如果使用group-list关键字参数限定RP所服务的组播组范围,需保证对应的ACL访问控制列表已经创建并指定RP服务的组播组范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
l 配置C-RP及其参数。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 配置C-RP。
ip pim rp-candidate interface-type interface-number [ priority priority-value ] [ interval interval ] [ { group-list acl-name | group-list acl-number } ]
缺省情况下,未配置C-RP。
l (可选)在BSR上配置接收C-RP发来的组播地址前缀为0的Advertisement报文,即该C-RP为所有的组播组服务。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 配置BSR接收C-RP发出的为所有组播组服务的Advertisement报文。
ip pim accept-crp-with-null-group
缺省情况下,BSR接收C-RP发出的为所有组播组服务的Advertisement报文的功能处于关闭状态。
建议在所有C-BSR组播设备上进行此项配置。
l (可选)在BSR上配置合法的C-RP的范围。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 配置合法的C-RP的范围。
ip pim accept-crp { list acl-name | list acl-number }
缺省情况下,C-BSR接受所有外部的C-RP通告。
建议在所有C-BSR组播设备上进行此项配置。
l (可选)在所有的PIM组播设备上配置忽略RP优先级,重新选择RP。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 配置RP竞选时忽略RP优先级。
ip pim ignore-rp-set-priority
缺省情况下,用户加入的组地址域C-RP服务的组范围掩码长度相同的情况下,优先选择优先级较高的RP。
可在每台组播设备上开启忽略C-RP优先级功能。
组播源发送组播数据首先到达源端DR,源端DR收到后封装成注册报文发送给RP。所以注册报文的相关参数主要在源端DR和RP上进行配置。
l 在源端DR上可以对以下参数进行调整:
○ 配置源端DR对RP可达性检查:发送注册报文前,判断RP是否可达。若可达则发送,若不可达则不发送。
○ 配置源端DR发送注册报文速率限制:针对每个(S,G)状态的注册报文发送速度进行限制,如果有N个(S,G)状态的报文从同一个源端DR发出,则注册报文的限速为N*限速值。
○ 配置注册报文的源地址:缺省情况下,注册报文源地址使用与组播源相连的DR接口地址,但是如果RP上配置了安全策略过滤了该地址,则RP不会接收该源端DR发过来的注册报文。此时可以重新指定一个可达的合理的源地址作为注册报文的源地址。
○ 配置注册报文的抑制时间:RP收到组播源沿SPT发送的组播数据报文时,会向源端DR发送注册-停止消息。在注册抑制时间内,源端DR会停止封装注册报文,并沿着SPT发送组播数据到RP。注册抑制时间超时后,如果源端DR还没收到下一个RP发送的注册-停止报文,则恢复封装注册报文发送给RP。
○ 配置NULL报文的探测时间:在注册抑制时间超时前,RP收到源端DR发过来的空注册报文后刷新本地(S,G)表项,并向源端DR发送注册-停止报文以便让源端DR刷新注册抑制定时器,否则源端DR会恢复注册报文封装的方式来发送组播数据报文。
l 在RP上可以对以下参数进行调整:
○ 配置源注册的(S,G)地址范围限制:使ASM模型仅为允许范围内的组播报文提供组播服务。配置本命令后,当收到未授权的注册源时,RP会立即回送注册-停止报文。
○ 配置注册报文的校验和的长度:对注册报文校验和的计算方式调整,计算整个PIM协议报文(含其中封装的组播数据报文)或者单独的注册报文的PIM头部。
○ 配置RP对注册报文解封装,再向下游接口进行分发:在RP上配置本命令,对接收到的带组播数据报文的注册报文进行解封装并转发其中的组播数据报文。
○ 配置RP收到注册报文(S,G)生存时间:(S,G)表项的生存时间,表项超时没收到报文则老化。
l 指定的注册报文的源地址必须单播路由可达,建议使用源端DR的Loopback口地址作为注册报文的源地址。
l 如果没有配置ip pim rp-register-kat命令,在RP上定义注册报文抑制时间将修改RP上(S,G)生存周期。
l 配置注册报文速率限制将降低源DR和RP的负担,不超过限制的注册报文才能被发送。
l 注册探测时间间隔不能超过注册抑制时间的一半,否则配置不成功,并输出告警提醒。
l 注册抑制时间的3倍与注册探测时间之和不能超过65535,否则配置不成功,并输出告警提醒。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
l 配置源注册的(S,G)地址范围前,如果指定list关键字参数,则需保证对应的ACL访问控制列表已经创建并指定源注册的(S,G)地址范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
l 配置源注册的(S,G)地址范围前,如果指定route-map关键字参数,则需保证对应的Route Map路由图已经创建并指定源注册的(S,G)地址范围。关于路由图配置的详细介绍,请参见“IP路由配置指南”中的“路由策略”。
l 在RP上配置注册报文的校验和必须计算整个报文前,如果指定group-list关键字参数,则需保证对应的ACL访问控制列表已经创建并指定注册报文的校验和必须计算整个报文的组播组地址范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
注册参数的所有配置任务均为可选配置,请根据实际情况选择配置。
l 在源端DR上配置注册参数。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 在源端DR上开启RP可达性检查。
ip pim register-rp-reachability
缺省情况下,发送注册报文时,RP可达性检查功能处于关闭状态。
d 在源端DR上限制源端DR发送注册报文速率。
ip pim register-rate-limit rate
缺省情况下,未限制注册报文的速率。
e 在源端DR上配置注册报文的源地址。
ip pim register-source { ipv4-local-address | interface-type interface-number }
缺省情况下,注册报文中的源IP使用与组播源连接的DR接口地址。
f 在源端DR上配置注册报文的抑制时间。
ip pim register-suppression suppression-time
缺省情况下,注册报文的抑制时间为60秒。
g 在源端DR上配置NULL报文的探测时间。
ip pim probe-interval probe-interval
缺省情况下,注册探测时间为5秒。
l 在RP上配置注册参数。
a 进入特权模式。
enable
b 进入全局配置模式。
configure terminal
c 在RP上限制源注册的(S,G)地址范围。
ip pim accept-register { { list acl-name | list acl-number } | route-map route-map-name } *
缺省情况下,注册报文的(S,G)地址范围无限制,RP接受所有(S,G)的注册报文。
d 在RP上配置注册报文的校验和必须计算整个报文。
ip pim register-checksum-wholepkt [ { group-list acl-name | group-list acl-number } ]
缺省情况下,注册报文的校验和只计算报文头部和注册报文头部,而非整个报文。
如果未指定group-list关键字参数,则对所有组地址应用此配置。
e 在RP上配置允许RP对注册报文进行解封装并转发其中的组播数据报文。
ip pim register-decapsulate-forward
缺省情况下,RP对注册报文进行解封装并转发其中的组播数据报文的功能处于关闭状态。
由于是软件对注册报文进行解封装并转发其中的组播数据报文,因此如果需要解封装并转发的注册报文较多的情况下,配置了本功能,会导致CPU处理较繁忙;不建议配置本命令。
f 在RP上配置收到注册报文所创建(S,G)生存时间。
ip pim rp-register-kat interval
缺省情况下,RP上(S,G)生存时间定时器的时间为注册抑制时间的三倍与注册探测时间之和。
当网络中的组播流量比较大时,容易引起因RP上负担过大而发生故障。为了减轻RP的压力,可以通过成员端DR发起SPT切换。可以通过配置指定需要进行SPT切换的组播组。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
l 配置SPT切换的组地址范围限制前,需保证对应的ACL访问控制列表已经创建并指定允许SPT切换的组播组范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 开启SPT切换功能。
ip pim spt-threshold [ { group-list acl-name | group-list acl-number } ]
缺省情况下,SPT切换功能处于关闭状态。
如果不指定group-list关键字参数,允许所有组进行SPT切换。
PIM-SM的SSM服务模型,可以为用户提供指定源服务,用户可以根据需要选择接收或者不接收指定源的组播数据。
l 如果要求PIM网络支持SSM模型的组播服务,则必须开启SSM功能。
l 应在每台组播设备上开启SSM功能。
l 所有组播设备上配置的SSM组地址范围应完全相同。
l 需要配置IGMPv3或SSM Mapping。
l 组播网络中各节点IPv4路由单播可达。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
l 使用ACL配置SSM组播组范围前,需保证对应的ACL访问控制列表已经创建并指定SSM组播组范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 开启SSM功能。
ip pim ssm { default | range { acl-name | acl-number } }
缺省情况下,SSM功能处于关闭状态。
各个PIM组播设备,通过交互Hello报文来发现邻居、协调各项协议参数和维持邻居关系。
PIM邻居参数的所有配置任务均为可选配置,请根据实际情况选择配置。
l REF _Ref59642735 \h \* MERGEFORMAT 配置邻居消息时间参数 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003700330035000000
l REF _Ref59642872 \h \* MERGEFORMAT 配置邻居跟踪 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003800370032000000
l REF _Ref59642760 \h \* MERGEFORMAT 配置邻居过滤 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003600340032003700360030000000
l 组播网络中各节点IPv4单播路由可达。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
邻居消息时间参数包括Hello消息发送间隔和Hello消息发送延迟。
l Hello消息发送间隔可配置,Hello消息保持时间为Hello消息发送间隔的3.5倍。Hello消息保持时间超时而未收到Hello消息则认为邻居不可达。
l 当接口状态由Down变为Up或是接口检测到新邻居时,产生一个随机时间称为Hello消息发送延迟。在该随机的延迟时间内,接口会往外发送Hello报文。
Hello消息保持时间超过65535秒时,Hello消息发送间隔自动被设置为18725秒。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置邻居消息时间参数。请至少选择其中一项进行配置。
○ 配置Hello消息发送间隔。
ip pim query-interval hello-interval
缺省情况下,Hello报文发送周期为30秒。
○ 配置Hello消息的发送延时。
ip pim triggered-hello-delay delay
缺省情况下,Hello消息报文发送延时为5秒。
在开启接口的加入抑制能力的情况下,当本组播设备想往上游邻居发送Join报文时,如果收到邻居往上游组播设备发送的Join报文,那么本组播设备的Join报文会被抑制即不会发出。但是如果接口的加入抑制能力被禁止,此时本组播设备可以发送Join报文。当下游接收者的加入抑制能力都被禁止时,上游邻居可以通过接收到的Join报文数确切知道下游邻居有几个接收者,即邻居跟踪。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 开启邻居跟踪功能。
ip pim neighbor-tracking
缺省情况下,邻居跟踪功能处于关闭状态。
邻居过滤可以保护邻居之间关系,对邻居进行限制可以加强PIM网络的安全性,限制邻居的合法地址范围。只要某邻居被过滤访问列表拒绝,则PIM-SM将不会与该邻居建立对等关系,或者中止与该邻居已经建立的对等关系。
配置邻居过滤前,需保证对应的ACL访问控制列表已经创建并指定合法的邻居地址范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置邻居过滤。
ip pim neighbor-filter { acl-name | acl-number }
缺省情况下,邻居过滤功能处于关闭状态。
在组播源或组成员所在的共享网段中,通常存在多个PIM组播设备。多个PIM组播设备之间通过邻居消息进行DR选举,优先级较大的设备获选。当优先级相同或者部分PIM设备不支持DR优先级时,IP地址比较大的PIM设备胜选。胜选的PIM设备作为DR,负责源端或者成员端协议报文的发送和组播报文的转发。
l 组播网络中各节点间IPv4单播路由可达。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置Hello消息中的DR优先权。
ip pim dr-priority priority-value
缺省情况下,DR优先级为1。
设备发送Join报文请求上游设备转发组播数据报文,发送Prune报文请求上游设备停止转发组播数据报文,形成RPT或SPT。
l 网络管理员需要保证剪枝否决时间必须小于Join-Prune报文的HoldTime,否则将有可能造成短暂的断流。
l 当PIM组播设备从上游接口接收到Prune消息时,说明该共享网段内还存在其他下游设备。如果这台PIM组播设备仍然需要接收组播数据,则必须在剪枝否决时间内向上游设备发送剪枝否决消息。
Join/Prune报文相关参数的所有配置任务均为可选配置,请根据实际情况选择配置。
l REF _Ref59555831 \h \* MERGEFORMAT 配置Join/Prune报文发送间隔 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500350035003800330031000000
l REF _Ref59555837 \h \* MERGEFORMAT 配置剪枝延迟时间 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500350035003800330037000000
l REF _Ref69234055 \h \* MERGEFORMAT 配置Join/Prune信息的源组地址过滤 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360039003200330034003000350035000000
REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
PIM设备通过周期性的向上游设备发送Join/Prune报文来更新转发状态。Join和Prune报文分别是请求转发和请求停止转发组播数据。上游设备收到Join/Prune报文会启动Join/Prune报文保持时间定时器。
l 如果加入某组播组的Join报文保持时间定时器超时,则抑制向下游接口转发相应组播组的组播数据报文。
l 如果针对某组播组的Prune报文保持时间定时器超时,则恢复向下游接口转发相应组播组的组播数据报文。
Join/Prune报文的发送间隔要小于Join/Prune报文的保持时间,通常Join/Prune报文的保持时间为Join/Prune报文发送间隔的3.5倍。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 配置Join/Prune报文的发送间隔。
ip pim jp-timer jp-timer-interval
缺省情况下,发送Join/Prune报文的时间周期为60秒。
组播设备在收到下游设备发过来的剪枝信息后不会立即进行剪枝动作,而是要等待一段时间。这段时间分为两部分,一部分是组播设备收到剪枝信息到继续向上游发送剪枝信息的延迟时间,称为剪枝传播延迟时间;另一部分是PIM设备收到剪枝信息后保持一段时间向下游继续转发组播报文,称为剪枝否决时间。因此,组播设备从收到剪枝报文到执行剪枝动作实际延迟时间为剪枝传播延迟时间与剪枝否决时间之和。
在组播设备收到剪枝消息到执行剪枝动作的实际延迟时间内,如果收到下游发来的剪枝否决消息,则取消剪枝动作。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置剪枝报文传输延迟时间。
ip pim propagation-delay propagation-delay
缺省情况下,接口的剪枝报文传播延迟为500毫秒。
(5) 配置剪枝否决时间。
ip pim override-interval override-interval
缺省情况下,剪枝否决时间为2500毫秒。
设备向上游设备发送Join信息请求转发组播数据。为了防止非法Join/Prune消息攻击组播设备,可以配置Join信息过滤,指定Join/Prune报文中的Join信息的合法组播源地址和组播组地址。
l 若无特殊要求,可在所有的可能会被非法Join/Prune消息攻击的PIM接口上配置Join信息的源组地址过滤。
l 通过在接口上配置本功能后,对接口上接收到的Join/Prune报文中的Join信息进行源组地址过滤。引用ACL限定组地址范围:
a 如果报文中Join消息中的(S,G)信息与ACL的Permit规则匹配,则接口接收报文,生成表项。
b 如果报文中Join消息中的(S,G)信息与ACL的Deny规则匹配,则丢弃该Join(S,G)信息。
c 如果报文中Join信息没有匹配上ACL规则,则接口拒绝接收此范围内的Join(S,G)信息。
d 如果引用的ACL不存在,则相当于没有配置过滤规则,接口接收所有的Join(S,G)信息,生成表项。
e 如果引用的ACL下的规则不存在,则接口丢弃所有的Join(S,G)信息。
配置Join信息源组地址过滤前,需保证对应的ACL访问控制列表已经创建并指定合法的源组地址范围。关于ACL配置的详细介绍,请参见“ACL和QOS配置指南”中的“ACL”。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置Join信息的源组地址过滤。
ip pim join-filter { acl-name | acl-number }
缺省情况下,不对Join信息进行过滤。
在一个PIM网络的大部分场景中,Super VLAN接口不需要开启PIM-SM协议。一般Super VLAN接口下面有很多的Sub VLAN。当Super VLAN接口开启PIM-SM协议后,设备会往所有Sub VLAN复制和发送一份组播协议报文,很容易超出设备的处理能力造成协议丢包最终导致协议震荡。在某些场景下需要在Super VLAN接口开启PIM-SM协议,可以配置命令使协议报文只往指定的Sub VLAN发送或者往所有VLAN发送,往所有VLAN发送报文有可能会造成协议震荡。
l 本命令需要在Super VLAN接口下配置。
l 配置报文往所有Sub VLAN发送时可能会造成协议报文过多,超出设备处理能力而发生协议震荡。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入SVI接口配置模式。
interface vlan interface-number
(4) 配置PIM-SM协议报文往指定Sub VLAN发送。
ip pim sparse-mode subvlan [ subvlan-id | all ]
缺省情况下,Super VLAN接口上PIM-SM处于关闭状态。
在某些组播共享网络中,PIM邻居状态的变化会触发一些工作机制如DR竞选重新进行。一般情况下PIM邻居会等到邻居关系超时才触发新一轮竞选,会导致组播数据中断。PIM-BFD联动,能够快速检测共享网段内的链路状态,快速检测邻居故障,并触发新一轮的DR竞选,减少组播数据传输中断时间,提供组播网络的可靠性。
l 组播网络中存在需要进行DR竞选或者Assert竞选的共享网络场景,则建议配置PIM-SM BFD联动。
l 应在组播设备互联接口上开启PIM-BFD功能。
l PIM接口必须是三层接口,包括:三层以太网接口、三层聚合接口、SVI接口、环回口和VXLAN路由接口。
l 网络内各个节点IPv4单播路由可达。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 进入接口配置模式。
○ 进入三层以太网接口配置模式。
interface ethernet-type interface-number
○ 进入三层聚合接口配置模式。
interface aggregateport interface-number
○ 进入三层以太网子接口配置模式。
interface ethernet-type interface-number.subnumber
○ 进入三层聚合子接口配置模式。
interface aggregateport interface-number.subnumber
○ 进入SVI接口配置模式。
interface vlan interface-number
○ 进入环回口配置模式。
interface loopback interface-number
(4) 配置PIM-BFD联动。
ip pim bfd
缺省情况下,未配置PIM-BFD联动。
在PIM-SMv4 NSR(Non-Stopping Routing,不间断路由)场景中,若设备发生主备切换,周边设备无法感知,无法触发组播转发数的重构和周边设备的响应,可能会导致新的组播业务出现故障。当组播业务量较小(组播表项小于1000),且对主备切换性能要求较高的情况下,可通过开启Generation ID变更功能,对主备切换后设备发送的Hello报文Generation ID值进行变更,从而使周边设备能够感知到设备的状态,减少主备切换后新的组播业务发生故障的时间。
l 网络内各个节点IPv4单播路由可达。
l REF _Ref56172517 \h \* MERGEFORMAT 开启PIM-SM功能 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003100370032003500310037000000 。
(1) 进入特权模式。
enable
(2) 进入全局配置模式。
configure terminal
(3) 开启Generation ID变更功能。
ip pim hello-nsr-genid-change-enable
缺省情况下,Generation ID变更功能处于关闭状态。
可以通过show命令行查看功能配置后的运行情况以验证配置效果。
同时还可以通过执行clear命令来清除各类信息。
注意
在设备运行过程中执行clear命令,可能因为重要信息丢失而导致业务中断。
表1-1 PIM-SM监视与维护
作用 |
命令 |
清除组播路由表项 |
clear ip mroute { ipv4-group-address [ ipv4-source-address ] | * } |
清除组播路由的统计信息 |
clear ip mroute statistics { ipv4-group-address [ ipv4-source-address ] | * } |
清除动态RP信息 |
clear ip pim sparse-mode bsr rp-set * |
清除PIM-SM协议报文的统计信息 |
clear ip pim sparse-mode track |
查看BSR的详细信息 |
show ip pim sparse-mode bsr-router |
查看接口的PIM-SM信息 |
show ip pim sparse-mode interface [ interface-type interface-number | inactive ] [ detail ] |
查看PIM-SM的接口的本地IGMP信息 |
show ip pim sparse-mode local-members [ interface-type interface-number ] |
查看PIM-SM组播路由表信息 |
show ip pim sparse-mode mroute [ ipv4-group-or-source-address [ ipv4-group-or-source-address ] ] |
查看PIM-SM邻居信息 |
show ip pim sparse-mode neighbor [ detail ] |
查看来自NSM的PIM-SM下一跳信息 |
show ip pim sparse-mode nexthop |
查看NSR相关信息 |
show ip pim sparse-mode nsr |
查看某个组地址对应的RP的信息 |
show ip pim sparse-mode rp-hash ipv4-group-address |
查看当前所有RP以及它们所服务的组的信息 |
show ip pim sparse-mode rp mapping |
查看PIM-SM组播路由变更历史信息 |
show ip pim sparse-mode statistic mrt [ source ipv4-source-address ] [ group ipv4-group-address ] |
查看单播路由变更历史信息 |
show ip pim sparse-mode statistic unicast-route [ ipv4-address ] |
查看PIM-SM已下发数据的统计信息 |
show ip pim sparse-mode sync-info |
查看从统计的开始时间点到现在,发送和接收的PIM报文的个数 |
show ip pim sparse-mode track |
如 REF _Ref71287551 \r \h \* MERGEFORMAT 图1-5 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600370031003200380037003500350031000000 所示,网络介入Internet。通过在各个组播设备上配置PIM-SM,为网络N1和N2中的用户主机提供ASM组播服务。使加入组播组的用户主机能够接收到任意组播源发往该组播组的组播数据,如视频点播信息等。
图1-5 ASM模型的PIM-SM组播配置组网图
l 配置组播设备的IP地址和单播路由协议。组播域内路由协议PIM依赖单播路由协议,单播路由正常通信是组播路由的基础,需要保证各个PIM节点单播路由可达。
l 在所有组播设备上开启组播功能。开启组播功能是配置PIM-SM的前提。
l 在组播设备上所有接口开启PIM-SM基本功能。开启PIM-SM基本功能后,才能看开启PIM-SM的其他功能。
l 在与用户主机一侧相连的接口上开启IGMP功能。使得用户主机能够通过发送IGMP消息加入或者退出某个组播组。叶子节点的组播设备通过IGMP协议来维护组成员关系。
l 配置RP。在ASM的PIM-SM网络中,RP是转发组播数据的中转站。建议RP的位置在流量分支较多的组播设备上,如 REF _Ref71287551 \r \h \* MERGEFORMAT 图1-5 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600370031003200380037003500350031000000 中的DeviceC。
l 在与Internet相连的接口上配置BSR边界。自举报文只能在边界内的PIM-SM域内传播,增加组播的可控性。
(1) 配置各设备各接口的IP地址和开启单播路由协议。
# 在DeviceA上配置各接口IPv4地址,并配置使用OSPF协议实现网络互通。
DeviceA> enable
DeviceA# config terminal
DeviceA(config)# interface gigabitEthernet 0/1
DeviceA(config-if-GigabitEthernet 0/1)# no switchport
DeviceA(config-if-GigabitEthernet 0/1)# ip address 10.100.10.1 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/1)# exit
DeviceA(config)# interface gigabitEthernet 0/21
DeviceA(config-if-GigabitEthernet 0/21)# no switchport
DeviceA(config-if-GigabitEthernet 0/21)# ip address 10.100.1.1 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/21)# exit
DeviceA(config)#interface gigabitEthernet 0/23
DeviceA(config-if-GigabitEthernet 0/23)# no switchport
DeviceA(config-if-GigabitEthernet 0/23)# ip address 10.100.3.2 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/23)# exit
DeviceA(config)# interface gigabitEthernet 0/24
DeviceA(config-if-GigabitEthernet 0/24)# no switchport
DeviceA(config-if-GigabitEthernet 0/24)# ip address 10.100.2.1 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/24)# exit
DeviceA(config)# router ospf 49
DeviceA(config-router)# network 10.100.1.0 0.0.0.255 area 0
DeviceA(config-router)# network 10.100.10.0 0.0.0.255 area 0
DeviceA(config-router)# network 10.100.2.0 0.0.0.255 area 0
DeviceA(config-router)# network 10.100.3.0 0.0.0.255 area 0
DeviceA(config-router)# exit
# 在DeviceB上配置各接口IPv4地址,并配置使用OSPF协议实现网络互通。
DeviceB> enable
DeviceB# config terminal
DeviceB(config)# interface GigabitEthernet 0/30
DeviceB(config-if-GigabitEthernet 0/30)# no switchport
DeviceB(config-if-GigabitEthernet 0/30)# ip address 10.100.8.1 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/30)# exit
DeviceB(config)# interface GigabitEthernet 0/31
DeviceB(config-if-GigabitEthernet 0/31)# no switchport
DeviceB(config-if-GigabitEthernet 0/31)# ip address 10.100.2.2 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/31)# exit
DeviceB(config)# interface GigabitEthernet 0/32
DeviceB(config-if-GigabitEthernet 0/32)# no switchport
DeviceB(config-if-GigabitEthernet 0/32)# ip address 10.100.5.2 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/32)# exit
DeviceB(config)# interface loopback 49
DeviceB(config-if-Loopback 49)# ip address 49.49.49.49 255.255.255.255
DeviceB(config-if-Loopback 49)# exit
DeviceB(config)# router ospf 49
DeviceB(config-router)# network 10.100.8.0 0.0.0.255 area 0
DeviceB(config-router)# network 10.100.2.0 0.0.0.255 area 0
DeviceB(config-router)# network 10.100.5.0 0.0.0.255 area 0
DeviceB(config-router)# network 49.49.49.49 0.0.0.0 area 0
DeviceB(config-router)# exit
# 在DeviceC上配置各接口IPv4地址,并配置使用OSPF协议实现网络互通。
DeviceC> enable
DeviceC# config terminal
DeviceC(config)# interface GigabitEthernet 0/19
DeviceC(config-if-GigabitEthernet 0/19)# no switchport
DeviceC(config-if-GigabitEthernet 0/19)# ip address 10.100.6.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/19)# exit
DeviceC(config)#interface GigabitEthernet 0/20
DeviceC(config-if-GigabitEthernet 0/20)# no switchport
DeviceC(config-if-GigabitEthernet 0/20)# ip address 10.100.5.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/20)# exit
DeviceC(config)# interface GigabitEthernet 0/21
DeviceC(config-if-GigabitEthernet 0/21)# no switchport
DeviceC(config-if-GigabitEthernet 0/21)# ip address 10.100.3.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/21)# exit
DeviceC(config)# interface GigabitEthernet 0/22
DeviceC(config-if-GigabitEthernet 0/22)# no switchport
DeviceC(config-if-GigabitEthernet 0/22)# ip address 10.100.4.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/22)# exit
DeviceC(config)# interface loopback 50
DeviceC(config-if-Loopback 50)# ip address 50.50.50.50 255.255.255.255
DeviceC(config-if-Loopback 50)# exit
DeviceC(config)# router ospf 49
DeviceC(config-router)# network 10.100.6.0 0.0.0.255 area 0
DeviceC(config-router)# network 10.100.5.0 0.0.0.255 area 0
DeviceC(config-router)# network 10.100.3.0 0.0.0.255 area 0
DeviceC(config-router)# network 10.100.4.0 0.0.0.255 area 0
DeviceC(config-router)# network 50.50.50.50 0.0.0.0 area 0
DeviceC(config-router)# exit
# 在DeviceD上配置各接口IPv4地址,并配置使用OSPF协议实现网络互通。
DeviceD> enable
DeviceD# config terminal
DeviceD(config)# interface GigabitEthernet 0/6
DeviceD(config-if-GigabitEthernet 0/6)# no switchport
DeviceD(config-if-GigabitEthernet 0/6)# ip address 10.100.7.1 255.255.255.0
DeviceD(config-if-GigabitEthernet 0/6)# exit
DeviceD(config)# interface GigabitEthernet 0/7
DeviceD(config-if-GigabitEthernet 0/7)# no switchport
DeviceD(config-if-GigabitEthernet 0/7)# ip address 10.100.6.2 255.255.255.0
DeviceD(config-if-GigabitEthernet 0/7)# exit
DeviceD(config)# router ospf 49
DeviceD(config-router)# network 10.100.6.0 0.0.0.255 area 0
DeviceD(config-router)# network 10.100.7.0 0.0.0.255 area 0
DeviceD(config-router)# exit
# 在DeviceE上配置各接口IPv4地址,并配置使用OSPF协议实现网络互通。
DeviceE> enable
DeviceE# config terminal
DeviceE(config)# interface GigabitEthernet 0/6
DeviceE(config-if-GigabitEthernet 0/6)# no switchport
DeviceE(config-if-GigabitEthernet 0/6)# ip address 10.100.9.1 255.255.255.0
DeviceE(config-if-GigabitEthernet 0/6)# interface GigabitEthernet 0/7
DeviceE(config-if-GigabitEthernet 0/7)# no switchport
DeviceE(config-if-GigabitEthernet 0/7)# ip address 10.100.4.2 255.255.255.0
DeviceE(config-if-GigabitEthernet 0/7)# exit
DeviceE(config)# router ospf 49
DeviceE(config-router)# network 10.100.9.0 0.0.0.255 area 0
DeviceE(config-router)# network 10.100.4.0 0.0.0.255 area 0
DeviceE(config-router)# exit
(2) 在所有组播设备上开启组播功能和PIM-SM协议功能,在所有和用户主机相连的组播设备上开启IGMP功能。
# 在DeviceA上开启组播功能和PIM-SM功能。
DeviceA(config)# ip multicast-routing
DeviceA(config)# interface gigabitEthernet 0/21
DeviceA(config-if-GigabitEthernet 0/21)# ip pim sparse-mode
DeviceA(config-if-GigabitEthernet 0/21)# exit
DeviceA(config)# interface gigabitEthernet 0/23
DeviceA(config-if-GigabitEthernet 0/23)# ip pim sparse-mode
DeviceA(config-if-GigabitEthernet 0/23)# exit
DeviceA(config)# interface gigabitEthernet 0/24
DeviceA(config-if-GigabitEthernet 0/24)# ip pim sparse-mode
DeviceA(config-if-GigabitEthernet 0/24)# exit
# 在DeviceB上开启组播功能、PIM-SM功能和IGMP功能。
DeviceB(config)# ip multicast-routing
DeviceB(config)# interface gigabitEthernet 0/30
DeviceB(config-if-GigabitEthernet 0/30)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/30)# exit
DeviceB(config)# interface gigabitEthernet 0/31
DeviceB(config-if-GigabitEthernet 0/31)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/31)# exit
DeviceB(config)# interface gigabitEthernet 0/32
DeviceB(config-if-GigabitEthernet 0/32)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/32)# exit
DeviceB(config)# interface loopback 49
DeviceB(config-if-Loopback 49)# ip pim sparse-mode
DeviceB(config-if-Loopback 49)# exit
# 在DeviceC上开启组播功能和PIM-SM功能。
DeviceC(config)# ip multicast-routing
DeviceC(config)# interface gigabitEthernet 0/19
DeviceC(config-if-GigabitEthernet 0/19)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/19)# exit
DeviceC(config)# interface gigabitEthernet 0/20
DeviceC(config-if-GigabitEthernet 0/20)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/20)# exit
DeviceC(config)# interface gigabitEthernet 0/21
DeviceC(config-if-GigabitEthernet 0/21)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/21)# exit
DeviceC(config)# interface gigabitEthernet 0/22
DeviceC(config-if-GigabitEthernet 0/22)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/22)# exit
DeviceC(config)# interface loopback 50
DeviceC(config-if-Loopback 50)# ip pim sparse-mode
DeviceC(config-if-Loopback 50)# exit
# 在DeviceD上开启组播功能、PIM-SM功能和IGMP功能。
DeviceD(config)# ip multicast-routing
DeviceD(config)# interface gigabitEthernet 0/6
DeviceD(config-if-GigabitEthernet 0/6)# ip pim sparse-mode
DeviceD(config-if-GigabitEthernet 0/6)# exit
DeviceD(config)# interface gigabitEthernet 0/7
DeviceD(config-if-GigabitEthernet 0/7)# ip pim sparse-mode
DeviceD(config-if-GigabitEthernet 0/7)# exit
# 在DeviceE上开启组播功能、PIM-SM功能和IGMP功能。
DeviceE(config)# ip multicast-routing
DeviceE(config)# interface gigabitEthernet 0/6
DeviceE(config-if-GigabitEthernet 0/6)# ip pim sparse-mode
DeviceE(config-if-GigabitEthernet 0/6)# exit
DeviceE(config)# interface gigabitEthernet 0/7
DeviceE(config-if-GigabitEthernet 0/7)# ip pim sparse-mode
DeviceE(config-if-GigabitEthernet 0/7)# exit
(3) 配置RP。
说明
RP有两种配置方式。动态RP和静态RP。两种方式可以同时配置,也可以只配置其中一种。如果同时配置动态RP和静态RP,则默认优先选择动态RP。
# 配置动态RP。需要将PIM-SM域中的一个或多个组播设备配置为C-RP和C-BSR。本例中指定DeviceB和DeviceC同时作为C-RP和C-BSR,分别在DeviceB和DeviceC配置RP服务的组地址范围,及C-RP和C-BSR所在的接口位置。本例中选择Loopback口作为C-RP和C-BSR所在的接口位置。
# 在DeviceB上配置C-BSR、C-RP及RP服务的组地址范围。
DeviceB(config)# ip pim bsr-candidate loopback 49
DeviceB(config)# ip access-list standard 49
DeviceB(config-std-nacl)# permit 224.0.0.0 0.255.255.255
DeviceB(config)# ip pim rp-candidate loopback 49 group-list 49
# 在DeviceC上配置C-BSR、C-RP及RP服务的组地址范围。
DeviceC(config)# ip pim bsr-candidate loopback 50
DeviceC(config)# ip access-list standard 50
DeviceC(config-std-nacl)# permit 225.0.0.0 0.255.255.255
DeviceC(config-std-nacl)# exit
DeviceC(config)# ip pim rp-candidate loopback 50 group-list 50
# 配置静态RP。需要在所有的组播设备上指定静态RP的地址。
# DeviceA上配置静态RP。
DeviceA(config)# ip pim rp-address 50.50.50.50
# DeviceB上配置静态RP。
DeviceB(config)# ip pim rp-address 50.50.50.50
# DeviceC上配置静态RP。
DeviceC(config)# ip pim rp-address 50.50.50.50
# DeviceD上配置静态RP。
DeviceD(config)# ip pim rp-address 50.50.50.50
# DeviceE上配置静态RP。
DeviceE(config)# ip pim rp-address 50.50.50.50
(4) 在DeviceA上与Internet相连的接口配置BSR边界。
DeviceA(config-if-GigabitEthernet 0/1)# ip pim bsr-border
(1) 使用show ip pim sparse-mode interface命令查看接口上PIM-SM的运行情况。
# DeviceA接口上的PIM-SM运行情况如下:
DeviceA#show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.1.1 GigabitEthernet 0/21 1 v2/S 0 1 10.100.1.1
10.100.3.2 GigabitEthernet 0/23 2 v2/S 1 1 10.100.3.2
10.100.2.1 GigabitEthernet 0/24 3 v2/S 0 1 10.100.2.1
DeviceA#
# DeviceB接口上的PIM-SM运行情况如下:
DeviceB# show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.8.1 GigabitEthernet 0/30 1 v2/S 0 1 10.100.8.1
10.100.2.2 GigabitEthernet 0/31 4 v2/S 1 1 10.100.2.2
10.100.5.2 GigabitEthernet 0/32 2 v2/S 1 1 10.100.5.2
49.49.49.49 Loopback 49 3 v2/S 0 1 49.49.49.49
DeviceB#
# DeviceC接口上的PIM-SM运行情况如下:
DeviceC# show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.6.1 GigabitEthernet 0/19 1 v2/S 1 1 10.100.6.2
10.100.5.1 GigabitEthernet 0/20 2 v2/S 1 1 10.100.5.2
10.100.3.1 GigabitEthernet 0/21 3 v2/S 1 1 10.100.3.2
10.100.4.1 GigabitEthernet 0/22 4 v2/S 1 1 10.100.4.2
50.50.50.50 Loopback 50 5 v2/S 0 1 50.50.50.50
DeviceC#
# DeviceD接口上的PIM-SM运行情况如下:
DeviceD# show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.7.1 GigabitEthernet 0/6 1 v2/S 0 1 10.100.7.1
10.100.6.2 GigabitEthernet 0/7 2 v2/S 1 1 10.100.6.2
DeviceD#
# DeviceE接口上的PIM-SM运行情况如下:
DeviceE# show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.9.1 GigabitEthernet 0/6 1 v2/S 0 1 10.100.9.1
10.100.4.2 GigabitEthernet 0/7 2 v2/S 1 1 10.100.4.2
DeviceE#
(2) 使用show ip pim sparse-mode bsr-router命令查看BSR的选举信息。
# DeviceA上的选举信息如下:
DeviceA# show ip pim sparse-mode bsr-router
PIMv2 Bootstrap information
BSR address: 50.50.50.50
Uptime: 00:48:33, BSR Priority: 64, Hash mask length: 10
Expires: 00:01:32
Role: Non-candidate BSR Priority: 0, Hash mask length: 10
State: Accept Preferred
DeviceA#
# DeviceB上的选举信息如下:
DeviceB# show ip pim sparse-mode bsr-router
PIMv2 Bootstrap information
BSR address: 50.50.50.50
Uptime: 00:49:26, BSR Priority: 64, Hash mask length: 10
Expires: 00:01:39
Role: Candidate BSR Priority: 64, Hash mask length: 10
State: Candidate BSR
Candidate RP: 49.49.49.49(Loopback 49)
Advertisement interval 60 seconds
Next Cand_RP_advertisement in 00:00:19
DeviceB#
# DeviceC上的选举信息如下:
DeviceC# show ip pim sparse-mode bsr-router
PIMv2 Bootstrap information
This system is the Bootstrap Router (BSR)
BSR address: 50.50.50.50
Uptime: 00:51:04, BSR Priority: 64, Hash mask length: 10
Next bootstrap message in 00:00:56
Role: Candidate BSR Priority: 64, Hash mask length: 10
State: Elected BSR
DeviceC#
# DeviceD上的选举信息如下:
DeviceD# show ip pim sparse-mode bsr-router
PIMv2 Bootstrap information
BSR address: 50.50.50.50
Uptime: 00:51:38, BSR Priority: 64, Hash mask length: 10
Expires: 00:01:28
Role: Non-candidate BSR Priority: 0, Hash mask length: 10
State: Accept Preferred
DeviceD#
# DeviceE上的选举信息如下:
DeviceE# show ip pim sparse-mode bsr-router
PIMv2 Bootstrap information
BSR address: 50.50.50.50
Uptime: 00:52:24, BSR Priority: 64, Hash mask length: 10
Expires: 00:01:42
Role: Non-candidate BSR Priority: 0, Hash mask length: 10
State: Accept Preferred
DeviceE#
(3) 使用show ip pim sparse-mode rp mapping命令组播设备上的RP信息。
# DeviceA上查看的RP信息如下:
DeviceA# show ip pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): 224.0.0.0/8
RP: 49.49.49.49(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:55:25, expires: 00:01:52
Group(s): 225.0.0.0/8
RP: 50.50.50.50(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:00:48, expires: 00:01:52
Group(s): 224.0.0.0/4, Static
RP: 50.50.50.50(Not self) , Static
Uptime: 00:50:13
DeviceA#
# DeviceB上查看的RP信息如下:
DeviceB# show ip pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): 224.0.0.0/8
RP: 49.49.49.49(Self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:56:12, expires: 00:02:05
Group(s): 225.0.0.0/8
RP: 50.50.50.50(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:01:35, expires: 00:02:05
Group(s): 224.0.0.0/4, Static
RP: 50.50.50.50(Not self) , Static
Uptime: 00:49:36
DeviceB#
# DeviceC上查看的RP信息如下:
DeviceC# show ip pim sparse-mode rp mapping
PIM Group-to-RP Mappings
This system is the Bootstrap Router (v2)
Group(s): 224.0.0.0/8
RP: 49.49.49.49(Not self)
Info source: 49.49.49.49, via bootstrap, priority 192
Uptime: 00:56:17, expires: 00:02:13
Group(s): 225.0.0.0/8
RP: 50.50.50.50(Self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:01:40, expires: 00:01:50
Group(s): 224.0.0.0/4, Static
RP: 50.50.50.50(Self) , Static
Uptime: 00:49:39
DeviceC#
# DeviceD上查看的RP信息如下:
DeviceD# show ip pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): 224.0.0.0/8
RP: 49.49.49.49(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:56:22, expires: 00:01:55
Group(s): 225.0.0.0/8
RP: 50.50.50.50(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:01:45, expires: 00:01:55
Group(s): 224.0.0.0/4, Static
RP: 50.50.50.50(Not self) , Static
Uptime: 00:49:40
DeviceD#
# DeviceE上查看的RP信息如下:
DeviceE# show ip pim sparse-mode rp mapping
PIM Group-to-RP Mappings
Group(s): 224.0.0.0/8
RP: 49.49.49.49(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:56:27, expires: 00:01:50
Group(s): 225.0.0.0/8
RP: 50.50.50.50(Not self)
Info source: 50.50.50.50, via bootstrap, priority 192
Uptime: 00:01:50, expires: 00:01:50
Group(s): 224.0.0.0/4, Static
RP: 50.50.50.50(Not self) , Static
Uptime: 00:49:43
DeviceE#
(4) 使用show ip pim sparse-mode mroute命令查看PIM-SM协议组播路由表。组播源(10.100.1.2/24)向组播组(225.0.0.1/24)和组播组(224.0.1.1/24)发送组播流。HostA加入组播组(225.0.0.1),HostB加入组播组(224.0.1.1)。
# DeviceA路由表显示信息如下:
DeviceA# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 2
(S,G,rpt) Entries: 2
FCR Entries: 0
REG Entries: 2
(10.100.1.2, 224.0.1.1)
RPF nbr: 0.0.0.0
RPF idx: None
SPT bit: 1
Upstream State: JOINED
kat expires in 53 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . j . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(10.100.1.2, 224.0.1.1, rpt)
RP: 50.50.50.50
RPF nbr: 10.100.3.1
RPF idx: GigabitEthernet 0/23
Upstream State: RPT NOT JOINED
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pruned
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(10.100.1.2, 225.0.0.1)
RPF nbr: 0.0.0.0
RPF idx: None
SPT bit: 1
Upstream State: JOINED
kat expires in 100 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . j . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(10.100.1.2, 225.0.0.1, rpt)
RP: 50.50.50.50
RPF nbr: 10.100.3.1
RPF idx: GigabitEthernet 0/23
Upstream State: RPT NOT JOINED
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pruned
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceA#
# DeviceB路由表显示信息如下(由于回显内容较多,下面只贴出关键信息):
DeviceB# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
FCR Entries: 1
REG Entries: 0
(*, 225.0.0.1)
RP: 50.50.50.50
RPF nbr: 10.100.5.1
RPF idx: GigabitEthernet 0/32
Upstream State: JOINED
jt_timer expires in 52 seconds
FCR:
Source: 10.100.1.2
KAT timer running, 166 seconds remaining
Packet count 1
DeviceB#
# DeviceC路由表显示信息如下(由于回显内容较多,下面只贴出关键信息):
DeviceC# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 2
(S,G) Entries: 2
(S,G,rpt) Entries: 2
FCR Entries: 0
REG Entries: 0
(*, 224.0.1.1)
RP: 50.50.50.50
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: JOINED
FCR:
(10.100.1.2, 224.0.1.1)
RPF nbr: 10.100.3.2
RPF idx: GigabitEthernet 0/21
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 15 seconds
kat expires in 203 seconds
(10.100.1.2, 224.0.1.1, rpt)
RP: 50.50.50.50
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: PRUNED
(*, 225.0.0.1)
RP: 50.50.50.50
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: JOINED
FCR:
(10.100.1.2, 225.0.0.1)
RPF nbr: 10.100.3.2
RPF idx: GigabitEthernet 0/21
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 23 seconds
kat expires in 176 seconds
(10.100.1.2, 225.0.0.1, rpt)
RP: 50.50.50.50
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: PRUNED
DeviceC#
# DeviceE路由表显示信息如下(由于回显内容较多,下面只贴出关键信息):
DeviceE# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 0
(S,G,rpt) Entries: 0
FCR Entries: 1
REG Entries: 0
(*, 224.0.1.1)
RP: 50.50.50.50
RPF nbr: 10.100.4.1
RPF idx: GigabitEthernet 0/7
Upstream State: JOINED
jt_timer expires in 34 seconds
FCR:
Source: 10.100.1.2
KAT timer running, 156 seconds remaining
Packet count 1
DeviceE#
l DeviceA的配置文件
hostname DeviceA
!
ip multicast-routing
!
interface GigabitEthernet 0/1
no switchport
ip address 10.100.1.1 255.255.255.0
ip pim sparse-mode
ip pim bsr-border
!
interface GigabitEthernet 0/21
no switchport
ip address 10.100.1.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/23
no switchport
ip address 10.100.3.2 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/24
no switchport
ip address 10.100.2.1 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.1.0 0.0.0.255 area 0
network 10.100.2.0 0.0.0.255 area 0
network 10.100.3.0 0.0.0.255 area 0
network 10.100.10.0 0.0.0.255 area 0
!
ip pim rp-address 50.50.50.50
!
l DeviceB的配置文件
hostname DeviceB
!
ip access-list standard 49
20 permit 224.0.0.0 0.255.255.255
!
ip multicast-routing
!
interface GigabitEthernet 0/30
no switchport
ip address 10.100.8.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/31
no switchport
ip address 10.100.2.2 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/32
no switchport
ip address 10.100.5.2 255.255.255.0
ip pim sparse-mode
!
interface Loopback 49
ip address 49.49.49.49 255.255.255.255
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.2.0 0.0.0.255 area 0
network 10.100.5.0 0.0.0.255 area 0
network 10.100.8.0 0.0.0.255 area 0
network 49.49.49.49 0.0.0.0 area 0
!
ip pim rp-address 50.50.50.50
ip pim bsr-candidate Loopback 49
ip pim rp-candidate Loopback 49 group-list 49
!
l DeviceC的配置文件
hostname DeviceC
!
ip access-list standard 50
10 permit 225.0.0.0 0.255.255.255
!
ip multicast-routing
!
interface GigabitEthernet 0/19
no switchport
ip address 10.100.6.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/20
no switchport
ip address 10.100.5.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/21
no switchport
ip address 10.100.3.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/22
no switchport
ip address 10.100.4.1 255.255.255.0
ip pim sparse-mode
!
interface Loopback 50
ip address 50.50.50.50 255.255.255.255
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.3.0 0.0.0.255 area 0
network 10.100.4.0 0.0.0.255 area 0
network 10.100.5.0 0.0.0.255 area 0
network 10.100.6.0 0.0.0.255 area 0
network 50.50.50.50 0.0.0.0 area 0
!
ip pim rp-address 50.50.50.50
ip pim bsr-candidate Loopback 50
ip pim rp-candidate Loopback 50 group-list 50
!
l DeviceD的配置文件
hostname DeviceD
!
ip multicast-routing
!
interface GigabitEthernet 0/6
no switchport
ip address 10.100.7.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/7
no switchport
ip address 10.100.6.2 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.6.0 0.0.0.255 area 0
network 10.100.7.0 0.0.0.255 area 0
!
ip pim rp-address 50.50.50.50
!
l DeviceE的配置文件
hostname DeviceE
!
ip multicast-routing
!
interface GigabitEthernet 0/6
no switchport
ip address 10.100.9.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/7
no switchport
ip address 10.100.4.2 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.4.0 0.0.0.255 area 0
network 10.100.9.0 0.0.0.255 area 0
!
ip pim rp-address 50.50.50.50
!
l 网络中组播设备没有开启组播路由功能。
l 网络中接口没有组播功能。
l PIM-SM域边界没有配置BSR边界。
l 网络中没有配置RP。
l 某台组播设备上没有配置静态RP,或配置的静态RP与其他组播设备不一致。
l 网络中配置了C-RP,没有配置C-BSR。
l 静态RP、C-RP或C-BSR单播路由不可达。
如 REF _Ref71560441 \r \h \* MERGEFORMAT 图1-6 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600370031003500360030003400340031000000 所示。要求通过在组播设备升配置PIM-SM协议功能,为N1和N2中的用户主机提供SSM服务,使得用户主机在加入组播组的同时能够收到本用户主机指定的组播源发送到指定组播组的组播数据,如视频点播等。
图1-6 SSM模型的PIM-SM组播配置组网图
l 配置组播设备的IP地址和单播路由协议。组播域内路由协议PIM依赖单播路由协议,单播路由正常通信是组播路由的基础,需要保证各个PIM节点单播路由可达。
l 在所有组播设备上开启组播功能。开启组播功能是配置PIM-SM的前提。
l 在组播设备上所有接口开启PIM-SM基本功能。开启PIM-SM基本功能后,才能看开启PIM-SM的其他功能。
l 在与用户主机一侧相连的接口上开启IGMP功能,配置IGMP的版本号为v3。使得用户主机能够通过发送IGMP消息加入或者退出某个指定源的组播组。叶子节点的组播设备通过IGMP协议来维护组成员关系。
l 在所有组播设备上设置相同的SSM地址范围。使PIM-SM域的组播设备提供的SSM服务为特定组地址范围内的服务,实现可控组播。
(1) 配置各接口的IP地址和开启单播路由协议。
# DeviceA上配置各接口的IP地址并开启单播路由协议。
DeviceA> enable
DeviceA# config terminal
DeviceA(config)# interface GigabitEthernet 0/21
DeviceA(config-if-GigabitEthernet 0/21)# no switchport
DeviceA(config-if-GigabitEthernet 0/21)# ip address 10.100.1.1 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/21)# exit
DeviceA(config)# interface GigabitEthernet 0/24
DeviceA(config-if-GigabitEthernet 0/24)# no switchport
DeviceA(config-if-GigabitEthernet 0/24)# ip address 10.100.2.1 255.255.255.0
DeviceA(config-if-GigabitEthernet 0/24)# exit
DeviceA(config)# router ospf 49
DeviceA(config-router)# network 10.100.1.0 0.0.0.255 area 0
DeviceA(config-router)# network 10.100.2.0 0.0.0.255 area 0
DeviceA(config-router)# exit
# DeviceB上配置各接口的IP地址并开启单播路由协议。
DeviceB> enable
DeviceB# config terminal
DeviceB(config)# interface GigabitEthernet 0/30
DeviceB(config-if-GigabitEthernet 0/30)# no switchport
DeviceB(config-if-GigabitEthernet 0/30)# ip address 10.100.8.1 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/30)# exit
DeviceB(config)# interface GigabitEthernet 0/31
DeviceB(config-if-GigabitEthernet 0/31)# no switchport
DeviceB(config-if-GigabitEthernet 0/31)# ip address 10.100.2.2 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/31)# exit
DeviceB(config)#interface GigabitEthernet 0/32
DeviceB(config-if-GigabitEthernet 0/32)# no switchport
DeviceB(config-if-GigabitEthernet 0/32)# ip address 10.100.5.2 255.255.255.0
DeviceB(config-if-GigabitEthernet 0/32)# exit
DeviceB(config)# interface Loopback 49
DeviceB(config-if-Loopback 49)# ip address 49.49.49.49 255.255.255.255
DeviceB(config-if-Loopback 49)# exit
DeviceB(config)# router ospf 49
DeviceB(config-router)# network 10.100.2.0 0.0.0.255 area 0
DeviceB(config-router)# network 10.100.5.0 0.0.0.255 area 0
DeviceB(config-router)# network 10.100.8.0 0.0.0.255 area 0
DeviceB(config-router)# network 49.49.49.49 0.0.0.0 area 0
DeviceB(config-router)# exit
# DeviceC上配置各接口的IP地址并开启单播路由协议。
DeviceC> enable
DeviceC# config terminal
DeviceC(config)# interface GigabitEthernet 0/18
DeviceC(config-if-GigabitEthernet 0/18)# no switchport
DeviceC(config-if-GigabitEthernet 0/18)# ip address 10.100.11.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/18)# exit
DeviceC(config)#interface GigabitEthernet 0/20
DeviceC(config-if-GigabitEthernet 0/20)# no switchport
DeviceC(config-if-GigabitEthernet 0/20)# ip address 10.100.5.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/20)# exit
DeviceC(config)# interface GigabitEthernet 0/22
DeviceC(config-if-GigabitEthernet 0/22)# no switchport
DeviceC(config-if-GigabitEthernet 0/22)# ip address 10.100.4.1 255.255.255.0
DeviceC(config-if-GigabitEthernet 0/22)# exit
DeviceC(config)# interface Loopback 50
DeviceC(config-if-Loopback 50)# ip address 50.50.50.50 255.255.255.255
DeviceC(config-if-Loopback 50)# exit
DeviceC(config)# router ospf 49
DeviceC(config-router)# network 10.100.4.0 0.0.0.255 area 0
DeviceC(config-router)# network 10.100.5.0 0.0.0.255 area 0
DeviceC(config-router)# network 10.100.11.0 0.0.0.255 area 0
DeviceC(config-router)# network 50.50.50.50 0.0.0.0 area 0
DeviceC(config-router)# exit
# DeviceD上配置各接口的IP地址并开启单播路由协议。
DeviceD> enable
DeviceD# config terminal
DeviceD(config)# interface GigabitEthernet 0/47
DeviceD(config-if-GigabitEthernet 0/47)# no switchport
DeviceD(config-if-GigabitEthernet 0/47)# ip address 10.100.12.1 255.255.255.0
DeviceD(config-if-GigabitEthernet 0/47)# exit
DeviceD(config)# interface GigabitEthernet 0/48
DeviceD(config-if-GigabitEthernet 0/48)# no switchport
DeviceD(config-if-GigabitEthernet 0/48)# ip address 10.100.11.2 255.255.255.0
DeviceD(config-if-GigabitEthernet 0/48)# exit
DeviceD(config)# router ospf 49
DeviceD(config-router)# network 10.100.11.0 0.0.0.255 area 0
DeviceD(config-router)# network 10.100.12.0 0.0.0.255 area 0
DeviceD(config-router)# exit
DeviceD(config)# router ospf 49
DeviceD(config-router)# network 10.100.11.0 0.0.0.255 area 0
DeviceD(config-router)# network 10.100.12.0 0.0.0.255 area 0
DeviceD(config-router)# exit
# DeviceE上配置各接口的IP地址并开启单播路由协议。
DeviceE> enable
DeviceE# config terminal
DeviceE(config)# interface GigabitEthernet 0/5
DeviceE(config-if-GigabitEthernet 0/5)# no switchport
DeviceE(config-if-GigabitEthernet 0/5)# ip address 10.100.13.1 255.255.255.0
DeviceE(config-if-GigabitEthernet 0/5)# exit
DeviceE(config)# interface GigabitEthernet 0/7
DeviceE(config-if-GigabitEthernet 0/7)# no switchport
DeviceE(config-if-GigabitEthernet 0/7)# ip address 10.100.4.2 255.255.255.0
DeviceE(config-if-GigabitEthernet 0/7)# exit
DeviceE(config)# router ospf 49
DeviceE(config-router)# network 10.100.4.0 0.0.0.255 area 0
DeviceE(config-router)# network 10.100.13.0 0.0.0.255 area 0
DeviceE(config-router)# exit
(2) 在所有组播设备上开启组播功能和PIM-SM协议功能,在所有和用户主机相连的组播设备上开启IGMP功能。
# 在DeviceA上开启组播功能和PIM-SM功能。
DeviceA(config)# ip multicast-routing
DeviceA(config)# interface GigabitEthernet 0/21
DeviceA(config-if-GigabitEthernet 0/21)# ip pim sparse-mode
DeviceA(config-if-GigabitEthernet 0/21)# exit
DeviceA(config)# interface GigabitEthernet 0/24
DeviceA(config-if-GigabitEthernet 0/24)# ip pim sparse-mode
DeviceA(config-if-GigabitEthernet 0/24)# exit
# 在DeviceB上开启组播功能、PIM-SM功能和IGMP功能,IGMP版本号为v3。
DeviceB(config)# ip multicast-routing
DeviceB(config)# interface GigabitEthernet 0/30
DeviceB(config-if-GigabitEthernet 0/30)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/30)# ip igmp version 3
DeviceB(config-if-GigabitEthernet 0/30)# exit
DeviceB(config)# interface GigabitEthernet 0/31
DeviceB(config-if-GigabitEthernet 0/31)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/31)# exit
DeviceB(config)# interface GigabitEthernet 0/32
DeviceB(config-if-GigabitEthernet 0/32)# ip pim sparse-mode
DeviceB(config-if-GigabitEthernet 0/32)# exit
DeviceB(config)# interface Loopback 49
DeviceB(config-if-Loopback 49)# ip pim sparse-mode
DeviceB(config-if-Loopback 49)# exit
# 在DeviceC上开启组播功能和PIM-SM功能。
DeviceC(config)# ip multicast-routing
DeviceC(config)# interface GigabitEthernet 0/18
DeviceC(config-if-GigabitEthernet 0/18)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/18)# exit
DeviceC(config)# interface GigabitEthernet 0/20
DeviceC(config-if-GigabitEthernet 0/20)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/20)# exit
DeviceC(config)# interface GigabitEthernet 0/22
DeviceC(config-if-GigabitEthernet 0/22)# ip pim sparse-mode
DeviceC(config-if-GigabitEthernet 0/22)# exit
DeviceC(config)#interface Loopback 50
DeviceC(config-if-Loopback 50)# ip pim sparse-mode
DeviceC(config-if-Loopback 50)# exit
# 在DeviceD上开启组播功能和PIM-SM功能。
DeviceD(config)# ip multicast-routing
DeviceD(config)# interface GigabitEthernet 0/47
DeviceD(config-if-GigabitEthernet 0/47)# ip pim sparse-mode
DeviceD(config-if-GigabitEthernet 0/47)# exit
DeviceD(config)# interface GigabitEthernet 0/48
DeviceD(config-if-GigabitEthernet 0/48)# ip pim sparse-mode
DeviceD(config-if-GigabitEthernet 0/48)# exit
# 在DeviceE上开启组播功能、PIM-SM功能和IGMP功能,IGMP版本号为v3。
DeviceE(config)# ip multicast-routing
DeviceE(config)# interface GigabitEthernet 0/5
DeviceE(config-if-GigabitEthernet 0/5)# ip pim sparse-mode
DeviceE(config-if-GigabitEthernet 0/5)# ip igmp version 3
DeviceE(config-if-GigabitEthernet 0/5)# exit
DeviceE(config)# interface GigabitEthernet 0/7
DeviceE(config-if-GigabitEthernet 0/7)# ip pim sparse-mode
DeviceE(config-if-GigabitEthernet 0/7)# exit
(3) 在所有组播设备上开启SSM功能并配置其组播组地址范围。
# 在DeviceA上配置SSM组播组地址范围为232.1.1.0/24。
DeviceA(config)# ip access-list standard 59
DeviceA(config-std-nacl)#permit 232.1.1.0 0.0.0.255
DeviceA(config-std-nacl)#exit
DeviceA(config)# ip pim ssm range 59
# 在DeviceB上配置SSM组播组地址范围为232.1.1.0/24。
DeviceB(config)# ip access-list standard 59
DeviceB(config-std-nacl)#permit 232.1.1.0 0.0.0.255
DeviceB(config-std-nacl)#exit
DeviceB(config)# ip pim ssm range 59
# 在DeviceC上配置SSM组播组地址范围为232.1.1.0/24。
DeviceC(config)# ip access-list standard 59
DeviceC(config-std-nacl)#permit 232.1.1.0 0.0.0.255
DeviceC(config-std-nacl)#exit
DeviceC(config)# ip pim ssm range 59
# 在DeviceD上配置SSM组播组地址范围为232.1.1.0/24。
DeviceD(config)# ip access-list standard 59
DeviceD(config-std-nacl)#permit 232.1.1.0 0.0.0.255
DeviceD(config-std-nacl)#exit
DeviceD(config)# ip pim ssm range 59
# 在DeviceE上配置SSM组播组地址范围为232.1.1.0/24。
DeviceE(config)# ip access-list standard 59
DeviceE(config-std-nacl)#permit 232.1.1.0 0.0.0.255
DeviceE(config-std-nacl)#exit
DeviceE(config)# ip pim ssm range 59
(1) 使用show ip pim sparse-mode interface命令查看接口上PIM-SM的运行情况,例如在DeviceA接口上的PIM-SM运行情况如下,DeviceB、DeviceC、DeviceD和DeviceE设备命令与DeviceA相同,显示过程略。
DeviceA# show ip pim sparse-mode interface
Address Interface VIFindex Ver/Mode Nbr-Count DR-Prior DR
10.100.1.1 GigabitEthernet 0/21 3 v2/S 0 1 10.100.1.1
10.100.2.1 GigabitEthernet 0/24 1 v2/S 0 1 10.100.2.1
DeviceA#
(2) 使用show ip pim sparse-mode mroute命令可以查看PIM协议组播路由表。HostA需要接收组播源Source1(10.100.1.2/24)和组播源Source2(10.100.12.2/24)发往组播组(232.1.1.10/24)的信息,HostB只需要接收组播源Source1(10.100.1.2/24)发往组播组(232.1.1.10/24)的信息。显示信息如下:
# DeviceA路由表显示信息如下:
DeviceA# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 0
FCR Entries: 0
REG Entries: 0
(10.100.1.2, 232.1.1.10)
RPF nbr: 0.0.0.0
RPF idx: None
SPT bit: 1
Upstream State: JOINED
kat expires in 133 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . . . j . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceA#
# DeviceB路由表显示信息如下:
DeviceB# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 2
(S,G,rpt) Entries: 0
FCR Entries: 0
REG Entries: 0
(10.100.1.2, 232.1.1.10)
RPF nbr: 10.100.2.1
RPF idx: GigabitEthernet 0/31
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 40 seconds
kat expires in 190 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . i . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . j . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . o . o . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(10.100.12.2, 232.1.1.10)
RPF nbr: 10.100.5.1
RPF idx: GigabitEthernet 0/32
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 40 seconds
kat expires in 125 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . i . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceB#
# DeviceC路由表显示信息如下:
DeviceC# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 2
(S,G,rpt) Entries: 0
FCR Entries: 0
REG Entries: 0
(10.100.1.2, 232.1.1.10)
RPF nbr: 10.100.5.2
RPF idx: GigabitEthernet 0/20
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 12 seconds
kat expires in 72 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . . . . j . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(10.100.12.2, 232.1.1.10)
RPF nbr: 10.100.11.2
RPF idx: GigabitEthernet 0/18
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 8 seconds
kat expires in 98 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . . . j . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceC#
# DeviceD路由表显示信息如下:
DeviceD# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 0
FCR Entries: 0
REG Entries: 0
(10.100.12.2, 232.1.1.10)
RPF nbr: 0.0.0.0
RPF idx: None
SPT bit: 1
Upstream State: JOINED
kat expires in 62 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . j . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceD#
# DeviceE路由表显示信息如下:
DeviceE# show ip pim sparse-mode mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 0
(S,G) Entries: 1
(S,G,rpt) Entries: 0
FCR Entries: 0
REG Entries: 0
(10.100.1.2, 232.1.1.10)
RPF nbr: 10.100.4.1
RPF idx: GigabitEthernet 0/7
SPT bit: 1
Upstream State: JOINED
jt_timer expires in 39 seconds
kat expires in 189 seconds
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Local
0 . i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joined
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Asserted
0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outgoing
0 . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DeviceE#
l DeviceA的配置文件
hostname DeviceA
!
ip access-list standard 59
10 permit 232.1.1.0 0.0.0.255
!
ip multicast-routing
!
interface GigabitEthernet 0/21
no switchport
ip address 10.100.1.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/24
no switchport
ip address 10.100.2.1 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.1.0 0.0.0.255 area 0
network 10.100.2.0 0.0.0.255 area 0
!
ip pim ssm range 59
!
l DeviceB的配置文件
hostname DeviceB
!
ip access-list standard 59
10 permit 232.1.1.0 0.0.0.255
!
ip multicast-routing
!
interface GigabitEthernet 0/30
no switchport
ip address 10.100.8.1 255.255.255.0
ip igmp version 3
ip pim sparse-mode
!
interface GigabitEthernet 0/31
no switchport
ip address 10.100.2.2 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/32
no switchport
ip address 10.100.5.2 255.255.255.0
ip pim sparse-mode
!
interface Loopback 49
ip address 49.49.49.49 255.255.255.255
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.2.0 0.0.0.255 area 0
network 10.100.5.0 0.0.0.255 area 0
network 10.100.8.0 0.0.0.255 area 0
network 49.49.49.49 0.0.0.0 area 0
!
ip pim ssm range 59
!
l DeviceC的配置文件
hostname DeviceC
!
ip access-list standard 59
10 permit 232.1.1.0 0.0.0.255
!
ip multicast-routing
!
interface GigabitEthernet 0/18
no switchport
ip address 10.100.11.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/20
no switchport
ip address 10.100.5.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/22
no switchport
ip address 10.100.4.1 255.255.255.0
ip pim sparse-mode
!
interface Loopback 50
ip address 50.50.50.50 255.255.255.255
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.4.0 0.0.0.255 area 0
network 10.100.5.0 0.0.0.255 area 0
network 10.100.11.0 0.0.0.255 area 0
network 50.50.50.50 0.0.0.0 area 0
!
ip pim ssm range 59
!
l DeviceD的配置文件
hostname DeviceD
!
ip access-list standard 59
10 permit 232.1.1.0 0.0.0.255
!
ip multicast-routing
!
interface GigabitEthernet 0/47
no switchport
ip address 10.100.12.1 255.255.255.0
ip pim sparse-mode
!
interface GigabitEthernet 0/48
no switchport
ip address 10.100.11.2 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.11.0 0.0.0.255 area 0
network 10.100.12.0 0.0.0.255 area 0
!
ip pim ssm range 59
!
l DeviceE的配置文件
hostname DeviceE
!
ip access-list standard 59
10 permit 232.1.1.0 0.0.0.255
!
ip multicast-routing
!
interface GigabitEthernet 0/5
no switchport
ip address 10.100.13.1 255.255.255.0
ip igmp version 3
ip pim sparse-mode
!
interface GigabitEthernet 0/7
no switchport
ip address 10.100.4.2 255.255.255.0
ip pim sparse-mode
!
router ospf 49
graceful-restart
network 10.100.4.0 0.0.0.255 area 0
network 10.100.13.0 0.0.0.255 area 0
!
ip pim ssm range 59
!
l IPv4单播路由配置错误。
l 某台组播设备没有开启IPv4组播路由功能。
l 某台组播设备没有开启SSM功能,或SSM组地址范围与其他组播设备不一致。
l 某个接口没有开启PIM-SM功能(比如:被指定为用户主机或组播源的网关的接口)。
l 某个连接用户主机的接口没有开启IGMPv3功能。