目录

简介

先决条件

要求

使用的组件

配置

NGWC上的组播流

验证

故障排除

重要注意事项

简介

本文档介绍如何在Cisco 5760和3850系列无线局域网控制器(WLC)上配置无线组播，这些控制器通过单播支持组播，通过组播传输机制支持组播。

先决条件

要求

思科建议您对Cisco 5760和3850系列WLC上的组播实施有基本的了解。

使用的组件

本文档中的信息基于以下软件和硬件版本：

- Cisco 5760 系列 WLC

- Cisco 3850 系列 WLC

- 思科3602系列接入点(AP)。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

配置

要在下一代配线间(NWGC)平台上启用组播，请完成以下步骤：

1. 输入wireless multicast命令以在控制器上启用组播：

ish_5760(config)#wireless multicast

注意：此命令默认启用带单播传送机制的组播。

2. 如果必须将传送机制更改为使用组播的组播，请输入以下命令：

ish_5760(config)#ap capwap multicast 239.255.255.250

注意：此命令配置所有无线接入点控制和调配(CAPWAP)AP加入的组播组，从而优化交换机，使其发送到达所有AP的组播CAPWAP消息。当使用单播模式时，此过程不同，因为随后需要交换机向所有CAPWAP AP发送单播消息。这有助于将控制器上的系统负载降至最低。
或者，您可以从GUI导航到Configuration > Controller以配置此信息，如下所示：

3. 输入以下命令以在控制器上启用互联网组管理协议(IGMP)监听（默认启用）：

ip igmp snooping

ip igmp snooping querier

注意：ip igmp snooping querier命令配置控制器，以便定期检查客户端是否仍监听组播流量。

NGWC上的组播流

这些步骤概述了在实施前一配置时NGWC上组播流量的流量：

1. 控制器拦截无线客户端发送的IGMP数据包。

2. 如果存在该组播组-VLAN源组合的客户端条目，则控制器更新IGMP计时器。

如果这是新条目，则WLC会根据（源、组、VLAN）元组创建组播组标识符(MGID)，第2层(L2)的范围为1到4,095，第3层(L3)的范围为4,160到8,191。

3. IGMP数据包在上游转发。

4. MGID条目连同客户端关联信息一起发送到AP，以便客户端可以接收组播流量。

5. 根据传输机制（采用单播/组播的组播），控制器将流量适当转发到AP。
注意：如果传输机制为组播，则不应用数据报传输层安全(DTLS)加密和服务质量(QoS)标记。

6. 然后，AP会根据需要将流量转发到每个客户端。

验证

完成以下步骤以验证您的配置是否正常工作：

1. 输入show wireless multicast命令以验证组播是否已正确启用：

ish_5760#show wireless multicast

Multicast : Enabled

AP Capwap Multicast : Multicast

AP Capwap Multicast group Address : 239.255.255.249

AP Capwap Multicast QoS Policy Name : unknown

AP Capwap Multicast QoS Policy State : None

Wireless Broadcast : Disabled

Wireless Multicast non-ip-mcast : Disabled

Vlan Non-ip-mcast Broadcast MGID

--------------------------------

1  Enabled Enabled Disabled

10 Enabled Enabled Enabled

24 Enabled Enabled Enabled

25 Enabled Enabled Enabled

26 Enabled Enabled Enabled

32 Enabled Enabled Enabled

2. 输入show capwap sum命令以验证CAPWAP信息：

ish_5760#show capwap sum

Name Src         Src  Dest         Dst   Dtls MTU   Xact

IP          Port IP           Port  En

---- ----------- ---- ------------ ----- ---- ----- ---

Ca1  172.16.15.1 5247 239.10.10.11 5247  No   1449  1

Ca19 172.16.15.1 5247 172.17.1.54  52451 Yes  1380  3

注意：如输出所示，Ca1接口用于AP组播模式。Ca1接口的DTLS值为No，而Ca19接口的DTLS值为Yes。

3. 输入show capwap detail或show capwap summary，以验证已加入组播组的AP数：

CAPWAP Tunnels General Statistics:

Number of Capwap Data Tunnels = 2

Number of Capwap Mobility Tunnels = 0

Number of Capwap Multicast Tunnels = 1

Name APName Type PhyPortIf Mode McastIf

------ --------------------------------

Ca2 ish_3502_lw_2 data  -  multicast Ca0

Ca1 ish_ap        data  -  multicast Ca0

Ca0 -             mcas  -  unicast     -

Name SrcIP                SrcPort         DestIP  DstPort DtlsEn MTU

---  ---------------      -------         ------  ------- ------ ---

Ca2  10.105.132.138 5247  10.106.55.133   39237   No      1464

Ca1  10.105.132.138 5247  10.106.15.135   38899   No      1464

Ca0  10.105.132.138 5247  239.255.255.249 5247    No      1464

Name  IfId               McastRef

---   ------------------ --------

Ca2   0x0098BA0000000041  0

Ca1   0x00BC2C800000003D  0

Ca0   0x008B53C000000001  2

注意：此输出的最后一行指向为组播流量创建的CAPWAP隧道接口，McastRef显示已加入组的AP数量。当您必须检查未接收组播流量的AP是否已加入组播组时，此信息非常有用。

4. 输入show int capwap 0命令以验证隧道接口是否将目标地址显示为组播组地址：

ish_5760#show int capwap 0

Capwap0 is up, line protocol is up

Hardware is Capwap

MTU 1464 bytes, BW 10000000 Kbit/sec, DLY 0 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation UNKNOWN, loopback not set

Keepalive set (10 sec)

Carrier delay is 0 msec

Tunnel iifid 39217105861607425, Tunnel MTU 1464

Tunnel source 10.105.132.138:5247, destination 239.255.255.249:5247

5. 输入show wireless multicast group summary命令以验证是否为客户端尝试加入的组播组(本例中使用239.255.255.250)创建了MGID条目：

ish_5760#show wireless multicast group summary

IPv4 groups

-------------

MGID   Source   Group             Vlan

--------------------------------------

4160   0.0.0.0  239.255.255.250   32

6. 输入以下命令以验证相关客户端是否已添加到MGID表中：

ish_5760#show wireless multicast group 239.255.255.250 vlan 32

Source : 0.0.0.0

Group : 239.255.255.250

Vlan : 32

MGID : 4160

Number of Active Clients : 1

Client List

-------------

Client MAC      Client IP      Status

---------------------------------------

1410.9fef.272c  192.168.24.50  MC_ONLY

7. 输入以下命令以验证是否已在此客户端的AP上添加MGID条目：

ish_ap#show capwap mcast mgid id 4160

L3 MGID = 4160 WLAN bitmap = 0x0001

Slot map/tx-cnt: R0:0x0000/0 R1:0x0001/1499

Clients per Wlan

Wlan : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

!! This shows the number of clients per slot, per Service Set

Identification (SSID) on the AP.

Normal Mcast Clients R0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Normal Mcast Clients R1: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

rx pkts = 1499 drp pkts = 0

tx packets:

wlan : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

slots0 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

slots1 : 1499 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Normal Mcast Clients:

Client: 1410.9fef.272c --- Qos User Priority: 0

注意：考虑接收和传输的数据包上的计数器。当您尝试确定AP是否正确将数据包转发到客户端时，此信息非常有用。

8. 输入show ip igmp snooping igmpv2-tracking命令以查看所有客户端组播组映射。这提供已连接客户端及其已加入组的快照。以下为示例输出：

ish_5760#show ip igmp snooping igmpv2-tracking

Client to SGV mappings

----------------------

Client: 192.168.24.50 Port: Ca1

Group:  239.255.255.250 Vlan: 32 Source: 0.0.0.0 blacklisted: no

!! If the client has joined more than one multicast group, all the group entries

will be shown here one after the other.

SGV to Client mappings

----------------------

Group:  239.255.255.250 Source: 0.0.0.0 Vlan: 32

Client: 192.168.24.50 Port: Ca1 Blacklisted: no

!! If there is more than one client entry, these will be shown here.

9. 输入以下命令以验证来自控制器的MGID:

ish_5760#show ip igmp snoop wireless mgid

Total number of L2-MGIDs = 33

Total number of MCAST MGIDs = 0

Wireless multicast is Enabled in the system

Vlan bcast nonip-mcast mcast mDNS-br mgid Stdby Flags

1 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

100 Enabled Disabled Enabled Enabled Disabled 0:1:1:0

115 Enabled Disabled Enabled Enabled Disabled 0:1:1:0

517 Enabled Disabled Enabled Enabled Disabled 0:1:1:0

518 Enabled Disabled Enabled Enabled Disabled 0:1:1:0

519 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

520 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

521 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

522 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

523 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

524 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

525 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

526 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

527 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

528 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

529 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

530 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

531 Enabled Disabled Enabled Enabled Enabled 0:1:1:1

1002 Enabled Enabled Enabled Enabled Disabled 0:0:1:0

1003 Enabled Enabled Enabled Enabled Disabled 0:0:1:0

1004 Enabled Enabled Enabled Enabled Disabled 0:0:1:0

1005 Enabled Enabled Enabled Enabled Disabled 0:0:1:0

Index MGID (S, G, V)

--------------------------------------------------------

故障排除

以下是可用于排除控制器中的配置问题的debug命令列表：

- debug ip igmp snooping

- debug ip igmp snooping 239.255.255.250

- debug ip igmp snooping querier

- debug ip igmp snoop wireless ios client-tracking

- debug ip igmp snoop wireless ios events

- debug ip igmp snoop wireless ios error

- debug ip igmp snoop wireless ap detail

- debug ip igmp snoop wireless ap error

- debug ip igmp snoop wireless ap event

- debug ip igmp snoop wireless ap消息

- debug platform multicast

- debug platform multicast error

- debug platform multicast event

- debug platform l2m-igmp/l2m-mld/l2multicast/l3multicast

- debug l2mcast wireless ios error

- debug l2mcast wireless ios mgid

- debug l2mcast wireless ios spi

注意：确保仅使用相关的组播debug命令以避免性能问题。

以下是show debug命令输出示例：

show debug

NG3K Wireless:

NG3K WIRELESS Error DEBUG debugging is on

L3 Multicast platform:

NGWC L3 Multicast Platform debugs debugging is on

L2M IGMP platform debug:

NGWC L2M IGMP Platform debugs debugging is on

NGWC L2M IGMP SPI debugs debugging is on

NGWC L2M IGMP Error debugs debugging is on

IP multicast:

IGMP debugging is on for 239.10.10.11

IGMP tracking:

igmpv2 tracking debugging is on

L2MC Wireless:

L2MC WIRELESS SPI EVENTS debugging is on

L2MC WIRELESS REDUNDANCY EVENTS debugging is on

L2MC WIRELESS ERROR debugging is on

IGMP Wireless:

IGMP SNOOP wireless IOS Errors debugging is on

IGMP SNOOP wireless IOS Events debugging is on

Nova Platform:

igmp/snooping/wireless/ap/event debugging is on

multicast/event debugging is on

igmp/snooping/wireless/ap/message/rx debugging is on

igmp/snooping/wireless/ap/message/tx debugging is on

wireless/log debugging is on

l2multicast/error debugging is on

igmp/snooping/wireless/ap/error debugging is on

multicast/error debugging is on

multicast debugging is on

l2multicast/event debugging is on

wireless/platform debugging is on

igmp/snooping/wireless/ap/detail debugging is on

以下输出示例显示在控制器上创建MGID:

*Sep 7 00:12:11.029: IGMPSN: Received IGMPv2 Report for group 239.255.255.250 received

on Vlan 32, port Ca1

*Sep 7 00:12:11.029: IGMPSN: group: Received IGMPv2 report for group 239.255.255.250

from Client 192.168.24.50 received on Vlan 32, port Ca1

*Sep 7 00:12:11.029: (l2mcast_tracking_is_client_blacklisted) Client: 192.168.24.50

Group: 239.255.255.250 Source: 0.0.0.0 Vlan: 32 Port: Ca1

*Sep 7 00:12:11.029: (l2mcsn_process_report) Allocating MGID for Vlan: 32 (S,G):

:239.255.255.250

*Sep 7 00:12:11.029: (l2mcast_wireless_alloc_mcast_mgid) Vlan: 32 Source: 0.0.0.0

Group: 239.255.255.250

*Sep 7 00:12:11.030: (l2mcast_wireless_alloc_mcast_mgid) Hash entry added!

*Sep 7 00:12:11.030: (l2mcast_wireless_track_and_inform_client) Protocol: IGMPSN

Client-address: 192.168.24.50 (S,G,V): 0.0.0.0 239.255.255.250 32 Port: Ca1, MGID:

4160 Add: Add

*Sep 7 00:12:11.030: (l2mcast_get_client_params) Client Addr: 192.168.24.50 Client-id:

40512055681220617 Mcast-vlan: 32(l2mcast_wireless_inform_client) Protocol: IGMPSN

Client-address: 192.168.24.50 (S,G,V): 0.0.0.0 239.255.255.250 32 Port: Ca1, iifid =

0x9667C000000004 MGID: 4160 Add: Add

*Sep 7 00:12:11.030: (l2mcast_wireless_inform_client) Sent INFORM CLIENT SPI

*Sep 7 00:12:11.030: (l2mcast_wireless_track_and_inform_client)

l2mcast_wireless_inform_client passed

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: IGMP has sent the

WCM_INFORM_CLIENT with ^I client_id = 40512055681220617/8fed8000000009 ^I capwap id =

42335320837980164 ^I mac_addr = 1410.9fef.272c ^I num_entry = 1

在Cisco IOS®端创建该条目后，该条目将传递到无线控制模块(WCM)进程，该进程在添加该条目之前进行验证：

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: i = 0, source = 0.0.0.0 group =

239.255.255.250 client_ip = 192.168.24.50 vlan = 32, mgid = 4160 add = 1

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: in igmp_wcm_client_join_callback

source = 0.0.0.0 group = 239.255.255.250 client_ip = 192.168.24.50 vlan = 32

client_mac = 1410.9fef.272c mgid = 4160

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: apfMswtp_iifid = 9667c000000004

capwap_if_id = 9667c000000004

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: rrc_manual_mode = 0

rrc_status = 2

*Sep 7 00:12:11.032: %IOSXE-7-PLATFORM: 1 process wcm: locking mgid Tree in file

bcast_process.c line 491

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: allocateL3mgid: mgid entry AVL

search key dump:

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: 00000000: 00 00 00 00 ef 01 01

01 00 08 ff ff ff ff ff ff ................^M 00000010: ff ff ff ff ff ff ff ff ff ff

ff ff ff ff ff ff ................^M 00000020: ff ff ..^M

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: mcast_group_client_lookup:

Lookup failed for client with mac 1410.9fef.272c

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: unlocking mgid Tree in file

bcast_process.c line 624

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: spamLradSendMgidInfo: ap =

0C85.25C7.9AD0 slotId = 1, apVapId = 1, numOfMgid = 1 join = 1 isL2Mgid = 0,

mc2ucflag = 0, qos = 0

*Sep 7 00:12:11.033: %IOSXE-7-PLATFORM: 1 process wcm: mscbApMac = 0c85.25c7.9ad0

client_mac_addr = 1410.9fef.272c slotId = 1 vapId = 1 mgid = 4160 numOfSGs = 2,

rrc_status = 2

以下是可用于排除AP中的配置问题的debug命令列表：

- debug capwap mcast fwd

- debug capwap mcast query

以下是debug命令输出示例：

*Sep 7 06:00:38.099: CAPWAP MCAST: capwapDecodeMgidPayload: mgidTypeStr L3 IGMP MGID

ADD,mgidType 53,mgid=4160,mgid operation=1

*Sep 7 06:00:38.099: CAPWAP MCAST: capwapAddMgidEntry: slotId= 1, client_mac=

1410.9fef.272c, mgid= 4160, wlanid= 0, mc2ucflag= 0, priority= 0, downpriority= 0

L3 mgid flag = L3 IGMP MGID .

*Sep 7 06:00:38.099: CAPWAP MCAST: allocateMgidEntry: mgid = 4160,isL3Mgid=1

*Sep 7 06:00:38.099: CAPWAP MCAST: capwap_bss_mgid_enable:MGID 4160 enable -

Slot=1 WLAN=1

*Sep 7 06:00:38.099: CAPWAP MCAST: L3 IGMP MGID ADD MGID = 4160 SUCCESSFUL .!!

注意：添加MGID条目时，VLAN ID在上一输出中显示为0。但是，即使删除了该条目，它仍显示正确的VLAN映射。

以下是可从控制器进一步分析的show命令列表：

- show wireless client summary

- show wcdb database all

- show wireless multicast group summary

- show wireless multicast group <ip> vlan <id>

- show wireless multicast source <ip> group <ip> vlan <id>

- show ip igmp snooping wireless mgid

- show ip igmp snooping igmpv2-tracking

以下是可以从AP进一步分析的show命令列表：

- show capwap mcast mgid all

- show capwap mcast mgid id <id>

重要注意事项

以下是本文档中描述的有关配置的一些重要注意事项和限制：

- 每个客户端可以监听的组播组数量限制为16。一旦客户端向第17个组发送Join请求，则创建过程会在Cisco IOS端进行，但WCM端向Cisco IOS发送Deny消息。后者会删除该组。

- 目前，仅支持IGMP第2版(V2)。如果客户端使用IGMP版本3(V3)，则控制器上不会创建MGID。因此，在源、组和VLAN中，源地址始终为0.0.0.0。

- NGWC支持的L3 MGID数范围为4,160到8,191。由于MGID条目是组播地址和VLAN的组合，因此只能有4,000种此类组合。这可能是大型环境中的限制。

- 不支持跨VLAN的Bonjour功能。这是因为IP地址224.0.0.251是本地链路组播地址。Cisco 5760和3850系列WLC与任何其他Catalyst交换机一样，不监听本地链路地址。因此，您将看到以下错误消息：

IGMPSN: group: Received IGMPv2 report for group 224.0.0.251 from Client 192.168.24.94

received on Vlan 32, port Ca93 with invalid group address.