组播路由

本章介绍如何将 ASA配置为使用组播路由协议。

关于组播路由

组播路由是一种带宽节省技术,通过同时向数千个公司收件人和家庭传送单一信息流来减少流量。使用组播路由的应用包括视频会议、公司通信、远程教育以及软件、股票报价和新闻的分发。

组播路由协议将源流量传递给多个接收者,而不会对源或接收者造成任何额外负担,而且是同类技术当中占用网络带宽最少的。组播数据包通过启用了协议无关组播 (PIM) 及其他支持性组播协议的 ASA 在网络中复制,是目前为止向多个接收者传输数据的最高效方式。

ASA 支持末节组播路由和 PIM 组播路由。但是,不能在一个 ASA 上都配置这两种路由。



组播路由同时支持 UDP 和非 UDP 传输。但是,非 UDP 传输没有进行快速路径优化。


末节组播路由

末节组播路由提供动态主机注册并促进组播路由。如果针对末节组播路由进行了配置,ASA 将用作 IGMP 受托代理。ASA 将 IGMP 消息转发到上游组播路由器(上游组播路由器设置组播数据的传输),而不是完全参加组播路由。ASA 在为末节组播路由而配置后,就不能为 PIM 稀疏模式或双向模式而配置。您必须在参与 IGMP 末节组播路由的接口上启用 PIM。

ASA 同时支持 PIM-SM 和双向 PIM。PIM-SM 是一个组播路由协议,它使用基础单播路由信息库或支持组播的独立路由信息库。该协议会按组播组构建以单个交汇点 (RP) 为根的单向共享树,并且可以选择性地按组播源创建最短路径数。

PIM 组播路由

双向 PIM 是 PIM-SM 的一个变体,用于构建连接组播源和接收器的双向共享树。双向树使用每个组播拓扑链路上运行的专用转发器 (DF) 选择流程构建借助 DF,组播数据从源转发至交汇点 (RP),然后联通共享树一起发送至接收器,而无需源特定的状态。DF 选择发生在 RP 发现期间,提供至 RP 的默认路由。



如果 ASA 是 PIM RP,请使用 ASA 的未被转换的外部地址作为 RP 地址。


PIM 源特定组播支持

ASA 不支持 PIM 源特定组播 (SSM) 功能和相关配置。不过,ASA 允许与 SSM 相关的数据包通过,除非将其放置为最后一跳路由器。

SSM 被分类为数据传递机制,适用于一对多应用,如 IPTV。SSM 模型使用“通道”的概念,以 (S,G) 对表示,其中 S 表示源地址,G 表示 SSM 目标地址。通过使用组管理协议(如 IGMPv3)来实现订用通道。一旦 SSM 获悉某一特定的组播源,它将使接收客户端能直接从该源接收多播流,而不是从共享交汇点 (RP) 接收。SSM 中引入了访问控制机制,提供当前稀疏或疏-密模式实施无法提供的安全增强功能。

PIM-SSM 与 PIM-SM 不同,前者不使用 RP 或共享树。相反,组播组源地址上的信息将由接收方通过本地接收协议 (IGMPv3) 提供,并且用于直接构建源特定树。

PIM 自举路由器 (BSR)

PIM 自举路由器 (BSR) 是一个动态交汇点 (RP) 选择模型,它使用候选路由器执行 RP 功能以及中继组的 RP 信息。RP 功能包括 RP 发现并向 RP 提供默认路由。它执行此操作的方式是将一组设备配置为候选 BSR (C-BSR),它们参与 BSR 选举过程,以从它们自身中选出一个 BSR。选择 BSR 后,配置为候选交汇点 (C-RP) 的设备将开始向选出的 BSR 发送其组映射。然后,BSR 会将组与 RP 的映射信息通过基于跳从 PIM 路由器传送至 PIM 路由器的 BSR 消息发至组播树下的其他所有设备。

此功能提供了一种动态获悉 RP 的方法,这在 RP 可能会定期关闭和启动的大型负载网络中非常重要。

PIM 引导程序路由器 (BSR) 术语

以下术语经常在 PIM BSR 配置中引用:

  • 自举路由器 (BSR) - BSR 通过 PIM 逐跳向其他路由器通告交汇点 (RP) 信息。在多个候选 BSR 中,在选举过程后会选择单个 BSR。此自举路由器的主要目的是将所有候选 RP (C-RP) 通告收集到称为 RP-set 的数据库中,并以 BSR 消息的形式定期(每 60 秒)将此数据库发送到该网络中的其他路由器。

  • 自举路由器 (BSR) 消息— BSR 消息会组播到 TTL 为 1 的 All-PIM-Routers 组。收到这些消息的所有 PIM 邻居会将它们重新传输(TTL 同样为 1)到除收到消息的接口之外的所有接口。BSR 消息包含 RP 集合和当前活动 BSR 的 IP 地址。这是 C-RP 了解在何处单播其 C-RP 消息的方式。

  • 候选自举路由器 (C-BSR) - 配置为候选 BSR 的某个设备会参与 BSR 选举机制。具有最高优先级的 C-BSR 会被选举作为 BSR。C-BSR 的最高 IP 地址作为决定因素。BSR 选举过程是优先的,例如,如果出现具有更高优先级的新 C-BSR,它会触发新的选举过程。

  • 候选交汇点 (C-RP) - RP 作为组播数据源和接收器的交汇场所。配置为 C-RP 的设备会通过单播定期将组播组映射信息直接通告到选举的 BSR。这些消息包含组范围、C-RP 地址和保持时间。当前 BSR 的 IP 地址从网络中所有路由器收到的定期 BSR 消息获取。这样,BSR 可了解当前正在运行且可访问的 RP。



    ASA 不充当 C-RP,即使 C-RP 是 BSR 流量的强制性要求也是如此。仅路由器可以充当 C-RP。因此,对于 BSR 测试功能,您必须将路由器添加到拓扑。


  • BSR 选举机制 - 每个 C-BSR 都会生成包含 BSR 优先级字段的引导程序消息 (BSM)。该域中的路由器会在整个域中泛洪传播 BSM。C-BSR 收到具有比自身优先级更高的 C-BSR 时,会在特定时间内抑制进一步发送 BSM。剩余的单个 C-BSR 会成为选举的 BSR,而且其 BSM 会通知域中的所有其他路由器它是选举的 BSR。

组播组概念

组播基于组概念。任意一组接收者对接收特定数据流表现出兴趣。这样的组没有任何物理边界或地理边界 - 主机可位于互联网上的任何位置。有兴趣接收流向特定组的数据的主机必须使用 IGMP 加入该组。要接收数据流,主机必须是该组的成员。

组播地址

组播地址指定已加入某个组的任意一组 IP 主机,并希望接收发送到此组的流量。

集群

组播路由支持集群。在跨网络 EtherChannel 集群中,在快速路径转发建立之前,控制单元会发送所有的组播数据包和数据包。在建立快速路径转发后,数据单元可能会转发组播数据包。所有数据流都是全流量。同时还支持末节转发流。由于跨网络 EtherChannel 集群中仅有一台设备接收组播数据包,因此,重定向到控制单元较为常见。 在独立接口集群中,设备不会独立工作。所有的数据和路由数据包均由控制单元处理和转发。数据单元会丢弃已发送的所有数据包。

组播路由准则

情景模式

在单情景模式中受支持。

防火墙模式

仅在路由防火墙模式下受支持。不支持透明防火墙模式。

IPv6

不支持 IPv6。

组播组

保留 224.0.0.0 和 224.0.0.255 之间的地址范围用于路由协议和其他拓扑发现或维护协议,例如网关发现和组成员报告。因此,不支持来自地址范围 224.0.0/24 的互联网组播路由;为保留地址启用组播路由时,未创建 IGMP 组。

集群

在集群中,对于 IGMP 和 PIM,仅在主设备上支持此功能。

其他准则

  • 必须针对入站接口配置访问配置规则,以允许流量到达组播主机(如 224.1.2.3)。但不能为该规则指定目标接口,或者不能使其在初始连接验证过程中适用于组播连接。

  • 流量区域中的接口上不支持 PIM/IGMP 组播路由。

  • 请勿将 ASA 同时配置为交汇点 (RP) 和第一跳路由器。

  • HSRP 备用 IP 地址不参与 PIM 邻居关系。因此,如果通过 HSRP 备用 IP 地址路由 RP 路由器 IP,则 ASA中组播路由不起作用。因此,要使组播流量成功通过,请确保 RP 地址的路由不是 HSRP 备用 IP 地址,而是将路由地址配置为接口 IP 地址。

启用组播路由

在 ASA 上启用组播路由,默认情况下将在所有数据接口上启用 IGMP 和 PIM,但不会在绝大多数型号的管理接口上启用 IGMP 和 PIM(请参阅 管理插槽/端口接口 了解不允许通过流量的接口)。IGMP 用于了解直连子网上是否存在组成员。主机通过发送 IGMP 报告消息加入组播组。PIM 用于维护转发表,以转发组播数据报。

要在管理接口上启用组播路由,必须在该管理接口上明确设置组播边界。



组播路由仅支持 UDP 传输层。


下表列出了特定组播表的最大条目数。一旦达到这些限制,系统将会丢弃所有新条目。

  • MFIB - 30,000

  • IGMP 组 - 30,000

  • PIM 路由 - 72,000

过程


启用组播路由:

multicast-routing

示例:


ciscoasa(config)# multicast-routing

组播路由表中的条目数量受 ASA 上 RAM 容量的限制。


自定义组播路由

本节介绍如何自定义组播路由。

配置末节组播路由和转发 IGMP 消息



末节组播路由不与 PIM 稀疏和双向模式同时受支持。


作为至末节区域的网关的 ASA 不需要参与 PIM 稀疏模式或双向模式。相反,可以将该 ASA 配置为 IGMP 受托代理,并使其会从连接到一个接口的主机将 IGMP 消息转发到另一个接口上的上游组播路由器。要将 ASA 配置为 IGMP 代理,请转发主机加入并使消息从末节区域接口发送至上游接口。您还必须在参与末节模式组播路由的接口上启用 PIM。

过程


配置末节组播路由和转发 IGMP 消息:

igmp forward interface if_name

示例:


ciscoasa(config-if)# igmp forward interface interface1


配置静态组播路由

配置静态组播路由可以将组播流量与单播流量分隔开。例如,如果源和目标之间的路由不支持组播路由,可以通过如下方法来解决这个问题:使用 GRE 隧道在它们之间配置两个组播设备,并通过该隧道发送组播数据包。

使用 PIM 时,ASA 期望用于接收数据包的接口和用于将单播数据包发送回到源的接口是同一个接口。在某些情况下(例如,绕过不支持组播路由的路由),您可能希望单播数据包和组播数据包使用不同的路径。

静态组播路由不能通告或重分布。

过程


步骤 1

配置静态组播路由:

mroute src_ip src_mask {input_if_name | rpf_neighbor } [distance]

示例:


ciscoasa(config)# mroute src_ip src_mask {input_if_name | rpf_neighbor} [distance]

步骤 2

配置末节区域的静态组播路由:

mroute src_ip src_mask input_if_name [dense output_if_name] [distance]

示例:


ciscoasa(config)# mroute src_ip src_mask input_if_name [dense output_if_name] [distance]

末节组播路由仅支持 dense output_if_name 关键字-参数对。


配置 IGMP 功能

IP 主机使用 IGMP 向直接连接的组播路由器报告其组成员身份。IGMP 用于在特定 LAN 上的一个组播组中动态注册单个主机。主机通过向其本地组播路由器发送 IGMP 消息来识别组成员身份。在 IGMP 下,路由器监听 IGMP 消息,并定期发出查询以发现特定子网上处于活动状态或非活动状态的组。

本节介绍如何逐个接口配置可选的 IGMP 设置。

禁用接口上的 IGMP

您可以禁用特定接口上的 IGMP。如果知道特定接口上没有组播接口,并且想要防止 ASA 通过该接口发送主机查询消息,则此信息很有用。

过程

禁用接口上的 IGMP:

no igmp

示例:

ciscoasa(config-if)# no igmp

要重新启用接口上的 IGMP,请使用 igmp 命令。

 

接口配置中仅显示 no igmp 命令。


配置 IGMP 组成员身份

您可以将 ASA 配置成为组播组的成员。配置 ASA 加入组播组会使上游路由器维护该组的组播路由表信息,并保持该组的路径处于活动状态。



如果要将特定组的组播数据包转发给接口,且无需 ASA 将这些数据包接受为该组的一部分,请参阅配置静态加入的 IGMP 组


过程

将 ASA 配置为组播组的成员:

igmp join-group group-address

示例:

ciscoasa(config-if)# igmp join-group mcast-group

group-address 参数是该组的 IP 地址。

 

igmp join-group 命令使让PIM 能够向源或汇聚点 (RP) 发送加入请求,前提是使用此命令的防火墙是应用该命令的接口上的 PIM 指定路由器 (DR)。


配置静态加入的 IGMP 组

有时,组成员因某些配置而无法报告其在组中的成员关系,或者网段上可能不存在组成员。但是,您仍希望将该组的组播流量发送到该网段。您可以通过配置静态加入的 IGMP 组将该组的组播流量发送到网段。

输入 igmp static-group 命令。ASA 不接收组播数据包,而是将其转发至指定的接口。

过程

静态配置 ASA 以加入接口上的组播组:

igmp static-group

示例:

ciscoasa(config-if)# igmp static-group group-address

group-address 参数是该组的 IP 地址。

 

igmp static-group 命令使让PIM 能够向源或汇聚点 (RP) 发送加入请求,前提是使用此命令的防火墙是应用该命令的接口上的 PIM 指定路由器 (DR)。


控制对组播组的访问

您可以通过使用访问控制列表控制对组播组的访问。

过程

步骤 1

为组播流量创建标准 ACL:

access-list name standard [permit | deny] ip_addr mask

示例:

ciscoasa(config)# access-list acl1 standard permit 192.52.662.25

您可以为一个 ACL 创建多个条目。您可以使用扩展或标准 ACL。

ip_addr mask 参数是被允许或拒绝的组播组的 IP 地址。

步骤 2

创建扩展的 ACL:

access-list name extended [permit | deny] protocol src_ip_addr src_mask dst_ip_addr dst_mask

示例:

ciscoasa(config)# access-list acl2 extended permit protocol 
src_ip_addr src_mask dst_ip_addr dst_mask

dst_ip_addr 参数是被允许或拒绝的组播组的 IP 地址。

步骤 3

将 ACL 应用于接口:

igmp access-group acl

示例:

ciscoasa(config-if)# igmp access-group acl

acl 参数是标准或扩展 IP ACL 的名称。


限制接口上的 IGMP 状态数量

您可以对每个接口限制 IGMP 成员身份报告造成的 IGMP 状态数量。超出所配置限制的成员身份报告不会输入到 IGMP 缓存中,多余成员身份报告的流量不会转发。

过程

限制接口上的 IGMP 状态数量:

igmp limit number

示例:

ciscoasa(config-if)# igmp limit 50

有效值的范围为 0 到 5000,默认值为 。

将此值设置为 0 可防止添加获悉的组,但仍允许手动定义成员身份(使用 igmp join-groupigmp static-group 命令)。此命令的 no 形式将恢复默认值。




当您更改接口上具有活动加入的 IGMP 限制时,新限制不适用于现有组。仅当将新组添加到接口或 IGMP 加入计时器到期时,ASA 才会验证限制。要应用新的限制并立即生效,必须在接口上禁用并重新启用 IGMP。


修改发送到组播组的查询消息

ASA 发送查询消息,以发现哪些组播组有成员位于与接口连接的网络上。成员以 IGMP 报告消息作出响应,以表明自己想要接收特定组的组播数据包。查询消息会发送到全系统组播组,该组的地址为 224.0.0.1,生存时间值为 1。

这些消息会定期发送,从而刷新 ASA 上存储的成员身份信息。如果 ASA 发现组播组中没有本地成员仍与接口相连接,它会停止向连接的网络转发该组的组播数据包,并会向数据包源发送回删除消息。

默认情况下,子网上的 PIM 指定路由器负责发送查询消息。默认情况下,每 125 秒发送一次消息。

默认情况下,更改查询响应时间时,IGMP 查询中通告的最大查询响应时间为 10 秒。如果 ASA 不在此时间内接收对主机查询的响应,它就会删除该组。



igmp query-timeout igmp query-interval 命令需要 IGMP 版本 2。


如要更改查询间隔时间、查询响应时间和查询超时值,请执行以下步骤:

过程

步骤 1

设置查询间隔时间(以秒为单位):

igmp query-interval

示例:

ciscoasa(config-if)# igmp query-interval 30

有效值的范围为 1 到 3600;默认值为 125。

如果 ASA 不能在指定超时值(默认值为 255 秒)内在接口上收到查询消息,ASA 将会成为指定路由器并开始发送查询消息。

步骤 2

更改查询的超时值:

igmp query-timeout

示例:

ciscoasa(config-if)# igmp query-timeout 30

有效值的范围为 60 到 300;默认值为 225。

步骤 3

更改最大查询响应时间:

igmp query-max-response-time

有效值的范围为 1 到 25;默认值为 10。

示例:

ciscoasa(config-if)# igmp query-max-response-time 20


更改 IGMP 版本

默认情况下,ASA 运行 IGMP 版本 2;此版本启用了多项附加功能,例如 igmp query-timeout igmp query-interval 命令

子网上所有的组播路由器必须支持同一版本的 IGMP。ASA 不会自动检测版本 1 路由器并切换到版本 1。但是,可以在子网上结合使用 IGMP 版本 1 和版本 2 主机;当存在 IGMP 版本 1 主机时,运行 IGMP 版本 2 的 ASA 可正常工作。

过程

控制要在接口上运行的 IGMP 版本:

igmp version {1 | 2}

示例:

ciscoasa(config-if)# igmp version 2


配置 PIM 功能

路由器使用 PIM 来维护转发表,以便用于转发组播图。如果在 ASA 上启用组播路由,PIM 和 IGMP 将会在所有接口上自动启用。



PAT 不支持 PIM。PIM 协议不使用端口,PAT 只能与使用端口的协议配合使用。


本节介绍如何配置可选的 PIM 设置。

启用和禁用接口上的 PIM

可以在特定接口上启用或禁用 PIM。

过程

步骤 1

在特定接口上启用或重新启用 PIM:

pim

示例:

ciscoasa(config-if)# pim

步骤 2

在特定接口上禁用 PIM:

no pim

示例:

ciscoasa(config-if)# no pim

 

接口配置中仅显示 no pim 命令。


配置静态交汇点地址

常见 PIM 稀疏模式中或 bidir 域中的所有路由器均需要了解 PIM RP 地址。使用 pim rp-address 命令可静态配置该地址。



ASA 不支持自动 RP。必须使用 pim rp-address 命令来指定 RP 地址。


您可以配置 ASA 来充当多个组的 RP。ACL 中指定的组范围确定 PIM RP 组映射。如果未指定 ACL,则一个组的 RP 将应用于整个组播组范围 (224.0.0.0/4)。

过程

在特定接口上启用或重新启用 PIM:

pim rp-address ip_address [acl] [bidir]

ip_address 参数是分配为 PIM RP 的路由器的单播 IP 地址。

acl 参数是定义应将该 RP 用于哪些组播组的标准 ACL 的名称或编号。请勿在使用此命令时一起使用主机 ACL。

排除 bidir 关键字会导致这些组在 PIM 稀疏模式下运行。

 

无论实际的双向配置是怎样的,ASA 在 PIM 问候消息中始终通告双向功能。

示例:

ciscoasa(config)# pim rp-address 10.86.75.23 [acl1] [bidir]


配置指定路由器优先级

指定路由器 (DR) 负责将 PIM 注册消息、加入消息和删除消息发送到 RP。如果网段上有多个组播路由器,将会根据 DR 优先级来选择 DR。如果多台设备具有同样的 DR 优先级,则具有最高 IP 地址的设备将会成为 DR。

默认情况下,ASA 的 DR 优先级为 1。您可以更改此值。

过程

更改指定路由器优先级:

pim dr-priority num

示例:

ciscoasa(config-if)# pim dr-priority 500

num 参数可以是 1 至 4294967294 的任意 数字。


配置和过滤 PIM 注册消息

当 ASA 作为 RP 时,您可以禁止特定的组播源注册到 ASA,从而防止未授权的源注册到 RP。Request Filter 窗格可用于定义 ASA 将会从其接受 PIM 注册消息的组播源。

过程

配置 ASA 以筛选 PIM 注册消息:

pim accept-register {list acl | route-map map-name}

示例:

ciscoasa(config)# pim accept-register {list acl1 | route-map map2}

在此示例中,ASA 筛选 PIM 注册消息 acl1 和路由映射 map2


配置 PIM 消息间隔

路由器查询消息用于选择 PIM DR。PIM DR 负责发送路由器查询消息。默认情况下,每隔 30 秒发送一次路由器查询消息。此外,ASA 每隔 60 秒发送一次 PIM 加入消息或删除消息。

过程

步骤 1

发送路由器查询消息:

pim hello-interval seconds

示例:

ciscoasa(config-if)# pim hello-interval 60

seconds 参数的有效值范围为 1 到 3600 秒。

步骤 2

更改 ASA 发送 PIM 加入消息或删除消息的时间(以秒为单位):

pim join-prune-interval seconds

示例:

ciscoasa(config-if)# pim join-prune-interval 60

seconds 参数的有效值范围为 10 到 600 秒。


过滤 PIM 邻居

您可以定义可成为 PIM 邻居的路由器。通过筛选可成为 PIM 邻居的路由器,可以实现以下目的:

  • 防止未授权的路由器成为 PIM 邻居。

  • 防止连接的末节路由器加入到 PIM。

过程

步骤 1

使用标准 ACL 定义要加入到 PIM 的路由器:

access-list pim_nbr deny router-IP_addr PIM neighbor

示例:

ciscoasa(config)# access-list pim_nbr deny 10.1.1.1 255.255.255.255

在此示例中,以下 ACL 与 pim neighbor-filter 命令配合使用可防止 10.1.1.1 路由器成为 PIM 邻居。

步骤 2

筛选邻居路由器:

pim neighbor-filter pim_nbr

示例:

ciscoasa(config)# interface GigabitEthernet0/3
ciscoasa(config-if)# pim neighbor-filter pim_nbr

此示例防止 10.1.1.1 路由器在接口 GigabitEthernet0/3 上成为 PIM 邻居。


配置双向邻居过滤器

Bidirectional Neighbor Filter 窗格显示在 ASA 上配置的 PIM 双向邻居过滤器(如有)。PIM 双向邻居过滤器是定义可参与 DF 选举的邻居设备的 ACL。如果接口未配置 PIM 双向邻居过滤器,则没有限制。如果配置了 PIM 双向邻居过滤器,则只有 ACL 允许的邻居可参与 DF 选举过程。

如果 PIM 双向邻居过滤器配置应用于 ASA,名称为 interface-name_multicast 的运行配置中会显示 ACL,其中,interface-name 是应用组播边界过滤器的接口的名称。如果已存在使用该名称的 ACL,将会给名称加上一个数字(例如,inside_multicast_1)。此 ACL 定义可成为 ASA 的 PIM 邻居的设备。

双向 PIM 允许组播路由器保持减少的状态信息。要选择 DF,必须为 bidir 双向启用分片中的所有组播路由器。

PIM 双向邻居过滤器允许指定应参与 DF 选举的路由器,同时仍允许所有路由器加入到稀疏模式域,从而实现从纯稀疏模式网络到 bidir 网络的过渡。支持 bidir 的路由器可以从它们本身当中选择 DF,即使分片上有非 bidir 路由器。非 bidir 路由器上的组播边界可防止 bidir 组中的 PIM 消息和数据泄漏到 bidir 子集云中或从 bidir 子集云泄漏出去。

如果启用了 PIM 双向邻居过滤器,ACL 允许的路由器将被视为具有双向功能。因此,以下说法均是正确的:

  • 如果一个获允许的邻居不支持 bidir,将不会发生 DF 选举。

  • 如果一个被拒绝的邻居支持 bidir,将不会发生 DF 选举。

  • 如果一个被拒绝的邻居不支持 bidir,可能会发生 DF 选举。

过程

步骤 1

使用标准 ACL 定义要加入到 PIM 的路由器:

access-list pim_nbr deny router-IP_addr PIM neighbor

示例:

ciscoasa(config)# access-list pim_nbr deny 10.1.1.1 255.255.255.255

在此示例中,以下 ACL 与 pim neighbor-filter 命令配合使用可防止 10.1.1.1 路由器成为 PIM 邻居。

步骤 2

筛选邻居路由器:

pim bidirectional-neighbor-filter pim_nbr

示例:

ciscoasa(config)# interface GigabitEthernet0/3
ciscoasa(config-if)# pim bidirectional neighbor-filter pim_nbr

此示例防止 10.1.1.1 路由器在接口 GigabitEthernet0/3 上成为 PIM 双向邻居。


将 ASA 配置为候选 BSR

可以将 ASA 配置为候选 BSR

过程

步骤 1

配置路由器以宣布其候选者为引导程序路由器 (BSR):

pim bsr-candidate interface_name [hash_mask_length [priority]]

示例:

ciscoasa(config)# pim bsr-candidate inside 12 3

步骤 2

(可选)将 ASA 配置为边界引导程序路由器:

interface interface_name

pim bsr-border

示例:

ciscoasa(config)# interface GigabitEthernet0/0
ciscoasa(config-if)# pim bsr-border

在接口上配置此命令时,不会通过接口发送或接收引导程序路由器 (BSR) 消息。


配置组播边界

地址范围定义了域边界,从而使具有 IP 地址相同的 RP 的域不会相互泄漏。可在大型域内的子网边界以及域与互联网之间的边界上执行范围界定。

您可以在接口上为组播组地址设置管理权限界定的边界。IANA 已将 239.0.0.0 到 239.255.255.255 的组播地址范围指定为可使用管理性界定的地址。此地址范围可在不同组织管理的域中重复使用。此类地址被视为本地地址,而不是全局唯一地址。

标准 ACL 定义受影响地址的范围。设置边界后,不允许组播数据包从任一方向流经边界。边界允许同一个组播组地址在不同的管理域中重复使用。

您可以通过输入 filter-autorp 关键字在使用管理权限界定的边界配置、检查和筛选 Auto-RP 发现消息和通知消息。Auto-RP 数据包中被边界 ACL 拒绝的任意 Auto-RP 组范围通知都会被删除。仅在 Auto-RP 组范围中的所有地址获边界 ACL 允许的情况下,Auto-RP 组范围通知才可以通过边界。如果有任何地址未获允许,在 Auto-RP 消息转发前,将会筛选整个组范围并将其从 Auto-RP 消息中删除。

过程


配置组播边界:

multicast boundary acl [filter-autorp]

示例:


ciscoasa(config-if)# multicast boundary acl1 [filter-autorp]


PIM 监控

可以使用以下命令监控 PIM 路由进程。有关命令输出的示例和说明,请参阅命令参考。

如要监控或禁用多个 PIM 路由统计信息,请输入以下命令之一

  • show pim bsr-router

    显示引导程序路由器信息。

  • show mroute

    显示组播路由表的内容。

  • show mfib summary

    显示有关 IPv4 PIM 组播转发信息库条目数及接口数的概要信息。

  • show mfib active

    显示组播转发信息库 (MFIB) 中有关主用组播源向组播组发送信息的速率。

  • show pim group-map

    显示组对 PIM 模式映射。要显示组的选举 RP,请指定组地址或名称。

  • show pim group-map rp-timers

    显示每个组对 PIM 模式映射条目的计时器到期时间和正常运行时间。

  • show pim neighbor

    显示协议无关组播 (PIM) 邻居。

组播路由示例

以下示例显示如何使用各个可选过程启用和配置组播路由:

  1. 启用组播路由:

    
    ciscoasa(config)# multicast-routing
    
    
  2. 配置静态组播路由:

    
    ciscoasa(config)# mroute src_ip src_mask {input_if_name | rpf_neighbor} [distance]
    ciscoasa(config)# exit
    
    
  3. 将 ASA 配置为组播组的成员:

    
    ciscoasa(config)# interface
    ciscoasa(config-if)# igmp join-group group-address
    
    

组播路由的历史记录

表 1. 组播路由的功能历史记录

功能名称

平台版本

功能信息

组播路由支持

7.0(1)

增加了对于组播路由数据、身份验证以及使用组播路由协议重新发布和监控路由信息的支持。

引入了 multicast-routing 命令。

支持集群功能

9.0(1)

增加了集群支持。

引入了以下命令:debug mfib clustershow mfib cluster

支持协议无关组播 - 源特定组播 (PIM-SSM) 直接通过

9.5(1)

添加了对启用组播路由时允许 PIM-SSM 数据包通过的支持,除非 ASA 为最后一跳路由器。这使得可以更加灵活地选择组播组,同时还能抵御不同的攻击;主机仅接收来自显式请求的源的流量。

我们未更改任何命令。

独立于协议的组播自举路由器 (BSR)

9.5(2)

添加了对新动态交汇点 (RP) 选择模式的支持,该功能使用备选路由器来执行交汇点功能以及中继组的交汇点信息。此功能提供动态获取交汇点 (RP) 的方法,这一点对于 RP 可定期断开和连接的大型复杂网络非常重要。

引入了以下命令:clear pim group-map、debug pim bsr、pim bsr-border、pim bsr-candidate、show pim bsr-router、show pim group-map rp-timers

增加了 igmp limit

9.15(1)

同样在 9.12(4) 中

igmp limit 从 500 增加到 5000。

新增/修改的命令:igmp limit