目录

简介

问题

解决方案

简介

本文档介绍当使用ip igmp join-group命令强制Cisco Nexus 7000系列交换机加入组播组时遇到的问题。还提供了该问题的解决方案。

问题

ip igmp join-group命令用于强制Nexus 7000系列交换机加入组播组。交换机为指定组生成互联网组管理协议(IGMP)加入，并且发往该组的所有组播数据包都发送到CPU。

在5.2版之前的Nexus操作系统中，如果有接收器连接到Nexus 7000系列交换机并请求组，则数据包的副本也会发送到接收器。在5.2版及更高版本中，由于存在定位器/ID分离协议(LISP)的软件漏洞，交换机不对任何传出接口列表(OIL)。即使有接收器请求数据流，也不会向它们发送数据包。

如果检查组播路由表，您会看到OIL编程命令输出：

(*, 239.1.1.1/32), uptime: 00:00:05, igmp pim ip

Incoming interface: Null, RPF nbr: 0.0.0.0

Outgoing interface list: (count: 1)

Vlan48, uptime: 00:00:05, igmp

但是，当检查内部硬件的已编程值时，您会看到没有对OIL进行编程：

show forwarding multicast route group 239.1.1.1

slot  3

=======

(*, 239.1.1.1/32), RPF Interface: NULL, flags: GPr

Received Packets: 0 Bytes: 0

Number of Outgoing Interfaces: 0

Null Outgoing Interface List

解决方案

ip igmp join-group命令不用于生产。它用于排除需要生成IGMP加入且没有接收器可用的故障。请改用ip igmp static-oif命令。

如果交换机上的LISP不处于活动状态，您可以输入ip routing multicast enforce-rpf命令，以强制ip igmp join-group命令以与5.2版之前的Nexus操作系统相同的方式运行，这意味着OIL已编程。解决方法到位后，您可以看到OIL已在硬件中编程：

show forwarding multicast route group 239.1.1.1

slot  3

=======

(*, 239.1.1.1/32), RPF Interface: NULL, flags: GP

Received Packets: 0 Bytes: 0

Number of Outgoing Interfaces: 1

Outgoing Interface List Index: 2

Vlan48 Outgoing Packets:0 Bytes:0