03-PIM故障处理手册
本章节下载: 03-PIM故障处理手册 (272.11 KB)
PIM邻居无法建立。
本类故障的常见原因主要包括:
· 接口物理状态为Down。
· 接口上未配置主IP地址。
· 接口上PIM功能没有生效。
· 接口没有使能PIM。
· 接口上PIM相关配置不正确。
本类故障的诊断流程如图1-1所示。
图1-1 PIM邻居Down的故障诊断流程图
(1) 检查接口的物理状态是否为Up。
请在设备上执行display interface interface-type interface-number命令查看显示信息中的“Current state”字段,确认接口的物理状态是否为Up。
a. 如果为Up,请执行步骤(2)。
b. 如果为Down,请排查处理接口物理Down的问题。
(2) 检查接口上是否配置了主IP地址。
在设备直连用户主机网段接口的接口视图下执行display this命令,查看是否通过ip address命令配置了接口的主IP地址。
a. 如果没有配置,请在接口上通过ip address命令进行配置。
b. 如果已配置,请执行步骤(3)。
(3) 检查接口是否使能PIM。
在设备上执行display current-configuration interface命令,查看接口上是否使能PIM。
a. 如果没有使能,请在接口视图下执行pim dm或pim sm命令开启PIM功能。
b. 如果已使能,请执行步骤(4)。
(4) 检查接口PIM功能是否生效。
在设备上执行display pim interface命令,通过查看显示信息中是否存在该接口对应的PIM相关信息确认接口上PIM功能是否生效。
a. 如果没有生效,请在设备上执行display current-configuration | include multicast命令,查看是否开启IP组播路由功能。
- 如果没有开启,请在系统视图下执行multicast routing命令开启IP组播路由功能。
- 如果已开启,请执行步骤(5)。
b. 如果已生效,请执行步骤(5)。
(5) 检查接口上PIM相关配置是否正确。
在接口上因配置错误导致无法建立PIM邻居的常见原因如下:
¡ 直连接口的IP地址有没有配置在同一网段内,请将需要建立PIM邻居的设备直连口的IP地址配置在同一网段内。
¡ 接口上通过pim neighbor-policy命令配置了Hello报文过滤器,但PIM邻居IP地址不在ACL的permit规则中,接口发送的Hello报文被当作非法报文过滤掉,从而建立邻居失败。请确认是否需要配置Hello报文过滤器:
- 如果需要,请修改ACL配置,使得PIM邻居的IP地址在ACL的permit规则中。
- 如果不需要,请执行undo pim neighbor-policy命令删除对Hello报文的过滤规则。
¡ 接口上通过pim require-genid命令配置了拒绝无Generation ID的Hello报文功能,而PIM邻居发送的Hello报文中未携带Generation ID,导致PIM邻居无法建立。请确认是否需要配置拒绝无Generation ID的Hello报文功能:
- 如果需要,请执行步骤(6)。
- 如果不需要,请在设备上执行undo pim require-genid命令删除此配置。
(6) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
开启IP组播路由功能后,同一PIM域内三层组播流量不通。
本类故障的常见原因主要包括:
· 需要转发组播数据的接口未使能PIM。
· 接口的PIM协议没有生效。
· PIM邻居未建立成功。
· 连接用户网段的接口未使能IGMP。
· 在PIM-SM或双向PIM网络中,没有配置RP或RP信息不正确。
· 不存在到达RP或组播源的RPF路由。
· 转发组播数据的接口上配置了组播边界。
· 在PIM-SM或双向PIM网络中,配置了错误的组播源过滤策略。
· 组播表项未生成。
本类故障的诊断流程如图1-2所示。
图1-2 PIM域内三层组播流量不通的故障诊断流程图
(1) 检查需要转发组播数据的接口是否使能PIM。
在需要转发组播数据的接口视图下执行display this命令,检查是否存在pim sm或pim dm的配置。
¡ 如果不存在,表明接口下PIM功能未开启。请在接口视图下通过pim sm或pim dm命令开启PIM功能。若是双向PIM网络,在接口视图下配置了通过pim sm命令开启PIM功能后,还需在PIM视图下通过bidir-pim enable命令开启双向PIM功能。
¡ 如果存在,请执行步骤(2)。
(2) 检查接口的PIM功能是否生效。
在设备上执行display pim interface命令,通过查看显示信息中是否存在该接口对应的PIM相关信息确认接口上PIM功能是否生效。
¡ 如果没有生效,请在设备上执行display interface interface-type interface-number命令查看显示信息中的“Current state”字段,确认接口的物理状态是否为Up。如果为Down,请排查处理接口物理Down的问题。
¡ 如果生效,请执行步骤(3)。
(3) 检查PIM邻居是否建立成功。
在设备上执行display pim neighbor命令,根据是否存在相应的PIM邻居信息,判断PIM邻居是否建立成功。
a. 如果未建立成功,请参见“PIM邻居Down”进行定位,确保PIM邻居建立成功。
b. 如果建立成功,请执行步骤(4)。
(4) 检查连接用户网段的接口上IGMP功能是否生效。
在设备上执行display igmp interface命令,根据是否存在显示信息确认接口IGMP功能是否生效。
¡ 如果没有生效,请检查接口下是否通过igmp enable命令开启了IGMP功能,确保IGMP功能已开启。
¡ 如果已生效,根据不同的网络类型执行如下操作:
- 若为PIM-SM或双向PIM网络,请执行步骤(5)。
- 若为PIM-DM网络,请执行步骤(7)。
(5) 对于PIM-SM或双向PIM网络,检查RP信息是否正确。
在设备上执行display pim rp-info命令,查看设备是否生成了为某组播组服务的RP信息表项,并检查PIM-SM或双向PIM域中其它所有设备上,为此组播组服务的RP信息是否配置一致。
¡ 如果不一致,且PIM-SM/双向PIM网络中使用静态RP,请在PIM-SM/双向PIM域的所有设备上的PIM视图下执行static-rp命令,将为某组播组服务的RP地址配置为相同的地址;如果PIM-SM/双向PIM网络中使用动态RP,请执行步骤(6)。
¡ 如果一致,请执行步骤(6)。
(6) 检查是否存在到达RP的RPF路由。
在设备上执行display multicast rpf-info命令,查看是否存在到达RP的RPF路由。
¡ 如果不存在,检查单播路由配置。请在当前设备和RP上分别执行ping命令,检查是否能够互相ping通。如果ping不通,请修改单播路由配置,直到ping通为止。
¡ 如果存在,通过执行display multicast rpf-info命令,查看显示信息中的Referenced route type字段,确认RPF为组播静态路由还是单播路由。
- 如果RPF路由为组播静态路由,请执行display multicast routing-table static命令查看组播静态路由配置是否合理。
- 如果RPF路由为单播路由,请执行display ip routing-table命令查看单播路由是否与RPF路由一致。
如果到达RP的RPF路由存在且配置合理,请执行步骤(8)。
(7) 检查是否存在到达组播源的RPF路由。
在设备上执行display multicast rpf-info命令,查看是否存在到达组播源的RPF路由。
¡ 如果不存在,检查单播路由配置。请在当前设备和组播源上分别执行ping命令,检查是否能够互相ping通。如果ping不通,请修改单播路由配置,直到Ping通为止。
¡ 如果存在,通过执行display multicast rpf-info命令,查看显示信息中的Referenced route type字段,确认RPF为组播静态路由还是单播路由。
- 如果Referenced route type字段显示为“multicast static”,表示RPF路由为组播静态路由,请执行display multicast routing-table static命令查看组播静态路由配置是否合理。
- 如果Referenced route type字段显示为“igp”、“egp”、“unicast (direct)”或“unicast”,表示RPF路由为单播路由,请执行display ip routing-table命令查看单播路由是否与RPF路由一致。
如果到达组播源的RPF路由存在且配置合理,请执行步骤(8)。
(8) 检查RPF接口和RPF邻居接口上是否配置组播转发边界。
在设备上执行display multicast boundary命令,查看接口上是否配置了组播转发边界。
¡ 如果已配置,建议在接口上执行undo multicast boundary命令删除对应配置或规划网络,使RPF接口和RPF邻居接口没有配置组播转发边界。
¡ 如果未配置,请执行步骤(9)。
在PIM视图下执行display this命令,查看是否配置组播数据过滤器(通过PIM视图下的source-policy命令配置)。
¡ 如果已配置,继续确认接收到的组播数据是否在过滤器指定的允许范围之内。如果不在,建议根据实际组网需要执行undo source-policy命令删除该配置或重新配置ACL规则,确保组播数据在过滤器指定的允许范围之内。
¡ 如果未配置,请执行步骤(10)。
在设备上分别查看组播表项是否生成:
¡ 如果存在相应的表项,流量仍然不通,请收集相关表项信息,并执行步骤(11)。
¡ 如果不存在,请执行步骤(11)。
需要查看的组播表项以及查看方式如下:
¡ 在设备上执行display pim routing-table命令,检查PIM协议路由表项是否生成。
¡ 在设备上执行display igmp group命令,检查IGMP协议是否有对应的组播组。
¡ 在设备上执行display multicast routing-table命令,检查组播路由表是否生成。
¡ 在设备上执行display multicast forwarding-table命令,检查组播转发表是否生成。
(11) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
PIM-SM网络中SPT无法正常转发数据,组播流量不通。本节所介绍的故障处理方法仅适用于非RP设备故障的情况,若故障设备为RP设备,请联系技术支持人员。
本类故障的常见原因主要包括:
· 组播设备连接下游设备的接口没有收到PIM加入报文。
· PIM-SM域内组播设备上的接口没有开启PIM-SM。
· PIM-SM域内组播设备到组播源的RPF路由不正确。
· 配置不正确(比如组播转发边界配置不正确、组播数据过滤器配置不正确等)。
本类故障的诊断流程如图1-3所示。
图1-3 PIM-SM网络中SPT无法正常转发数据故障诊断流程图
(1) 检查PIM路由表中是否存在正确的(S,G)表项。
在设备上执行display pim routing-table命令,检查PIM路由表中是否存在正确的(S,G)表项。
¡ 如果PIM路由表中存在正确的(S,G)表项,请每隔一段时间(15s左右)执行一次display multicast forwarding-table命令,通过查看显示信息来确认(S,G)表项匹配的组播报文数量和已转发的组播报文是否保持增长。
- 如果转发表中不存在(S,G)表项,或者(S,G)表项对应的“Matched packets”/“Forwarded packets”字段值停止增长,则表示上游设备转发给此设备的组播数据不正常,请执行步骤(8),并将本步骤操作结果告知技术支持人员。
- 如果转发表中存在(S,G)表项,且(S,G)表项对应的“Matched packets”和“Forwarded packets”字段值保持增长,说明组播报文数量和已转发的组播报文数量都在正常增加,表示上游设备转发给此设备的组播数据正常,请执行步骤(8),并将本步骤操作结果告知技术支持人员。
¡ 如果PIM路由表中不存在正确的(S,G)表项,请执行步骤(2)。
(2) 检查连接下游设备的接口是否收到PIM加入报文。
联系技术支持,在专业人士的指导下使用抓包工具(例如Wireshark)在设备连接下游设备的接口上进行抓包,查看连接下游设备接口是否收到PIM加入/剪枝报文。
¡ 如果没有收到PIM加入/剪枝报文,则在下游设备连接本设备的接口上,使用抓包工具(例如Wireshark)进行抓包,查看是否发送PIM加入/剪枝报文给本设备。如果下游设备没有发送PIM加入/剪枝报文,则表示下游设备存在问题,请排查下游设备故障。如果下游设备已经发送PIM加入/剪枝报文,但是本设备没有收到,则表示与本设备之间PIM邻居通信有问题,请执行步骤(8)。
¡ 如果连接下游设备接口收到了PIM加入/剪枝报文,请执行步骤(3)。
(3) 检查接口是否开启PIM-SM。
在当前设备上执行display pim interface verbose命令,查看接口上的PIM信息。
a. 重点查看到达组播源的RPF邻居接口、到达组播源的RPF接口和直连用户主机网段的接口(接收者侧DR的下游接口)上的PIM相关配置信息。如果这些接口上没有开启PIM-SM,请通过pim sm命令开启。同时,检查确保设备上已使能IP组播路由(通过multicast routing命令配置)且PIM邻居建立成功(通过display pim neighbor命令查看)。
b. 如果设备上述重点查看的接口都开启了PIM-SM,但问题依然存在,请执行步骤(4)。
(4) 检查是否存在到达组播源的RPF路由。
在设备上执行display multicast rpf-info命令,查看是否存在到达组播源的RPF路由。
¡ 如果不存在,检查单播路由配置。请在当前设备和组播源上分别执行ping命令,检查是否能够互相ping通。如果ping不通,请修改单播路由配置,直到Ping通为止。
¡ 如果存在,通过执行display multicast rpf-info命令,查看显示信息中的Referenced route type字段,确认RPF为组播静态路由还是单播路由。
- 如果Referenced route type字段显示为“multicast static”,表示RPF路由为组播静态路由,请执行display multicast routing-table static命令查看组播静态路由配置是否合理。
- 如果Referenced route type字段显示为“igp”、“egp”、“unicast (direct)”或“unicast”,表示RPF路由为单播路由,请执行display ip routing-table命令查看单播路由是否与RPF路由一致。
如果到达组播源的RPF路由存在且配置合理,请执行步骤(5)。
(5) 检查转发组播数据的接口对应的DR是否为接收者侧DR。
在设备上执行display pim interface命令,查看转发组播数据的接口对应的DR是否为接收者侧DR。判断方法为查看显示信息中DR-Address字段是否携带local标记,如果携带,则为接收者侧DR。
¡ 如果不是接收者侧DR,请根据显示信息中的DR地址找到对应的DR设备,并在该DR设备上执行步骤(6)。
¡ 如果是接收者侧DR,请在当前设备上执行步骤(6)。
(6) 检查RPF接口和RPF邻居接口上是否配置组播转发边界。
在设备上执行display multicast boundary命令,查看接口上是否配置了组播转发边界。
¡ 如果已配置,建议在接口上执行undo multicast boundary命令删除对应配置或重新规划网络,使RPF接口和RPF邻居接口没有配置组播转发边界。
¡ 如果未配置,请执行步骤(7)。
在PIM视图下执行display this命令,查看是否配置组播数据过滤器(通过PIM视图下的source-policy命令配置)。
¡ 如果已配置,继续确认接收到的组播数据是否在过滤器指定的允许范围之内。如果不在,建议根据实际组网需要执行undo source-policy命令删除该配置或重新配置ACL规则,确保用组播数据在过滤器指定的允许范围之内。
¡ 如果未配置,请执行步骤(8)。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
PIM-SM网络中RPT无法正常转发数据,组播流量不通。本节所介绍的故障处理方法仅适用于非RP设备故障的情况,若故障设备为RP设备,请联系技术支持人员。
本类故障的常见原因主要包括:
· PIM-SM域内组播设备到RP的单播路由不通。
· PIM-SM域内各组播设备上为某一组播组服务配置的RP地址不一致。
· PIM-SM域内组播设备的下游接口没有收到PIM加入报文。
· PIM-SM域内组播设备上的接口没有开启PIM-SM。
· PIM-SM域内组播设备到RP的RPF路由不正确。
· 配置不正确(比如组播转发边界配置不正确、组播数据过滤器配置不正确等)。
本类故障的诊断流程如图1-4所示。
图1-4 PIM-SM网络中RPT无法正常转发数据故障诊断流程图
(1) 检查PIM路由表中是否存在正确的(*,G)表项。
在设备上执行display pim routing-table命令,检查PIM路由表中是否存在正确的(*,G)表项。请检查下游接口列表中,是否包含到达所有连接(*,G)组成员的下游接口。
¡ 如果PIM路由表中的(*,G)表项存在且信息完全正确,则建议每隔15秒执行一次display multicast forwarding-table命令,通过查看显示信息来确认组播转发表中是否存在与(*,G)表项相同组播组的(S,G)表项,以及该(S,G)表项匹配的报文数量(“Matched packets”和“Forwarded packets”字段取值)是否保持增长。
- 如果转发表中不存在与(*,G)表项相同组播组的(S,G)表项,或存在与(*,G)表项相同组播组的(S,G)表项但匹配的报文数量停止增长,则表示上游设备转发给此设备的组播数据不正常,请执行步骤(9)。
- 如果转发表中存在与(*,G)表项相同组播组的(S,G)表项,且(S,G)表项对应的“Matched packets”和“Forwarded packets”字段值保持增长,说明组播报文数量和已转发的组播报文数量都在正常增加,表示上游设备转发给此设备的组播数据正常,请执行步骤(9)。
¡ 如果PIM路由表中不存在正确的(*,G)表项,请执行步骤(2)。
(2) 检查连接下游设备的接口是否收到PIM加入报文。
联系技术支持,在专业人士的指导下使用抓包工具(例如Wireshark)在设备连接下游设备的接口上进行抓包,查看连接下游设备接口是否收到PIM加入/剪枝报文。
¡ 如果没有收到PIM加入/剪枝报文,则在下游设备连接本设备的接口上,使用抓包工具(例如Wireshark)进行抓包,查看是否发送PIM加入/剪枝报文给本设备。如果下游设备没有发送PIM加入/剪枝报文,则表示下游设备存在问题,请排查下游设备故障。如果下游设备已经发送PIM加入/剪枝报文,但是本设备没有收到,则表示与本设备之间PIM邻居通信有问题,请执行步骤(9)。
¡ 如果连接下游设备接口收到了PIM加入/剪枝报文,请执行步骤(3)。
(3) 检查接口是否开启PIM-SM。
在当前设备上执行display pim interface verbose命令,查看接口上的PIM信息。
a. 重点查看到达RP的RPF邻居接口、到达RP的RPF接口和直连用户主机网段的接口(接收者侧DR的下游接口)上的PIM相关配置信息。如果这些接口上没有开启PIM-SM,请通过pim sm命令开启。同时,检查设备上是否使能IP组播路由(通过multicast routing命令配置)、PIM邻居是否建立成功(通过display pim neighbor命令查看)。
b. 如果设备上述重点查看的接口都开启了PIM-SM,请执行步骤(4)。
(4) 检查RP信息是否正确。
在设备上执行display pim rp-info命令,查看设备上是否生成了为某个组播组服务的RP信息表项,并检查PIM-SM域中其它所有设备上,为此组播组服务的RP信息是否配置一致。
¡ 如果不一致,且PIM-SM网络中使用静态RP,请在PIM-SM域的所有设备上的PIM视图下执行static-rp命令,将为某组播组服务的RP地址配置为相同的地址;如果PIM-SM网络中使用动态RP,请执行步骤(9)。
¡ 如果一致,请执行步骤(5)。
(5) 检查是否存在到达RP的RPF路由。
在设备上执行display multicast rpf-info命令,查看是否存在到达RP的RPF路由。
¡ 如果不存在,检查单播路由配置。请在当前设备和RP上分别执行ping命令,检查是否能够互相ping通。如果ping不通,请修改单播路由配置,直到ping通为止。
¡ 如果存在,通过执行display multicast rpf-info命令,查看显示信息中的Referenced route type字段,确认RPF为组播静态路由还是单播路由。
- 如果RPF路由为组播静态路由,请执行display multicast routing-table static命令查看组播静态路由配置是否合理。
- 如果RPF路由为单播路由,请执行display ip routing-table命令查看单播路由是否与RPF路由一致。
如果到达RP的RPF路由存在且配置合理,请执行步骤(6)。
(6) 检查转发组播数据的接口对应的DR是否为接收者侧DR。
在设备上执行display pim interface命令,查看转发组播数据的接口对应的DR是否为接收者侧DR。判断方法为查看显示信息中DR-Address字段是否携带local标记,如果携带,则为接收者侧DR。
¡ 如果不是接收者侧DR,请根据显示信息中的DR地址找到对应的DR设备,并在该DR设备上执行步骤(7)。
¡ 如果是接收者侧DR,请在当前设备上执行步骤(7)。
(7) 检查RPF接口和RPF邻居接口上是否配置组播转发边界。
在设备上执行display multicast boundary命令,查看接口上是否配置了组播转发边界。
¡ 如果已配置,建议在接口上执行undo multicast boundary命令删除对应配置或重新规划网络,使RPF接口和RPF邻居接口没有配置组播转发边界。
¡ 如果未配置,请执行步骤(8)。
在PIM视图下执行display this命令,查看是否配置组播数据过滤器(通过PIM视图下的source-policy命令配置)。
¡ 如果已配置,继续确认接收到的组播数据是否在过滤器指定的允许范围之内。如果不在,建议根据实际组网需要执行undo source-policy命令删除该配置或重新配置ACL规则,确保组播数据在过滤器指定的允许范围之内。
¡ 如果未配置,请执行步骤(9)。
(9) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!