Tuesday, March 20, 2012

Enabling IGMP on a Cisco router

Enabling IGMP on a Cisco router

When we enable PIM on a Cisco Router`s Interface, IGMP is automatically enabled.
Example:
In this scenario, we have two routers(R2 and R3) and a client.R1 simulates the client.These three routers are connected through a Layer2 switch.
R1:
interface FastEthernet0/0
 ip address 192.168.123.1 255.255.255.0

R2
interface FastEthernet0/0
 ip address 192.168.123.2 255.255.255.0
 ip pim sparse-mode

R3
interface FastEthernet0/0
 ip address 192.168.123.3 255.255.255.0
 ip pim sparse-mode

We see that IGMP is automatically enabled on R2`s related interface:
R2#show ip igmp interface f0/0
FastEthernet0/0 is up, line protocol is up
  Internet address is 192.168.123.2/24
  IGMP is enabled on interface
  Current IGMP host version is 2
  Current IGMP router version is 2
  IGMP query interval is 60 seconds
  IGMP querier timeout is 120 seconds
  IGMP max query response time is 10 seconds
  Last member query count is 2
  Last member query response interval is 1000 ms
  Inbound IGMP access group is not set
  IGMP activity: 1 joins, 0 leaves
  Multicast routing is enabled on interface
  Multicast TTL threshold is 0
  Multicast designated router (DR) is 192.168.123.3 
  IGMP querying router is 192.168.123.2 (this system)
  Multicast groups joined by this system (number of users):
      224.0.1.40(1)
We see that default version is IGMP version2.It can be changed by the interface level  configurations.This output also shows the default timer values of IGMP.
Lets simulate the client:
After we added this command on R1`s F0/0 interface;
ip igmp join-group 239.1.1.1
Client sends IGMP report message to all routers (224.0.0.2)
Its meaning: Client wants the multicast traffic that is destined to 239.1.1.1
R2 and R3 receives this report message:
R2#debug ip igmp
*Mar  1 00:31:27.823: IGMP(0): Received v2 Report on FastEthernet0/0 from 192.168.123.1 for 239.1.1.1
*Mar  1 00:31:27.823: IGMP(0): Received Group record for group 239.1.1.1, mode 2 from 192.168.123.1 for 0 sources
*Mar  1 00:31:27.827: IGMP(0): WAVL Insert group: 239.1.1.1 interface: FastEthernet0/0Successful
*Mar  1 00:31:27.827: IGMP(0): Switching to EXCLUDE mode for 239.1.1.1 on FastEthernet0/0
*Mar  1 00:31:27.827: IGMP(0): Updating EXCLUDE group timer for 239.1.1.1
*Mar  1 00:31:27.831: IGMP(0): MRT Add/Update FastEthernet0/0 for (*,239.1.1.1) by 0
R2#show ip igmp membership
Flags: A  - aggregate, T - tracked
       L  - Local, S - static, V - virtual, R - Reported through v3
       I - v3lite, U - Urd, M - SSM (S,G) channel
       1,2,3 - The version of IGMP the group is in
Channel/Group-Flags:
       / - Filtering entry (Exclude mode (S,G), Include mode (*,G))
Reporter:
       <mac-or-ip-address> - last reporter if group is not explicitly tracked
       <n>/<m>      - <n> reporter in include mode, <m> reporter in exclude

 Channel/Group                  Reporter        Uptime   Exp.  Flags  Interface
 *,239.1.1.1                    192.168.123.1   00:01:01 02:42 2A     Fa0/0
 *,224.0.1.40                   192.168.24.4    00:18:39 02:50 2A     Fa1/0
 *,224.0.1.40                   192.168.123.3   00:27:02 02:35 2LA    Fa0/0
If we remove the “ip igmp join-group 239.1.1.1” command on the client, client sends a leave message:
R2#
*Mar  1 00:35:01.843: IGMP(0): Received Leave from 192.168.123.1 (FastEthernet0/0) for 239.1.1.1
*Mar  1 00:35:01.847: IGMP(0): Received Group record for group 239.1.1.1, mode 3 from 192.168.123.1 for 0 sources
*Mar  1 00:35:01.847: IGMP(0): Lower expiration timer to 2000 msec for 239.1.1.1 on FastEthernet0/0
*Mar  1 00:35:01.847: IGMP(0): Send v2 Query on FastEthernet0/0 for group 239.1.1.1
*Mar  1 00:35:02.851: IGMP(0): Send v2 Query on FastEthernet0/0 for group 239.1.1.1
*Mar  1 00:35:03.851: IGMP(0): Switching to INCLUDE mode for 239.1.1.1 on FastEthernet0/0

Note1:We use IGMP version2.In IGMP version 1, there is no Leave Message.IGMP version1 is not used anymore.

Note2:In this example we have only configured IGMP on the interface.For end-to-end multicast traffic, some other configurations like RP must exists.

No comments:

Post a Comment