目录

简介

先决条件

要求

使用的组件

背景信息

配置

通用拓扑

配置示例

FHR — 通常组播SRC直接连接在此处

LHR — 通常组播REC直接连接到此处

PIM — 启用的路由器，充当FHR/LHR

RP — 这是交汇点

配置保留组播的HW条目

PACL

RACL

相关信息

简介

本文档介绍在Nexus 7000/9000交换机上配置阻止或过滤某些组播流量的可能方法的不同方法。它还可以节约组播资源，其中一个常见的例子是Microsoft实现的通用即插即用操作，它使用SSDP在服务器之间通信。

先决条件

要求

思科建议您了解使用PIM稀疏模式的任意源组播(ASM)在Nexus平台上的工作原理。

使用的组件

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

- Nexus 7K，带运行NXOS 7.3(4)D1(1)的F3/M3 LC

- 带7.0(3)I7(9)或9.3(5)的Nexus N9K-C93180YC-EX/FX

注意：如果软件/硬件不同，结果可能不同。

本文档中的信息是从特定实验环境中的设备创建的。本文档中使用的所有设备都以已清除（默认）的配置开始。如果您的网络处于生产状态，请确保您了解任何命令的潜在影响。

背景信息

以下是使用的缩写词列表：

RP — 交汇点

FHR — 第一跳路由器

LHR — 最后一跳路由器

SRC — 组播源

REC — 组播接收器

PACL — 端口访问列表

RACL — 路由访问列表

SVI — 交换虚拟接口

ACL — 访问控制列表

配置

通用拓扑

配置示例

假设：

RP的IP地址是192.168.10.1

SRC的IP地址为172.16.10.100/32

SSDP组：239.255.255.250/239.255.255.253

现在，我们根据设备的角色讨论配置。例如，FHR、LHR、RP等。

FHR — 通常组播SRC直接连接在此处

1.过滤现有RP的注册。

ip pim rp-address 192.168.10.1 route-map filter-registration

!

Route-map filter-registration deny 5

match ip multicast source 172.16.10.100/32 group 239.255.255.250/32

// Above line is specific to SRC/GROUP pair

Route-map filter-registration deny 7

match ip multicast group 239.255.255.250/32

// Above line is for any SRC and specific group

!

Route-map filter-registration permit 100

Match ip multicast group 224.0.0.0/4

2.通过为SSDP组定义不存在的伪造RP（例如1.1.1.1）来过滤向RP的注册；在本例中，FHR承担RP的角色。

ip route 1.1.1.1/32 Null0

!

ip pim rp-address 1.1.1.1 route-map SSDP_groups

!

Route-map SSDP_groups permit 5

match ip multicast group 239.255.255.250/32

Route-map SSDP_groups permit 10

match ip multicast group 239.255.255.253/32

Route-map SSDP_groups deny 20

match ip multicast group 224.0.0.0/4

!

ip pim rp-address 192.168.10.1 route-map all_other_groups

!

Route-map all_other_groups deny 5

match ip multicast group 239.255.255.250/32

Route-map all_other_groups deny 10

match ip multicast group 239.255.255.253/32

Route-map all_other_groups permit 20

match ip multicast group 224.0.0.0/4

验证：

Nexus9K_OR_N7K# show ip pim rp

PIM RP Status Information for VRF "default"

BSR disabled

Auto-RP disabled

BSR RP Candidate policy: None

BSR RP policy: None

Auto-RP Announce policy: None

Auto-RP Discovery policy: None

RP: 192.168.10.1, (0),

uptime: 00:00:27   priority: 0,

RP-source: (local), group-map: Filter-registration,

group rangs:

224.0.0.0/4

239.255.255.253/32 (deny)

239.255.255.250/32 (deny)

Nexus9K_OR_N7K# show ip mroute

IP Multicast Routing Table for VRF "default"

(172.16.10.100/32, 239.255.255.250/32), uptime: 00:04:12, ip pim

Incoming interface: Vlan10, RPF nbr: 172.16.10.100

Outgoing interface list: (count: 0)

Nexus9K_OR_N7K# show system internal mfwd event-history pkt

pkt events for MCASTFWD process

2021 Jan  1 11:11:41.792316 mcastfwd [21914]: [21933]: Create state for (172.16.10.100, 239.255.255.250)

Nexus9K_OR_N7K # show ip pim internal event-history null-register

2021 Jan 01 11:15:19.095711: E_DEBUG    pim [21935]:  Null Register not sent for (172.16.10.100/32, 239.255.255.250/32) yes

以上输出确认FHR未将流注册到RP。

LHR — 通常组播REC直接连接到此处

3.在入口SVI（REC驻留的位置）上应用IGMP策略。 此处的想法是从REC过滤SSDP组的IGMP成员身份报告。

ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4

!

route-map filter-SSDP-joins deny 5

match ip multicast group 239.255.255.250/32

route-map filter-SSDP-joins deny 6

match ip multicast group 239.255.255.253/32

route-map filter-SSDP-joins permit 100

match ip multicast group 224.0.0.0/4

!

Interface VlanXX

ip igmp report-policy filter-SSDP-joins

验证：

Nexus9K_OR_N7K (config)# show ip mroute 239.255.255.250

IP Multicast Routing Table for VRF "default"

Group not found

!

Nexus9K_OR_N7K (config)# show ip igmp snooping groups vlan 44

Type: S - Static, D - Dynamic, R - Router port, F - Fabricpath core port

Vlan  Group Address      Ver  Type  Port list

44    */*                -    R     Vlan44

44    239.255.255.250    v2   D     Eth1/5

!

Nexus9K_OR_N7K (config)# show ip igmp internal event-history debugs

debugs events for IGMP process

2021 Jan  1 11:52:21.277915 igmp [1125]: : Filtered group 239.255.255.250

2021 Jan  1 11:52:21.277903 igmp [1125]: : Received v2 Report for 239.255.255.250 from 172.16.44.100 (Vlan44)

以上输出确认IGMP成员身份报告已过滤且(*,G)加入未发送到RP。

PIM — 启用的路由器，充当FHR/LHR

您可以使用选项1或2和3的组合，具体取决于您的要求。

例如：

4.过滤现有RP（FHR角色）的注册：

ip pim rp-address 192.168.10.1 route-map filter-registration

!

Route-map filter-registration deny 5

match ip multicast source 172.16.10.100/32 group 239.255.255.250/32

Route-map filter-registration deny 7

match ip multicast group 239.255.255.250/32

!

Route-map filter-registration permit 100

Match ip multicast group 224.0.0.0/4

5. IGMP策略，用于从REC（LHR角色）过滤IGMP成员身份报告。

ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4

!

route-map filter-SSDP-joins deny 5

match ip multicast group 239.255.255.250/32

route-map filter-SSDP-joins deny 6

match ip multicast group 239.255.255.253/32

route-map filter-SSDP-joins permit 100

match ip multicast group 224.0.0.0/4

!

Interface VlanXX

ip igmp report-policy filter-igmp-joins

验证：

与上面C和D点的验证基本相同。

Show ip mroute

Show ip pim rp

Show ip pim internal event-history join-prune

Show ip igmp internal event-history debugs

RP — 这是交汇点

6.用于阻止FHR注册SSDP组的注册策略。

ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4

ip pim register-policy all_groups

!

Route-map all_groups deny 5

match ip multicast group 239.255.255.250/32

Route-map all_groups deny 10

match ip multicast group 239.255.255.253/32

Route-map all_groups permit 20

match ip multicast group 224.0.0.0/4

验证：

Nexus9K_OR_N7K (config)# show ip mroute 239.255.255.250

IP Multicast Routing Table for VRF "default"

Group not found

!

Nexus9K_OR_N7K (config)# show ip pim internal event-history data-register-receive

2021 Jan 08 03:33:06.353951: E_DEBUG    pim [1359]:  Register disallowed by policy

2021 Jan 08 03:33:06.353935: E_DEBUG    pim [1359]:  Received DATA Register from 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32) (pktlen 1028)

2021 Jan 08 03:29:42.602744: E_DEBUG    pim [1359]:  Add new route (172.16.10.100/32, 239.1.1.1/32) to MRIB, multi-route TRUE

F241.01.13-C93180YC-EX-1(config)# show ip pim internal event-history null-register

2021 Jan 08 03:35:40.966617: E_DEBUG    pim [1359]:  Send Register-Stop to 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32)

2021 Jan 08 03:35:40.966613: E_DEBUG    pim [1359]:  Register disallowed by policy

2021 Jan 08 03:35:40.966597: E_DEBUG    pim [1359]:  Received NULL Register from 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32) (pktlen 20)

以上输出确认RP正在阻止组239.255.255.250的注册。

7.在RP上应用加入修剪策略 — 仅SSDP组的pim(*,G)加入和(S，G)加入。

ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4

ip pim register-policy all_groups

!

Route-map all_groups deny 5

match ip multicast group 239.255.255.250/32

Route-map all_groups deny 10

match ip multicast group 239.255.255.253/32

Route-map all_groups permit 20

match ip multicast group 224.0.0.0/4

!

Interface Ethernet/Y

ip pim sparse-mode

ip pim jp-policy all_groups

验证：

Nexus9K_OR_N7K # show ip mroute 239.255.255.253

IP Multicast Routing Table for VRF "default"

Group not found

!

F241.01.13-C93180YC-EX-1# show ip pim internal event-history join-prune

2021 Jan 08 03:53:41.643419: E_DEBUG    pim [1359]:  Join disallowed by inbound JP policy

以上输出确认(*,G)PIM加入被RP阻止。

配置保留组播的HW条目

尽管A、B或C节中讨论的所有选项；将阻止FHR、LHR或FHR/LHR在RP上注册流，或者分别阻止向RP发送PIM加入(*,G);仍然可以创建mroute或snooping条目，并且会使用组播HW条目。

注意：在配置VPC时，您可以在入口SVI或第2层接口/端口通道/VPC端口通道上使用RACL或PACL。如果SRC/REC喷出到不同的VLAN或L2接口，则也意味着RACL或PACL需要应用于所有这些接口。但是，根据硬件/软件（主要是由于硬件限制），结果可能会有所不同。

PACL

在入口第2层端口或端口通道或VPC端口通道上配置PACL，以阻止SSDP流量或在FHR上创建(S， G)条目。

注意：根据使用的硬件（例如Nexus N9000），在应用PACL之前（需要重新加载）可能需要刻划TCAM。

例如：

ip access-list BlockAllSSDP

Statistics per-entry

10 deny ip any 239.255.255.250/32

20 deny ip any 239.255.255.253/32

30 permit ip any any

!

Interface Ethernet X/Y

Or

Interface port-channel XX

ip port-access group BlockAllSSDP in

验证：

F241.01.13-C93180YC-EX-1#  sh ip mroute  239.255.255.250

IP Multicast Routing Table for VRF "default"

Group not found

!

show ip access-lists BlockAllSSDP

IP access list BlockAllSSDP

statistics per-entry

10 deny ip any 239.255.255.250/32 [match=3] -> Drop counters

20 deny ip any 239.255.255.253/32 [match=0]

30 permit ip any any [match=0]

由于组播流量/IGMP成员端口都通过PACL被阻止，因此您将看不到任何监听和mroute条目。实际上，PACL会同时丢弃它们。

RACL

您可以在存在SRC但根据所用的软件/硬件的入口SVI上配置RACL;(S， G)条目可能仍会创建，或流量可能会转发到其他本地VLAN。

ip access-list BlockAllSSDP

Statistics per-entry

10 deny ip any 239.255.255.250/32

20 deny ip any 239.255.255.253/32

30 permit ip any any

!

Interface VlanXX

ip port-access group BlockAllSSDP in

验证：

它与PACL基本相同，但RACL选项提供的结果可能与PACL不同；大多数情况下，前面也提到了硬件限制。

相关信息

- 这是增强请求漏洞CSCvm44596

- 技术支持和文档 - Cisco Systems