【干货分享】组播PIM-SM基础知识.......
PIM协议是组播路由的基础,上期已经介绍了PIM-DM的原理,本期介绍PIM-SM的基本原理。
01 背景概述
02 邻居发现
PIM路由器上每个使能了PIM协议的接口都会对外发送Hello报文。封装Hello报文的组播报文的目的地址是224.0.0.13(表示同一网段中所有PIM路由器)、源地址为接口的IP地址、TTL数值为1。
Hello报文的作用:发现PIM邻居、协调各项PIM协议报文参数、维持邻居关系。
·发现PIM邻居
同一网段中的PIM路由器都必须接收目的地址为224.0.0.13的组播报文。这样直接相连的PIM路由器之间通过交互Hello报文以后,就可以彼此知道自己的邻居信息,建立邻居关系。
只有邻居关系建立成功后,PIM路由器才能接收其他PIM协议报文,从而创建组播路由表项。
·协调各项PIM协议报文参数
Hello报文中携带多项PIM协议报文参数,主要用于PIM邻居之间PIM协议报文的控制。具体如下:
■DR_Priority:表示各路由器接口竞选DR的优先级,优先级越高越容易获胜。
■Holdtime:表示保持邻居为可达状态的超时时间。如果在超时时间内没有收到PIM邻居发送的Hello报文,路由器则认为邻居不可达。
■LAN_Delay:表示共享网段内传输Prune报文的延迟时间。
■Neighbor-Tracking:表示邻居跟踪功能。
■Override-Interval:表示Hello报文中携带的否决剪枝的时间间隔。
·维持邻居关系
PIM路由器之间周期性地发送Hello报文。如果Holdtime超时还没有收到该PIM邻居发出的新的Hello报文,PIM路由器就认为该邻居不可达,将其从邻居列表中清除。
PIM邻居的变化将导致网络中组播拓扑的变化。如果组播分发树上的某上游邻居或下游邻居不可达,将导致组播路由重新收敛,组播分发树迁移。
03 DR竞选
05 配置ASM的PIM-SM网络示例
组网需求
该网络接入了Internet。要求通过在路由器配置PIM-SM协议,为网络中的用户主机提供ASM服务,使得加入同一组播组的所有用户主机能够接收任意源发往该组的组播数据信息。
配置思路
1.配置路由器接口IP地址和单播路由协议。组播域内路由协议PIM依赖单播路由协议,单播路由正常是组播协议正常工作的基础。
2.在所有提供组播服务的路由器上使能组播功能。使能组播功能是配置PIM-SM的前提。
3.在路由器所有接口上使能PIM-SM功能。使能PIM-SM功能之后才能配置PIM-SM的其他功能。
4.在与主机侧相连的路由器接口上使能IGMP。接收者能通过发送IGMP消息自由加入或者离开某个组播组。叶结点路由器通过IGMP协议来维护组成员关系列表。
5.在与主机侧相连的路由器接口上使能PIM Silent,防止恶意主机模拟发送PIM Hello报文,增加PIM-SM域的安全性。
6.配置RP。在PIM-SM域中,RP是提供ASM服务的核心,是转发组播数据的中转站。建议RP的位置配置在组播流量分支较多的路由器上,如图1中的RouterE的位置。
7.在与Internet相连的接口上配置BSR边界,自举报文不能通过该边界,使BSR只为该PIM-SM域服务,增加组播可控性。
操作步骤
1.配置各接口的IP地址和单播路由协议。
# 按照拓扑图配置各路由器接口的IP地址和掩码,配置各路由器间采用OSPF进行互连,确保网络中各路由器间能够在网络层互通,并且之间能够借助单播路由协议实现动态路由更新。RouterB、RouterC、RouterD和RouterE上的配置过程与RouterA上的配置相似,配置过程略。
<Huawei> system-view
[Huawei] sysname RouterA
[RouterA] interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0] ip address 192.168.5.1 24
[RouterA-GigabitEthernet1/0/0] quit
[RouterA] interface gigabitethernet 2/0/0
[RouterA-GigabitEthernet2/0/0] ip address 10.110.1.1 24
[RouterA-GigabitEthernet2/0/0] quit
[RouterA] interface gigabitethernet 3/0/0
[RouterA-GigabitEthernet3/0/0] ip address 192.168.1.1 24
[RouterA-GigabitEthernet3/0/0] quit
[RouterA] ospf
[RouterA-ospf-1] area 0
[RouterA-ospf-1-area-0.0.0.0] network 10.110.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] network 192.168.5.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] quit
[RouterA-ospf-1] quit
2.使能组播功能,在各接口上使能PIM-SM功能。
# 在所有路由器使能组播功能,在各接口上使能PIM-SM功能。RouterB、RouterC、RouterD和RouterE上的配置过程与RouterA上的配置相似,配置过程略。
[RouterA] multicast routing-enable
[RouterA] interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0] pim sm
[RouterA-GigabitEthernet1/0/0] quit
[RouterA] interface gigabitethernet 2/0/0
[RouterA-GigabitEthernet2/0/0] pim sm
[RouterA-GigabitEthernet2/0/0] quit
[RouterA] interface gigabitethernet 3/0/0
[RouterA-GigabitEthernet3/0/0] pim sm
[RouterA-GigabitEthernet3/0/0] quit
3.在连接用户主机的接口上使能IGMP功能。
# 在RouterA连接用户主机的接口上使能IGMP功能。RouterB和RouterC上的配置过程与RouterA上的配置相似,配置过程略。
[RouterA] interface gigabitethernet 2/0/0
[RouterA-GigabitEthernet2/0/0] igmp enable
4.在RouterA接口上使能PIM silent。
[RouterA] interface gigabitethernet 2/0/0
[RouterA-GigabitEthernet2/0/0] pim silent
5.配置RP。
说明:
配置RP有两种方式:静态RP和动态RP两种。可以同时配置,也可以只配置其中一种。同时配置两种RP时,可以通过参数调整优先选择哪种RP。
本实例同时配置两种RP,默认优选动态RP,静态RP作为备份。
# 配置动态RP。需要将PIM-SM域的一个或多个路由器上配置为C-RP和C-BSR。本例中指定RouterE同时为C-RP和C-BSR,在RouterE上配置RP服务的组地址范围,及C-BSR和C-RP所在接口位置。
[RouterE] acl number 2008
[RouterE-acl-basic-2008] rule permit source 225.1.1.0 0.0.0.255
[RouterE-acl-basic-2008] quit
[RouterE] pim
[RouterE-pim] c-bsr gigabitethernet 4/0/0
[RouterE-pim] c-rp gigabitethernet 4/0/0 group-policy 2008
# 配置静态RP。需要在所有路由器上指定静态RP的地址,在RouterA上配置如下。RouterB、RouterC、RouterD和RouterE上的配置过程与RouterA上的配置相似,配置过程略。
说明:
如果命令static-rp X.X.X.X后面选择参数preferred,优先选择静态RP作为本PIM-SM域的RP。
[RouterA] pim
[RouterA-pim] static-rp 192.168.2.2
6.在RouterD与Internet相连的接口上配置BSR边界。
[RouterD] interface gigabitethernet 2/0/0
[RouterD-GigabitEthernet2/0/0] pim bsr-boundary
[RouterD-GigabitEthernet2/0/0] quit