IP : IP 组播

在GRE隧道的多播

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

本文为通过通用路由封装 (GRE) 隧道进行组播提供配置示例。

在许多网络场景中,您都需要配置网络,以使用 GRE 隧道在路由器之间发送独立于协议的组播 (PIM) 和组播流量。当组播源和接收方被没有配置IP组播路由的IP网云分开时,通常会出现这种情况。在这种网络方案中,使用PIM在整个IP网云中配置了一个隧道,实现了组播信息包到接收器的传输。本文描述了有关GRE隧道上的组播的配置、验证和相关问题。

先决条件

要求

尝试进行此配置之前,请确保满足以下要求:

使用的组件

本文档不限于特定的软件和硬件版本。

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

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

配置

本部分提供有关如何配置本文档所述功能的信息。

注意: 有关本文档所用命令的详细信息,请使用命令查找工具仅限注册用户)。

如网络图所示,组播源 (10.1.1.1) 连接至 R102,并为组播组 239.1.1.20 进行配置。组播接收方(10.2.2.3)与R104连接,并配置来接收239.1.1.20组的组播信息包。分离 R102 和 R104 是 IP 网云,没有为组播路由进行配置。

在用环回接口确定来源的 R104 与 R102 之间配置隧道。ip pim sparse-dense-mode命令配置在隧道接口上,并且组播路由在R102 和R104上启用。隧道接口上的稀疏-密集模式配置,允许稀疏模式或密集模式数据包依据组的聚合点(RP)配置,在隧道中转发。

注意: 用于密集模式---在隧道上配置PIM密集模式后,R104上配置ip mroute 10.1.1.0 255.255.255.0 tunnel 0 命令,以确保在组播源地址10.1.1.1成功实现RPF。使用此mroute语句,将检查Tunnel0 (Tu0的)上的流入(10.1.1.1,239.1.1.20)组播信息包的反向路径转发(RPF)。在检查成功后,会将组播数据包转发至流出接口列表 (OIL) 接口。

注意: 对于稀疏模式 - 使用隧道上配置的 PIM 稀疏模式,确保可对以下点寻址:

  • 要对从 RP 流过共享结构树 (*,G) 的组播数据流成功进行 RPF 验证,需要为指向隧道接口的 RP 地址配置 ip mroute rp-address nexthop 命令

    在此示例中假设 R102 是 RP(RP 地址 2.2.2.2),那么 mroute 为ip mroute 2.2.2.2 255.255.255.255 tunnel 0 命令,可确保能够对流过共享结构树的流量成功执行 RPF 检查。

  • "对于最短路径结构树(SPT)的组播(S,G)数据流的成功RPF验证,ip mroute source-address nexthop命令需要配置组播源,指向隧道接口。"

    在这种情况下,当SPT数据流流经隧道接口时,ip mroute 10.1.1.0 255.255.255.0 tunnel 0命令将配置在R104上,保证Tu0接口的流入(10.1.1.1,239.1.1.20)组播数据包成功的RPF检验。

网络图

本文档使用以下网络设置:

/image/gif/paws/43584/mcast-gre2.gif

配置

本文档使用以下配置:

根据此运行配置文件配置路由器 102:

R102
version 12.2
!hostname r102
!
!ip subnet-zero
no ip domain-lookup

!--- It stops IP domain lookup, which improves 
!--- the show command response time.

!
ip multicast-routing

!--- Enables IP multicast routing.

!
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
 
!--- Tunnel Source interface.

!
interface Tunnel0

!--- Tunnel interface configured for PIM and carrying 
!--- multicast packets to R104.

 ip address 192.168.24.1 255.255.255.252
 ip pim sparse-dense-mode
 tunnel source Loopback0
 tunnel destination 4.4.4.4
!
interface Ethernet0/0

!--- Interface connected to Source.

 ip address 10.1.1.2 255.255.255.0
 ip pim sparse-dense-mode
!
!
interface Serial8/0
 ip address 192.168.23.1 255.255.255.252

!--- Note IP PIM sparse-dense mode is 
!--- not configured on Serial interface.

!router ospf 1
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 10.1.1.0 0.0.0.255 area 0
 network 192.168.23.0 0.0.0.255 area 0
!
ip classless
ip pim bidir-enable
!
line con 0
line aux 0
line vty 0 4
 login
!
end

根据此运行配置文件配置路由器 104:

R104
r104#
version 12.2
!
hostname r104
!
!
ip subnet-zero
no ip domain-lookup

!--- It stops IP domain lookup, which improves 
!--- the show command response time.

!
ip multicast-routing

!--- Enables IP multicast routing.

!
interface Loopback0
 ip address 4.4.4.4 255.255.255.255

!--- Tunnel Source interface.

!
interface Tunnel0
 ip address 192.168.24.2 255.255.255.252

!--- Tunnel interface configured for PIM 
!--- and carrying multicast packets.

 ip pim sparse-dense-mode
 tunnel source Loopback0
 tunnel destination 2.2.2.2
!
interface Ethernet0/0
 ip address 10.2.2.2 255.255.255.0
 ip pim sparse-dense-mode
!
interface Serial9/0
 ip address 192.168.34.1 255.255.255.252

!--- Note IP PIM sparse-dense mode is not 
!--- configured on Serial interface.

!
!
router ospf 1
 log-adjacency-changes
 network 4.4.4.4 0.0.0.0 area 0
 network 10.2.2.0 0.0.0.255 area 0
 network 192.168.34.0 0.0.0.255 area 0
!
ip classless
no ip http server
ip pim bidir-enable
ip mroute 10.1.1.0 255.255.255.0 Tunnel0


!--- This mroute ensures a successful RPF check 
!--- for packets flowing from the source.
!--- 10.1.1.1 over Shared tree in case of Dense 
!--- more and SPT in case of Sparse mode.

!
ip mroute 2.2.2.2 255.255.255.255 tunnel 0


!--- This mroute is required for RPF check when 
!--- Sparse mode multicast traffic is 
!--- flowing from RP (assuming R102 with 2.2.2.2 as RP)
!--- towards receiver via tunnel  
!--- before the SPT switchover.

line con 0
line aux 0
line vty 0 4
 login
!
end

验证

使用本部分可确认配置能否正常运行。

命令输出解释程序仅限注册用户)(OIT) 支持某些 show 命令。使用 OIT 可查看对 show 命令输出的分析。

  • show ip igmp group - 验证接收方是否已将其对组 239.1.1.20 的 IGMP 加入成员资格请求发送给 R104。

    r104#show ip igmp groups 
    IGMP Connected Group Membership
    Group Address    Interface          Uptime    Expires   Last Reporter
    239.1.1.20       Ethernet0/0        00:00:04  00:02:55  10.2.2.3
  • show ip mroute 组地址- 验证当源 10.1.1.1 为组 239.1.1.20 启动组播数据包时,R102 是否在 R102 mroute 表中安装 (*,239.1.1.20) 和 (10.1.1.1, 239.1.1.20) 条目。

    注意: 在 (10.1.1.1, 239.1.1.20) 条目中,OIL 为 Tunnel0。

    r102#show ip mroute 239.1.1.20
    IP Multicast Routing Table
    Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
           L - Local, P - Pruned, R - RP-bit set, F - Register flag,
           T - SPT-bit set, J - Join SPT, M - MSDP created entry,
           X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
           U - URD, I - Received Source Specific Host Report
    Outgoing interface flags: H - Hardware switched
    Timers: Uptime/Expires
    Interface state: Interface, Next-Hop or VCD, State/Mode
    
    (*, 239.1.1.20), 00:00:09/00:02:59, RP 0.0.0.0, flags: D
      Incoming interface: Null, RPF nbr 0.0.0.0
      Outgoing interface list:
        Tunnel0, Forward/Sparse-Dense, 00:00:09/00:00:00
        Ethernet0/0, Forward/Sparse-Dense, 00:00:09/00:00:00
    
    (10.1.1.1, 239.1.1.20), 00:00:09/00:02:58, flags: T
      Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0
      Outgoing interface list:
        Tunnel0, Forward/Sparse-Dense, 00:00:09/00:00:00
  • show ip mroute 组地址 - 验证 R104 在为源自 10.1.1.1 的组 239.1.1.20 转发组播数据包时,它是否具有 (*,239.1.1.20) 和 (10.1.1.1, 239.1.1.20) 条目。

    注意: 在(10.1.1.1,239.1.1.20),流入接口是Tunnel0,RPF邻居是192.168.24.1"---R102上的隧道头端。RPF 验证的执行基于 R104 上配置的 Mroute,并且组播数据包推送到连接到以太网 0/0 接口的接收器 OIL。

    r104#show ip mroute 239.1.1.20
    IP Multicast Routing Table
    Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
           L - Local, P - Pruned, R - RP-bit set, F - Register flag,
           T - SPT-bit set, J - Join SPT, M - MSDP created entry,
           X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
           U - URD, I - Received Source Specific Host Report
    Outgoing interface flags: H - Hardware switched
    Timers: Uptime/Expires
    Interface state: Interface, Next-Hop or VCD, State/Mode
    
    (*, 239.1.1.20), 00:07:10/00:00:00, RP 0.0.0.0, flags: DCL
      Incoming interface: Null, RPF nbr 0.0.0.0
      Outgoing interface list:
        Tunnel0, Forward/Sparse-Dense, 00:07:10/00:00:00
        Ethernet0/0, Forward/Sparse-Dense, 00:07:10/00:00:00
    
    (10.1.1.1, 239.1.1.20), 00:01:13/00:02:24, flags: CLT
      Incoming interface: Tunnel0, RPF nbr 192.168.24.1, Mroute
      Outgoing interface list:
        Ethernet0/0, Forward/Sparse-Dense, 00:01:13/00:00:00
  • show ip rpf IP 地址 - 对源自 10.1.1.1 的数据包执行 RPF 验证。"以下示例确认了用于10.1.1.1的RPF经过隧道0,在该隧道上,我们接收组播(S,G)信息包。"

    r104>show ip rpf 10.1.1.1
    RPF information for ? (10.1.1.1)
      RPF interface: Tunnel0
      RPF neighbor: ? (192.168.24.1)
      RPF route/mask: 10.1.1.1/24
      RPF type: static
      RPF recursion count: 0
      Doing distance-preferred lookups across tables

故障排除

使用本部分可排除配置故障。

命令输出解释程序仅限注册用户)(OIT) 支持某些 show 命令。使用 OIT 可查看对 show 命令输出的分析。

注意: 使用 debug 命令之前,请参阅有关 Debug 命令的重要信息

如果通过 GRE 隧道进行的组播不工作,则可能由于以下原因之一:

  • 隧道未启动/启动 - 在隧道的每一端,隧道源和目标不匹配。例如,如果R102上的隧道目的地更改为到IP地址10.2.2.2 而不是2.2.2.2,在R104上保留相同配置时,隧道不会出现。

    发出 show interface tunnel 0 命令,以验证隧道的状态。

  • 由于 RPF 故障而丢弃组播数据包。

    发出 show ip mroute count 命令。此输出中显示了此命令的示例输出,以及由于 RPF 故障而增加的计数器:

    r104#show ip mroute count
    IP Multicast Statistics
    3 routes using 1642 bytes of memory
    2 groups, 0.50 average sources per group
    Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second
    Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc)
    
    Group: 224.0.1.40, Source count: 0, Packets forwarded: 0, Packets received: 0
    
    Group: 239.1.1.20, Source count: 1, Packets forwarded: 11, Packets received: 45
      Source: 10.1.1.1/32, Forwarding: 11/0/100/0, Other: 25/14/0
    
    
    !--- After some time, the show ip mroute count command 
    !--- is issued again. You can see the RPF failed counter increasing:
    
    r104#show ip mroute count
    IP Multicast Statistics
    3 routes using 1642 bytes of memory
    2 groups, 0.50 average sources per group
    Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second
    Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc)
    
    Group: 224.0.1.40, Source count: 0, Packets forwarded: 0, Packets received: 0
    
    Group: 239.1.1.20, Source count: 1, Packets forwarded: 11, Packets received: 50
      Source: 10.1.1.1/32, Forwarding: 11/0/100/0, Other: 30/19/0
    r104#

    您还可以发出 show ip rpf source 命令。确保 RPF 接口与接收源组播数据包所在的接口相同,在此例中为隧道 0。有关 RPF 故障的详细信息,请参考 IP 组播故障排除指南

  • PIM邻居---路由器R102不在隧道0接口上转发,因为它没有看到PM的邻居R104。

    发出以下命令:

    • show ip pim neighbor - 可在 R102 中使用 show ip pim neighbor 命令,以通过隧道显示邻居 R104。

    • show ip pim int - 还可以使用 show ip pim int 命令显示存在邻居。

    • ip pim sparse-dense-mode - 验证是否在隧道的两端都配置了接口级别的 ip pim sparse-dense-mode 命令并启用了 IP 组播路由。

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 43584