cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
5166
Views
0
Helpful
5
Replies

ip igmp static-group and igmp join-group configurations

Craig Pommer
Level 1
Level 1

I've gone through the Cisco IOS "ip igmp join-group" and "ip igmp static-group" Command Use document, but am still having a tough time understanding the IP address that is set in the "ip igmp static-group" command. I was just curious if someone could help break down the components for me? Here is a configuration example configured on different VLANs in my environment, and how I am understanding each component:

ip pim sparse-dense-mode - (enables your interface (SVI) to participate in sparse mode multicast traffic transmission and multicast shared tree. this way clients in that VLAN are able to receive multicast traffic from different multicast groups (sources).

ip igmp join-group 239.255.255.253 - (sets the interface (SVI) to be the receiver for this private multicast group address.) This is where I get a little confused on how this address comes into play. I see that the address is reachable from other devices that are now on that VLAN via ping, therefore validating that it is at this point acting as the receiver. What happens to other multicast traffic on this VLAN then? When I do a show ip mroute, I can see other multicast traffic, and the VLAN that is the incoming interface, but don't understand how that multicast traffic is being handled.

Example:
(x.x.x.x, 239.255.255.250), 05:31:02/00:01:54, flags: T
Incoming interface: VLAN50, RPF nbr 0.0.0.0
Outgoing interface list:
Vlan2, Forward/Sparse-Dense, 05:31:02/00:00:00, H, A
Vlan3, Forward/Sparse-Dense, 05:31:02/00:00:00, H, A
Vlan4, Forward/Sparse-Dense, 05:31:02/00:00:00, H, A
etc...

With the remaining configuration on the VLAN interface that follows, I'm really not sure why "ip igmp join-group" would even need to be configured at all on the same interface? Am I missing something with this, or am I right in my thought process that the join-group configuration should be removed?

ip igmp static-group 239.255.255.253
ip igmp static-group 239.0.1.2

And last but not least, I don't really know why I would need two static-group configurations on the interface, but if I knew what the address was for, or how the multicast is handled by the static-group command, that might clear things up a bit for me. Any help in understanding this would be appreciated. Thanks in advance!

1 Accepted Solution

Accepted Solutions

Jon Marshall
Hall of Fame
Hall of Fame

It's difficult to comment without knowing your full setup but a few pointers.

Firstly both the join-group and static-group commands are often not needed ie. you really only need to enable multicast routing and then enable PIM on all the relevant L3 interfaces. This assumes that all the IGMP join requests will come from clients who want the stream.

However there are times when those commands are useful.

The join-group command is useful when testing and you do not have a client sending IGMP joins. The issue is that it makes the L3 device a receiver of the stream which means all multicast packets are handled in software ie. punted to the CPU and this is something to be avoided if possible.

The static-group command is used when you need the L3 device to receive the stream but the L3 device itself does not become a receiver ie. it simply receives the stream and forwards the multicast packets on out of any relevant interfaces.

The reason you would need either is usually when there are no clients sending joins or there is no downstream router sending a PIM request for the stream but you still want the L3 device to receive the stream. There are reasons why you may want this eg.PIM is being blocked but you still need to forward the stream.

Once again though it is not the norm to need these commands in a multicast environment so you need to understand why they are there before you start removing any.

Jon

View solution in original post

5 Replies 5

Jon Marshall
Hall of Fame
Hall of Fame

It's difficult to comment without knowing your full setup but a few pointers.

Firstly both the join-group and static-group commands are often not needed ie. you really only need to enable multicast routing and then enable PIM on all the relevant L3 interfaces. This assumes that all the IGMP join requests will come from clients who want the stream.

However there are times when those commands are useful.

The join-group command is useful when testing and you do not have a client sending IGMP joins. The issue is that it makes the L3 device a receiver of the stream which means all multicast packets are handled in software ie. punted to the CPU and this is something to be avoided if possible.

The static-group command is used when you need the L3 device to receive the stream but the L3 device itself does not become a receiver ie. it simply receives the stream and forwards the multicast packets on out of any relevant interfaces.

The reason you would need either is usually when there are no clients sending joins or there is no downstream router sending a PIM request for the stream but you still want the L3 device to receive the stream. There are reasons why you may want this eg.PIM is being blocked but you still need to forward the stream.

Once again though it is not the norm to need these commands in a multicast environment so you need to understand why they are there before you start removing any.

Jon

Thanks Jon! That is really how I understood the static and join groups also, but what is the significance of the IP address that is assigned to either of the join or static groups? Would that be the multicast address that the client is requesting for a particular application, or possibly the multicast address of the receiver? I believe that we have the static-group in place for our paging system, and it was mentioned that one other system may also require a static-group configuration. I can't see why it would be necessary to have both a static AND join group with the same address...

The IP address is always the address of the multicast stream ie. the multicast address used by the application.

As to why you need both I'm not sure why either but again really difficult to say without knowing the full topology of the network you are working on.

That said it may be as simple as one of the commands didn't work so the other was added and it all started working and it was left like that. It happens often enough :)

I removed the link from my second post which shows examples. What document were you referring to in your original post ?

Jon

It was http://www.cisco.com/c/en/us/support/docs/ip/ip-multicast/119383-technote-ip-multicast-00.html. I found out that it is indeed out paging system, and our Music On Hold that "requires" the static-group. As you stated before, I'm still not sold that they need to be a part of the configuration, since "ip pim sparse-dense-mode" is in place. If anything, I at least feel comfortable taking out the "ip igmp join-group 239.255.255.253" now. I appreciate all of your help!

Craig

Jon Marshall
Hall of Fame
Hall of Fame

Just reread your post and looks like you did see that document.

Jon

Review Cisco Networking for a $25 gift card