IGMP Version 2

Hello Jorge

When in doubt, always go back to the original definition of the standard, which in this case for IGMPv2 is RFC 2236 and on Page 4 of that document it says:

There is normally only one Querier per physical network. All multicast routers start up as a Querier on each attached network. If a multicast router hears a Query message from a router with a lower IP address, it MUST become a Non-Querier on that network. If a router has not heard a Query message from another router for [Other Querier Present Interval], it resumes the role of Querier.

For completeness, I’ve checked the RFC for IGMPv3 (RFC 3376) and it states that the same process is used for the election.

So looks like Chris Bryant and Rene Molenaar got it right!

I hope this has been helpful!

Laz

This is a bit off topic, but do you need to enable ip multicast routing to use routing protocols that use multicast?

Hello Justin

Yes, multicast routing on Cisco IOS routers is disabled by default. In order for a router to participating in multicast routing, you must issue the ip multicast-routing command in global configuration mode. You must also keep in mind that there are two types of multicast routing protocols used: Dense Mode and Sparse mode. You can find out more about them and how they operate at the following lesson:


You can also see an example of how multicast routing is enabled at the following lesson, where PIM dense mode is configured:

I hope this has been helpful!

Laz

Hi
what is use of 224.0.1.40 (Cisco-RP-Discovery) multicast address. i see the below log on while enabling igmp protocol version 2 and 3

R1(config-if)#
*Sep 22 17:55:05.123: IGMP(0): Switching IGMP version from 2 to 3 on FastEthernet0/0
*Sep 22 17:55:05.127: IGMP(0): Building v3 Report on FastEthernet0/0
*Sep 22 17:55:05.127: IGMP(0): Add Group Record for 224.0.1.40, type 2
*Sep 22 17:55:05.127: IGMP(0): Send unsolicited v3 Report with 1 group records on FastEthernet0/0
*Sep 22 17:55:05.127: IGMP(0): Received v3 Report for 1 group on FastEthernet0/0 from 192.168.100.1
*Sep 22 17:55:05.131: IGMP(0): Received Group record for group 224.0.1.40, mode 2 from 192.168.100.1 for 0 sources

one more question

except Source filtering any other difference is there between IGMP 2 and IGMP3?

In IGMP3 all host send membership report to the router. but in IGMP2 any one host will send membership report to the router. am i right?

if its right, then why each and every host send membership reports the router even though source and multicast ip address are same?

Hello Gowthamraj

The 224.0.1.40 multicast address is a reserved address used specifically for sending Rendezvous Point (RP) mapping packets. This is part of a mechanism known as Multicast PIM Auto RP which is used with PIM sparse mode. You can find out more about it here:

Source filtering is the primary addition of IGMPv3, but it also includes membership report aggregation which reduces the number of membership reports you will see on the network.

Not sure what you mean here. Do you mean that IGMPv3 obligates all hosts to send a report while IGMPv2 hosts will optionally send one? Can you clarify this question so we can answer it more clearly? Thanks!

I hope this has been helpful!

Laz

Hi Lagapides,

IGMP v2 ( multiple host on same subnet for same multicast address)only 1 host send membership report to the Router when compare to IGMP v1. In IGMP V1 all host send Membership report to router. In IGMP v3 there is new feature add as source specific compare to IGMP v2 but in IGMP v3 same like IGMP v1 all the host send membership report to the router right.

Hellow Gowthamraj

The feature that you are describing is called host report suppression. A host would cancel sending a pending membership report if a similar report was detected from another member on the same subnet. This feature has indeed been removed from IGMPv3, and the reasons for this are described in the following link to RFC 3376 for IGMPv3.

I hope this has been helpful!

Laz

thank you lagapides.

i will check RFC

1 Like

Hi Rene,

Might be worth linking the IGMPv1 lesson to ENCOR as IGMPv1 is referenced a few times. PLus that one also mentions the different messages.

1 Like

Hi Rene/Laz,
This was a great lesson. I was labbing the same topology and noticed that the router received a group membership report following the leave group message. For example in your output, when Host2 send the leave group, R1 sent a group specific query and then Host1 replied with a membership report.

I got the same in mine, however I also got a group membership report from Host2. Additionally I didn’t see any sending of membership report on Host2 following the leave group message being sent. Was wondering what the purpose of this is. Is it some kind of acknowledgment?

Thanks

H2#
*May  8 13:52:38.899: IGMP(0): IGMP delete group 239.1.1.1 on Ethernet0/0
*May  8 13:52:38.899: IGMP(0): Send Leave for 239.1.1.1 on Ethernet0/0
R1#
*May  8 13:52:38.900: IGMP(0): Received Leave from 192.168.1.102 (Ethernet0/0) for 239.1.1.1
*May  8 13:52:38.900: IGMP(0): Received Group record for group 239.1.1.1, mode 3 from 192.168.1.102 for 0 sources
*May  8 13:52:38.900: IGMP(0): Lower expiration timer to 2000 msec for 239.1.1.1 on Ethernet0/0
*May  8 13:52:38.900: IGMP(0): Send v2 Query on Ethernet0/0 for group 239.1.1.1
*May  8 13:52:38.901: IGMP(0): Received v2 Report on Ethernet0/0 from 192.168.1.102 for 239.1.1.1
*May  8 13:52:38.901: IGMP(0): Received Group record for group 239.1.1.1, mode 2 from 192.168.1.102 for 0 sources
*May  8 13:52:38.901: IGMP(0): Updating EXCLUDE group timer for 239.1.1.1
*May  8 13:52:38.901: IGMP(0): MRT Add/Update Ethernet0/0 for (*,239.1.1.1) by 0
*May  8 13:52:39.936: IGMP(0): Received v2 Report on Ethernet0/0 from 192.168.1.101 for 239.1.1.1

Hello Bhawandeep

Thanks for the suggestion. I’ll let @ReneMolenaar to consider clarifying the content in this way…

Laz

Hello @bthethy ,

Could it be a coincidence that H2 sent a membership report just before it left? When I debug this, I only get this on R1:

*May 12 08:54:56.468: IGMP(0): Received Leave from 192.168.1.102 (GigabitEthernet0/1) for 239.1.1.1
*May 12 08:54:56.468: IGMP(0): Received Group record for group 239.1.1.1, mode 3 from 192.168.1.102 for 0 sources
*May 12 08:54:56.468: IGMP(0): Lower expiration timer to 2000 msec for 239.1.1.1 on GigabitEthernet0/1
*May 12 08:54:56.469: IGMP(0): Send v2 Query on GigabitEthernet0/1 for group 239.1.1.1
*May 12 08:54:57.489: IGMP(0): Send v2 Query on GigabitEthernet0/1 for group 239.1.1.1
*May 12 08:54:58.489: IGMP(0): Switching to INCLUDE mode for 239.1.1.1 on GigabitEthernet0/1
*May 12 08:54:58.489: IGMP(0): MRT delete GigabitEthernet0/1 for (*,239.1.1.1) by 0

Could you try a ip igmp join-group 239.1.1.1 and no ip igmp join-group 239.1.1.1 a couple of times on H2 to see if it’s consistent?

A membership report is a very simple message:

https://www.cloudshark.org/captures/909766aa3ea6

It doesn’t have anything except the multicast address that the host is interested in. There are no flags or anything to use it for anything else.

Rene

Hey Rene

Thanks for the lesson, in the video you did not see the leave message because of report suppression, only the last host to send a membership report will send a leave message, other hosts will leave silently without sending a leave.

i think the above is something that you need to add for the lesson to avoid confusion

Hi @abedkhater8 ,

On a switch with IGMP snooping enabled, hosts never see each other IGMP membership reports because the switch intercepts these. This prevents hosts from using the report suppression mechanism and it means that each host will send a membership report.

Rene

Hello Abdallah

Thanks for pointing this out. I will let Rene know to consider making a clarification.

Laz

First of all thank you for all the great lessons. I am getting addicted to your lessons.

Now a membership Query :smiley:
IGMP membership group specific query message from the router right after receiving leave msg from H2 seems to have different values for Max Resp Time from other query msgs.
Other Query Msgs:
Max Resp Time: 10,0
Group specific Query right after receiving the leave msg from H2:
Max Resp Time: 1,0

Is there any significance of this change?

Guess:
Because router quickly wants to decide whether to remove this group entry or not.
Please confirm.

“above we see the leave group membership that H2 sends to destination 224.0.0.2 (all routers multicast group address)”

Why we can’t see the group 224.0.0.2 in the mroute table ? Does it means what multicast groups 224.0.0.0 – 224.0.0.255 are enabled by default (under router interfaces) but it is not visible ?..

Hello Artūras

The address range of 224.0.0.0/24 is known as the local subnetwork address range of the multicast IPv4 address space. These IP addresses are not routable. That means that they, by definition, must remain within the network segment within which they originate. This is why they don’t appear in the multicast routing table.

For additional information, take a look at the NetworkLessons note on the Multicast local subnetwork address range.

I hope this has been helpful!

Laz

Hello Muhammad

This is expected behavior. This has to do with a variable in IGMP called the Last Member Query Interval, which has a default value of 1 second. You will see from RFC3326 that:

The Last Member Query Interval is the Max Response Time inserted into
Group-Specific Queries sent in response to Leave Group messages, and
is also the amount of time between Group-Specific Query messages.

And it is described in further detail in this section with the following explanation:

When a Querier receives a Leave Group message for a group that has
group members on the reception interface, it sends [Last Member Query
Count] Group-Specific Queries every [Last Member Query Interval] to
the group being left. These Group-Specific Queries have their Max
Response time set to [Last Member Query Interval]. If no Reports are
received after the response time of the last query expires, the
routers assume that the group has no local members, as above. Any
Querier to non-Querier transition is ignored during this time; the
same router keeps sending the Group-Specific Queries.

I hope this has been helpful!

Laz

Think I’m getting the hang of this now (thanks!) but I still have one unanswered question - as the hosts are choosing their reply-time at random within the MRT-period, what happens when two hosts randomly choses the same time? Does it just mean that there will be multiple responses in that circumstance? And do they choose a new time for every query, or will the multiple responses keep happening whilst those hosts continue being members of this group?

1 Like