IPv4 Multicast
What It Is
IPv4 multicast sends one stream from a source to many receivers without copying the packet for every receiver at the source. Hosts join groups with IGMP, switches constrain flooding with IGMP snooping, and routers build multicast forwarding state with PIM.
Multicast is still used for market data, video distribution, paging, industrial systems, discovery protocols, and some service provider designs. It is also easy to break because it depends on Layer 2, Layer 3, unicast routing, group membership, and source reachability all being correct.
Address Ranges
| Range | Purpose | Notes |
|---|---|---|
| 224.0.0.0/24 | Local network control | Not forwarded by routers |
| 224.0.1.0/24 | Internetwork control | Globally scoped control groups |
| 232.0.0.0/8 | Source-specific multicast | SSM, uses source plus group |
| 233.0.0.0/8 | GLOP addressing | Legacy AS-based allocation |
| 239.0.0.0/8 | Administratively scoped | Private multicast space |
Watch out: 224.0.0.0/24 is link-local control traffic. Do not use it for application streams.
Layer 2 Mapping
IPv4 multicast maps into Ethernet MAC addresses beginning with 01:00:5e. Only 23 bits of the multicast IP address are mapped, so multiple IPv4 multicast groups can map to the same Ethernet multicast MAC.
Design note: IGMP snooping matters because Ethernet multicast is otherwise flooded like broadcast on many switches.
Core Protocols
| Protocol | Role |
|---|---|
| IGMPv2 | Host group joins and leaves for any-source multicast |
| IGMPv3 | Adds source filtering for SSM |
| IGMP snooping | Switch learns which ports need multicast |
| PIM sparse mode | Builds multicast trees only where receivers exist |
| PIM dense mode | Floods then prunes, mostly legacy |
| PIM SSM | Uses source-specific trees, no RP needed |
Modern note: Prefer PIM sparse mode or SSM. Dense mode and sparse-dense mode are mostly legacy troubleshooting topics now.
Trees And State
| State | Meaning | Common Form |
|---|---|---|
(*,G) |
Shared tree for any source to group G | RP-based sparse mode |
(S,G) |
Source tree from source S to group G | SPT or SSM |
| RPF | Reverse path forwarding check | Source must be reachable via expected interface |
| RP | Rendezvous point | Shared-tree meeting point |
| SPT switchover | Receiver path moves from RP tree to source tree | Normal in sparse mode |
Watch out: Multicast follows the reverse of the unicast route to the source or RP. Bad unicast routing creates bad multicast behavior.
Design Choices
| Choice | Recommendation |
|---|---|
| Application model | Use SSM when receivers know the source |
| Group range | Use 239.0.0.0/8 for private enterprise groups |
| RP design | Use Anycast RP or a resilient RP design for ASM |
| Switch behavior | Enable and verify IGMP snooping and querier placement |
| Boundaries | Filter multicast at site and security boundaries |
| TTL | Use TTL deliberately for scope control |
| Wi-Fi | Avoid high-rate multicast unless WLAN design supports it |
Cisco IOS/IOS-XE Examples
PIM sparse mode with a static RP:
ip multicast-routing
!
interface Loopback0
ip address 10.255.0.10 255.255.255.255
ip pim sparse-mode
!
interface GigabitEthernet1/0/1
description Routed multicast link
ip address 10.0.12.1 255.255.255.252
ip pim sparse-mode
!
ip pim rp-address 10.255.0.10 239.0.0.0 255.0.0.0
IGMP access VLAN:
interface Vlan50
description IPTV receivers
ip address 10.50.0.1 255.255.255.0
ip pim sparse-mode
ip igmp version 3
Switch snooping:
ip igmp snooping
ip igmp snooping vlan 50
SSM range:
ip pim ssm range 232.0.0.0 255.0.0.0
Notes:
- Static RP is simple, but not automatically resilient.
- BSR, Auto-RP, and Anycast RP syntax varies by platform and design.
- Use ACLs for group boundaries and source controls where appropriate.
Troubleshooting
| Symptom | Check | Likely Cause |
|---|---|---|
| Receiver sees nothing | IGMP group, VLAN, snooping, PIM state | Receiver join not reaching router |
| Source traffic not forwarded | RPF interface and unicast route to source | RPF failure |
| Works on same VLAN only | PIM neighbor and RP/SSM state | Routed multicast not built |
| Flooding on switch | IGMP snooping, querier, unknown multicast | Switch lacks group membership |
| SSM fails | IGMPv3, source address, SSM range | Receiver did not join (S,G) |
| ASM fails | RP mapping and reachability | No valid RP |
| Intermittent stream | Drops, TTL, duplicate RPs, Wi-Fi airtime | Path or scope instability |
Commands
show ip igmp groups
show ip igmp interface
show ip igmp snooping groups
show ip pim neighbor
show ip pim interface
show ip pim rp mapping
show ip mroute
show ip rpf <source-ip>
ping <group-ip>
Expected clues:
- Receiver VLAN shows IGMP membership for the group.
- PIM neighbors exist on routed multicast links.
show ip mroutehas the expected(*,G)or(S,G)state.- RPF points toward the source or RP as expected.
- Switch snooping table includes the receiver ports.
Watch Out
- Do not skip unicast routing checks. RPF depends on them.
- Do not use multicast link-local control ranges for applications.
- Do not assume Wi-Fi handles multicast like wired Ethernet.
- Do not leave private multicast groups unbounded across WAN or campus edges.
- Do not troubleshoot only on the receiver side. Check source, RP, and RPF.