Configuring IGMP Proxy

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http:/​/​www.cisco.com/​go/​cfn. An account on Cisco.com is not required.

Prerequisites for IGMP Proxy

  • All devices on the IGMP UDL have the same subnet address. If all devices on the UDL cannot have the same subnet address, the upstream device must be configured with secondary addresses to match all of the subnets to which the downstream devices are attached.

  • IP multicast is enabled and the PIM interfaces are configured.

    Note


    Use the following guidelines when configuring PIM interfaces for IGMP proxy:
    • Use PIM sparse mode (PIM-SM) when the interface is operating in a sparse-mode region and you are running static RP, bootstrap (BSR), or Auto-RP with the Auto-RP listener capability.
    • Use PIM sparse-dense mode when the interface is running in a sparse-dense mode region and you are running Auto-RP without the Auto-RP listener capability.
    • Use PIM dense mode (PIM-DM) when the interface is operating in dense mode and is, thus, participating in a dense-mode region.
    • Use PIM-DM with the proxy-register capability when the interface is receiving source traffic from a dense-mode region that needs to reach receivers that are in a sparse-mode region.

Information about IGMP Proxy

IGMP Proxy

An IGMP proxy enables hosts in a unidirectional link routing (UDLR) environment that are not directly connected to a downstream router to join a multicast group sourced from an upstream network.

The figure below illustrates a sample topology that shows two UDLR scenarios:

  • Traditional UDL routing scenario--A UDL device with directly connected receivers.

  • IGMP proxy scenario--UDL device without directly connected receivers.


Note


IGMP UDLs are needed on the upstream and downstream devices.



Note


Although the following illustration and example uses routers in the configuration, any device (router or switch) can be used.




Scenario 1--Traditional UDLR Scenario (UDL Device with Directly Connected Receivers)

For scenario 1, no IGMP proxy mechanism is needed. In this scenario, the following sequence of events occurs:

  1. User 2 sends an IGMP membership report requesting interest in group G.

  2. Router B receives the IGMP membership report, adds a forwarding entry for group G on LAN B, and proxies the IGMP report to Router A, which is the UDLR upstream device.

  3. The IGMP report is then proxied across the Internet link.

  4. Router A receives the IGMP proxy and maintains a forwarding entry on the unidirectional link.

Scenario 2--IGMP Proxy Scenario (UDL Device without Directly Connected Receivers)

For scenario 2, the IGMP proxy mechanism is needed to enable hosts that are not directly connected to a downstream device to join a multicast group sourced from an upstream network. In this scenario, the following sequence of events occurs:

  1. User 1 sends an IGMP membership report requesting interest in group G.

  2. Router C sends a PIM Join message hop-by-hop to the RP (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 proxies the IGMP membership report to its upstream UDL device across the Internet link.

  5. Router A creates and maintains a forwarding entry on the unidirectional link (UDL).

In an enterprise network, it is desirable to be able to receive IP multicast traffic via satellite and forward the traffic throughout the network. With unidirectional link routing (UDLR) alone, scenario 2 would not be possible because receiving hosts must be directly connected to the downstream device, Router B. The IGMP proxy mechanism overcomes this limitation by creating an IGMP report for (*, G) entries in the multicast forwarding table. To make this scenario functional, therefore, you must enable IGMP report forwarding of proxied (*, G) multicast static route (mroute) entries (using the ip igmp mroute-proxy command) and enable the mroute proxy service (using the ip igmp proxy-service command) on interfaces leading to PIM-enabled networks with potential members.


Note


Because PIM messages are not forwarded upstream, each downstream network and the upstream network have a separate domain.


Related Tasks
Configuring the Upstream UDL Device for IGMP UDLR
Configuring the Downstream UDL Device for IGMP UDLR with IGMP Proxy Support
Related References
Example: IGMP Proxy Configuration

How to Configure IGMP Proxy

Configuring the Upstream UDL Device for IGMP UDLR

Perform this task to configure the upstream UDL device for IGMP UDLR.

SUMMARY STEPS

    1.    enable

    2.    configure terminal

    3.    interface type number

    4.    ip igmp unidirectional-link

    5.    end


DETAILED STEPS
     Command or ActionPurpose
    Step 1 enable


    Example:
    Device> enable
     

    Enables privileged EXEC mode.

    • Enter your password if prompted.

     
    Step 2 configure terminal


    Example:
    Device# configure terminal
     

    Enters global configuration mode.

     
    Step 3 interface type number


    Example:
    Device(config)# interface gigabitethernet 1/0/0
     

    Enters interface configuration mode.

    • For the type and number arguments, specify the interface to be used as the UDL on the upstream device.

     
    Step 4 ip igmp unidirectional-link


    Example:
    Device(config-if)# ip igmp unidirectional-link
     

    Configures IGMP on the interface to be unidirectional for IGMP UDLR.

     
    Step 5 end


    Example:
    Device(config-if)# end
     

    Ends the current configuration session and returns to privileged EXEC mode.

     
    Related Concepts
    IGMP Proxy
    Related References
    Example: IGMP Proxy Configuration

    Configuring the Downstream UDL Device for IGMP UDLR with IGMP Proxy Support

    Perform this task to configure the downstream UDL device for IGMP UDLR with IGMP proxy support.

    SUMMARY STEPS

      1.    enable

      2.    configure terminal

      3.    interface type number

      4.    ip igmp unidirectional-link

      5.    exit

      6.    interface type number

      7.    ip igmp mroute-proxy type number

      8.    exit

      9.    interface type number

      10.    ip igmp helper-address udl interface-type interface-number

      11.    ip igmp proxy-service

      12.    end

      13.    show ip igmp interface

      14.    show ip igmp udlr


    DETAILED STEPS
       Command or ActionPurpose
      Step 1 enable


      Example:
      Device> enable
       

      Enables privileged EXEC mode.

      • Enter your password if prompted.

       
      Step 2 configure terminal


      Example:
      Device# configure terminal
       

      Enters global configuration mode.

       
      Step 3 interface type number


      Example:
      Device(config)# interface gigabitethernet 0/0/0
       

      Enters interface configuration mode.

      • For the type and number arguments, specify the interface to be used as the UDL on the downstream device for IGMP UDLR.

       
      Step 4 ip igmp unidirectional-link


      Example:
      Device(config-if)# ip igmp unidirectional-link
       

      Configures IGMP on the interface to be unidirectional for IGMP UDLR.

       
      Step 5 exit


      Example:
      Device(config-if)# exit
       

      Exits interface configuration mode and returns to global configuration mode.

       
      Step 6 interface type number


      Example:
      Device(config)# interface gigabitethernet 1/0/0
       

      Enters interface configuration mode.

      • For the type and number arguments, select an interface that is facing the nondirectly connected hosts.

       
      Step 7 ip igmp mroute-proxy type number


      Example:
      Device(config-if)# ip igmp mroute-proxy loopback 0 
       

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

      • This step is performed to enable the forwarding of IGMP reports to a proxy service interface for all (*, G) forwarding entries in the multicast forwarding table.

      • In this example, the ip igmp mroute-proxy command is configured on Gigabit Ethernet interface 1/0/0 to request that IGMP reports be sent to loopback interface 0 for all groups in the mroute table that are forwarded to Gigabit Ethernet interface 1/0/0.

       
      Step 8 exit


      Example:
      Device(config-if)# exit
       

      Exits interface configuration mode and returns to global configuration mode.

       
      Step 9 interface type number


      Example:
      Device(config)# interface loopback 0
       

      Enters interface configuration mode for the specified interface.

      • In this example, loopback interface 0 is specified.

       
      Step 10 ip igmp helper-address udl interface-type interface-number


      Example:
      Device(config-if)# ip igmp helper-address udl gigabitethernet 0/0/0
       

      Configures IGMP helpering for UDLR.

      • This step allows the downstream device to helper IGMP reports received from hosts to an upstream device connected to a UDL associated with the interface specified for the interface-type and interface-number arguments.

      • In the example topology, IGMP helpering is configured over loopback interface 0 on the downstream device. Loopback interface 0, thus, is configured to helper IGMP reports from hosts to an upstream device connected to Gigabit Ethernet interface 0/0/0.

       
      Step 11 ip igmp proxy-service


      Example:
      Device(config-if)# ip igmp proxy-service 
       

      Enables the mroute proxy service.

      • When the mroute proxy service is enabled, the device periodically checks the static mroute table for (*, G) forwarding entries that match interfaces configured with the ip igmp mroute-proxy command (see Step 7) based on the IGMP query interval. Where there is a match, one IGMP report is created and received on this interface.

      Note   

      The ip igmp proxy-service command is intended to be used with the ip igmp helper-address (UDL) command.

      • In this example, the ip igmp proxy-service command is configured on loopback interface 0 to enable the forwarding of IGMP reports out the interface for all groups on interfaces registered through the ip igmp mroute-proxy command (see Step 7).

       
      Step 12 end


      Example:
      Device(config-if)# end
       

      Ends the current configuration session and returns to privileged EXEC mode.

       
      Step 13 show ip igmp interface


      Example:
      Device# show ip igmp interface
       

      (Optional) Displays multicast-related information about an interface.

       
      Step 14 show ip igmp udlr


      Example:
      Device# show ip igmp udlr
       

      (Optional) Displays UDLR information for directly connected multicast groups on interfaces that have a UDL helper address configured.

       
      Related Concepts
      IGMP Proxy
      Related References
      Example: IGMP Proxy Configuration

      Configuration Examples for IGMP Proxy

      Example: IGMP Proxy Configuration

      The following example shows how to configure the upstream UDL device for IGMP UDLR and the downstream UDL device for IGMP UDLR with IGMP proxy support.

      Upstream Device Configuration

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

      Downstream Device Configuration

      ip pim rp-address 10.5.1.1 5 
      access-list 5 permit 239.0.0.0 0.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 gigabitethernet 0/0/0 
      ip address 10.2.1.2 255.255.255.0 
      ip pim dense-mode 
      ip igmp unidirectional-link 
      ! 
      interface gigabitethernet 1/0/0 
      ip address 10.5.1.1 255.255.255.0 
      ip pim sparse-mode 
      ip igmp mroute-proxy loopback 0 
      ! 
      interface gigabitethernet 2/0/0 
      ip address 10.6.1.1 255.255.255.0 
      Related Concepts
      IGMP Proxy
      Related Tasks
      Configuring the Upstream UDL Device for IGMP UDLR
      Configuring the Downstream UDL Device for IGMP UDLR with IGMP Proxy Support

      Additional References

      The following sections provide references related to customizing IGMP.

      Related Documents

      Related Topic

      Document Title

      Cisco IOS commands

      Cisco IOS Master Commands List, All Releases

      Cisco IOS IP SLAs commands

      Cisco IOS IP Multicast Command Reference

      Overview of the IP multicast technology area

      “ IP Multicast Technology Overview ” module

      Basic IP multicast concepts, configuration tasks, and examples

      “ Configuring Basic IP Multicast ” or “Configuring IP Multicast in IPv6 Networks” module

      Standards and RFCs

      Standard/RFC

      Title

      RFC 1112

      Host extensions for IP multicasting

      RFC 2236

      Internet Group Management Protocol, Version 2

      RFC 3376

      Internet Group Management Protocol, Version 3

      MIBs

      MIB

      MIBs Link

      No new or modified MIBs are supported by these features, and support for existing MIBs has not been modified by these features.

      To locate and download MIBs for selected platforms, Cisco IOS XE releases, and feature sets, use Cisco MIB Locator found at the following URL:

      http:/​/​www.cisco.com/​go/​mibs

      Technical Assistance

      Description

      Link

      The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

      http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

      Feature History and Information for IGMP Proxy

      Release

      Modification

      Cisco IOS XE 3.3SE

      This feature was introduced.