Guest

Cisco IOS Software Releases 12.1 T

UDLR Tunnel ARP and IGMP Proxy

Table Of Contents

UDLR Tunnel ARP and IGMP Proxy

Feature Overview

UDLR Tunnel Enhancements

IGMP Proxy

Benefits

Related Documents

Supported Platforms

Supported Standards, MIBs, and RFCs

Configuration Tasks

Configuring IGMP Proxy

Verifying IGMP Proxy

Configuration Examples

IGMP Proxy Example

Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy Example

Command Reference

ip igmp mroute-proxy

ip igmp proxy-service

tunnel udlr address-resolution


UDLR Tunnel ARP and IGMP Proxy


This feature module describes the UDLR Tunnel ARP and IGMP Proxy enhancements to the Unidirectional Link Routing (UDLR) feature and includes the following sections:

Feature Overview

Supported Platforms

Supported Standards, MIBs, and RFCs

Configuration Tasks

Configuration Examples

Command Reference

Feature Overview

Most protocols in the Internet assume that links are bidirectional. In particular, routing protocols used by directly connected routers no longer behave properly in the presence of a unidirectional link, such as a satellite link. The Unidirectional Link Routing feature, introduced in Cisco IOS Release 12.0(3)T, enables a router to emulate the behavior of a bidirectional link for operation of IP over unidirectional links.

The unidirectional link routing (UDLR) enhancements introduced in this feature module include enhancements to the existing UDLR tunnel mechanism and the addition of the Internet Group Management Protocol (IGMP) proxy mechanism.

UDLR Tunnel Enhancements

In Cisco IOS Release 12.1(5)T, the following enhancements were made to the existing UDLR tunnel mechanism of the Unidirectional Link Routing feature:

Support for Address Resolution Protocol (ARP) and Next Hop Resolution Protocol (NHRP) over a unidirectional link (UDL) through the new tunnel udlr address-resolution interface command.

Emulation of bidirectional links for all IP traffic (as opposed to only control-only broadcast/multicast traffic).

Support for IP generic routing encapsulation (GRE) multipoint at a receive-only tunnel. Destination IP address is not required, but an IP address on the multipoint tunnel is required.

May be used in conjunction with IGMP UDLR.

IGMP Proxy

When UDLR was introduced in Cisco IOS Release 12.0(3)T, it was delivered with two mechanisms for bidirectional link emulation: UDLR tunneling and IGMP UDLR. As of Cisco IOS Release 12.1(5)T, the UDLR capability is now delivered with three complementary mechanisms for bidirectional link emulation: UDLR tunneling, IGMP UDLR, and IGMP Proxy. Each mechanism may be used independently or in conjunction with either or both of the other mechanisms.

The IGMP Proxy mechanism was added to the Unidirectional Link Routing feature to permit hosts that are not directly connected to a downstream router to be able to join a multicast group sourced from an upstream network. Figure 1 illustrates this mechanism.

Figure 1 IGMP Mroute Proxy Mechanism

In the scenario in Figure 1, the following sequence of events occur:

1. User 1 joins multicast group G.

2. Router C sends a Protocol Independent Multicast (PIM) Join message hop-by-hop to the rendezvous point (Router B).

3. Router B receives the PIM Join message and adds a forwarding entry for group G on LAN B.

4. Router B periodically checks its mroute table, and forwards an IGMP report for each multicast group in which it is the reporter.

5. Router A creates and maintains a forwarding entry on the UDL.

In an enterprise network, for example, it is desirable to receive IP multicast traffic via satellite and to be able to forward the traffic throughout the network. With IGMP UDLR alone, this scenario is not possible because receiving hosts must be directly connected to the downstream router. The IGMP Proxy mechanism overcomes this limitation by creating an IGMP report for (*, G) entries in the multicast forwarding table. To make this scenario work, the network administrator must configure PIM sparse mode (PIM-SM) in the network, make the UDL downstream router the rendezvous point (RP) for a select set of addresses, and configure mroute proxy on interfaces leading to PIM enabled networks with potential members. When the UDL downstream router has a (*, G) forwarding entry for an mroute proxy interface, an IGMP report for the group is created and sent to a loopback interface (IGMP Proxy interface). The loopback interface then uses the same mechanism as IGMP UDLR to forward reports upstream.


Note PIM messages are not forwarded upstream so that each downstream network, and the upstream network, have separate domains.


Benefits

The UDLR tunnel enhancements create a true bidirectional link emulation for a physical unidirectional link.

The IGMP Proxy capability allows users anywhere on a downstream network to join an upstream sourced multicast group.

Related Documents

For related information on the Unidirectional Link Routing feature, refer to the following documents:

Cisco IOS IP and IP Routing Configuration Guide, Release 12.1

Cisco IOS IP and IP Routing Command Reference, Release 12.1

Supported Platforms

Cisco 800 series

Cisco 1600 series

Cisco 1700 series

Cisco 2500 series

Cisco 2600 series

Cisco 3600 series

Cisco 4500 series

Cisco 7100 series

Cisco 7200 series

Cisco 7500 series

Cisco AS5300 series

Cisco MC3810

Cisco MGX 8850

Cisco UBR7200 series

Supported Standards, MIBs, and RFCs

Standards

No new or modified standards are supported by this feature.

MIBs

No new or modified MIBs are supported by this feature.

To obtain lists of MIBs supported by platform and Cisco IOS release and to download MIB modules, go to the Cisco web site on Cisco Connection Online (CCO) at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.

RFCs

No new or modified RFCs are supported by this feature.

Configuration Tasks

See the following sections for configuration tasks for the IGMP Proxy feature. Each task in the list is identified as either optional or required:

Configuring IGMP Proxy (Required)

Verifying IGMP Proxy (Optional)

Configuring IGMP Proxy

To configure IGMP Proxy, use the following commands in interface configuration mode:

Command
Purpose

Router(config-if)# ip igmp mroute-proxy type number

When used with the ip igmp proxy-service command, enables forwarding of IGMP reports to a proxy service interface for all (*, G) forwarding entries for this interface in the multicast forwarding table.

Router(config-if)# ip igmp proxy-service

Enables the mroute proxy service. Based on the IGMP query interval, the router periodically checks the mroute table for (*, G) forwarding entries that match interfaces configured with the ip igmp mroute-proxy command. Where there is a match, one IGMP report is created and received on this interface. This command was intended to be used with the ip igmp helper-address udl command, in which case the IGMP report would be forwarded to an upstream router.


Verifying IGMP Proxy

To verify that IGMP Proxy is configured properly, use the show ip igmp command.

Configuration Examples

This section provides the following configuration examples:

IGMP Proxy Example

Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy Example

IGMP Proxy Example

In the following example, Router C sends a PIM-SM Join message to Router B for multicast group G. Router B will request an IGMP report for group G to Router A. Router A will then forward group G multicast traffic over the unidirectional link. Figure 2 illustrates this example.

Figure 2 IGMP Mroute Proxy Topology

Router A

interface ethernet 0
ip address 10.1.1.1 255.255.255.0
ip pim dense-mode
!
interface ethernet 1
ip address 10.2.1.1 255.255.255.0
ip pim dense-mode
ip igmp unidirectional link
!
interface ethernet 2
ip address 10.3.1.1 255.255.255.0

Router B

ip pim rp-address 10.5.1.1 5
access-list 5 permit 239.0.0.0 0.255.255.255.255
!
interface loopback 0
ip address 10.7.1.1 255.255.255.0
ip pim dense-mode
ip igmp helper-address udl ethernet 0
ip igmp proxy-service
!
interface ethernet 0
ip address 10.2.1.2 255.255.255.0
ip pim dense-mode
ip igmp unidirectional link
!
interface ethernet 1
ip address 10.5.1.1 255.255.255.0
ip pim sparse-mode
ip igmp mroute-proxy loopback 0
!
interface ethernet 2
ip address 10.6.1.1 255.255.255.0

Router C

ip pim rp-address 10.5.1.1 5
access-list 5 permit 239.0.0.0 0.255.255.255
!
interface ethernet 0
ip address 10.8.1.1 255.255.255.0
ip pim sparse-mode
!
interface ethernet 1
ip address 10.9.1.1 255.255.255.0
ip pim sparse-mode

Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy Example

The following example shows how to configure UDLR tunnels, IGMP UDLR, and IGMP Proxy on both the upstream and downstream routers sharing a unidirectional link.

Upstream

ip multicast-routing
!
!
!
interface Tunnel0
  ip address 9.1.89.97 255.255.255.252
  no ip directed-broadcast
  tunnel source 9.1.89.97
  tunnel mode gre multipoint
  tunnel key 5
  tunnel udlr receive-only Ethernet2/3
!
interface Ethernet2/0
  no ip address
  shutdown
!
! user network
interface Ethernet2/1
  ip address 9.1.89.1 255.255.255.240
  no ip directed-broadcast
  ip pim dense-mode
  ip cgmp
  fair-queue 64 256 128
  no cdp enable
  ip rsvp bandwidth 1000 100
!
interface Ethernet2/2
  ip address 9.1.95.1 255.255.255.240
  no ip directed-broadcast
!
! physical send-only interface
interface Ethernet2/3
  ip address 9.1.92.100 255.255.255.240
  no ip directed-broadcast
  ip pim dense-mode
  ip nhrp network-id 5
  ip nhrp server-only
  ip igmp unidirectional-link
  fair-queue 64 256 31
  ip rsvp bandwidth 1000 100
!
router ospf 1
  network 9.1.92.96 0.0.0.15 area 1
!
ip classless
ip route 9.1.90.0 255.255.255.0 9.1.92.99
!

Downstream

ip multicast-routing
!
!
!
interface Loopback0
  ip address 9.1.90.161 255.255.255.252
  ip pim sparse-mode
  ip igmp helper-address udl Ethernet2/3
  ip igmp proxy-service
!
interface Tunnel0
  ip address 9.1.90.97 255.255.255.252
  ip access-group 120 out
  no ip directed-broadcast
  no ip mroute-cache
  tunnel source 9.1.90.97
  tunnel destination 9.1.89.97
  tunnel key 5
  tunnel udlr send-only Ethernet2/3
  tunnel udlr address-resolution
!
interface Ethernet2/0
  no ip address
  no ip directed-broadcast
  shutdown
  no cdp enable
!
! user network
interface Ethernet2/1
  ip address 9.1.90.1 255.255.255.240
  no ip directed-broadcast
  ip pim sparse-mode
  ip igmp mroute-proxy Loopback0
  no cdp enable
!
! Backchannel
interface Ethernet2/2
  ip address 9.1.95.3 255.255.255.240
  no ip directed-broadcast
  no cdp enable
!
! physical receive-only interface
interface Ethernet2/3
  ip address 9.1.92.99 255.255.255.240
  no ip directed-broadcast
  ip pim sparse-mode
  ip igmp unidirectional-link
  no keepalive
  no cdp enable
!
router ospf 1
  network 9.1.90.0 0.0.0.255 area 1
  network 9.1.92.96 0.0.0.15 area 1
!
ip classless
ip route 0.0.0.0 0.0.0.0 9.1.95.1
! set rpf to be the physical receive-only interface
ip mroute 0.0.0.0 0.0.0.0 9.1.92.96
ip pim rp-address 9.1.90.1
!
! permit ospf, ping and rsvp, deny others
access-list 120 permit icmp any any
access-list 120 permit 46 any any
access-list 120 permit ospf any any

Command Reference

This section documents the following new commands. All other commands used with the UDLR feature are documented in the Cisco IOS Release command reference publications.

ip igmp mroute-proxy

ip igmp proxy-service

tunnel udlr address-resolution

ip igmp mroute-proxy

To enable Internet Group Management Protocol (IGMP) report forwarding of proxied (*, G) mroute entries, use the ip igmp proxy-service interface configuration command. To disable this service, use the no form of this command.

ip igmp mroute-proxy type number

no ip igmp mroute-proxy type number

Syntax Description

type number

Interface type and number.


Defaults

Disabled

Command Modes

Interface configuration

Command History

Release
Modification

12.1(5)T

This command was introduced.


Usage Guidelines

When used with the ip igmp proxy-service interface command, this command enables forwarding of Internet Group Management Protocol (IGMP) reports to a proxy service interface for all (*, G) forwarding entries for this interface in the multicast forwarding table.

Examples

The following example shows how to configure the ip igmp mroute-proxy command on Ethernet 1 to request that IGMP reports be sent to Loopback 0 for all groups in the mroute table that are forwarded to Ethernet 1. This example also shows how to configure the ip igmp proxy-service command on Loopback 0 to enable the forwarding of IGMP reports out the interface for all groups on interfaces registered through the ip igmp mroute-proxy command.

interface loopback 0
ip address 10.7.1.1 255.255.255.0
ip pim dense-mode
ip igmp helper-address udl ethernet 0
ip igmp proxy-service
!
interface ethernet 0
ip address 10.2.1.1 255.255.255.0
ip pim dense-mode
ip igmp unidirectional link
!
interface ethernet 1
ip address 10.1.1.1 255.255.255.0
ip pim sparse-mode
ip igmp mroute-proxy loopback 0

Related Commands

Command
Description

ip igmp proxy-service

Enables the mroute proxy service.

ip igmp unidirectional-link

Configures an interface to be unidirectional and enables it for IGMP UDLR.


ip igmp proxy-service

To enable the mroute proxy service, use the ip igmp mroute-proxy interface configuration command. To disable forwarding, use the no form of this command.

ip igmp proxy-service

no ip igmp proxy-service

Syntax Description

This command has no arguments or keywords.

Defaults

Disabled

Command Modes

Interface configuration

Command History

Release
Modification

12.1(5)T

This command was introduced.


Usage Guidelines

Based on the IGMP query interval, the router periodically checks the mroute table for (*, G) forwarding entries that match interfaces configured with the ip igmp mroute-proxy command. Where there is a match, one IGMP report is created and received on this interface. This command was intended to be used with the ip igmp helper-address udl command, in which case the IGMP report would be forwarded to an upstream router.

Examples

The following example shows how to configure the ip igmp mroute-proxy command on Ethernet 1 to request that IGMP reports be sent to Loopback 0 for all groups in the mroute table that are forwarded to Ethernet 1. This example also shows how to configure the ip igmp proxy-service command on Loopback 0 to enable the forwarding of IGMP reports out the interface for all groups on interfaces registered through the ip igmp mroute-proxy command.

interface loopback 0
ip address 10.7.1.1 255.255.255.0
ip pim dense-mode
ip igmp helper-address udl ethernet 0
ip igmp proxy-service
!
interface ethernet 0
ip address 10.2.1.1 255.255.255.0
ip pim dense-mode
ip igmp unidirectional link
!
interface ethernet 1
ip address 10.1.1.1 255.255.255.0
ip pim sparse-mode
ip igmp mroute-proxy loopback 0

Related Commands

Command
Description

ip igmp helper-address (UDL)

Configures IGMP helpering as required for IGMP UDLR.

ip igmp mroute-proxy

Enables IGMP report forwarding of proxied (*, G) mroute entries.

ip igmp unidirectional-link

Configures an interface to be unidirectional and enables it for IGMP UDLR.


tunnel udlr address-resolution

To enable the forwarding of Address Resolution Protocol (ARP) and Next Hop Resolution Protocol (NHRP) over a unidirectional link, use the tunnel udlr address-resolution interface configuration command. To disable forwarding, use the no form of this command.

tunnel udlr address-resolution

no tunnel udlr address-resolution

Syntax Description

This command has no arguments or keywords.

Defaults

Disabled

Command Modes

Interface configuration

Command History

Release
Modification

12.1(5)T

This command was introduced.


Usage Guidelines

This command is configured on the send-only tunnel interface of a downstream router.

Examples

The following example shows how to configure the tunnel udlr address-resolution command on an interface to enable ARP and NHRP over a send-only tunnel. An ARP address resolution request received from the upstream router on the unidirectional link (Ethernet 0) will be replied to over the send-only tunnel of the receiver. Likewise, an ARP request may be sent by the downstream router over the send-only tunnel, and the response will be received over the unidirectional link.

interface tunnel 0
tunnel udlr send-only ethernet 0
tunnel udlr address-resolution

Related Commands

Command
Description

tunnel udlr send-only

Configures a unidirectional GRE tunnel to act as a back channel that can send messages when another interface is configured for UDLR to receive messages.