Multicast address

Summary

A multicast address is a logical identifier for a group of hosts in a computer network that are available to process datagrams or frames intended to be multicast for a designated network service. Multicast addressing can be used in the link layer (layer 2 in the OSI model), such as Ethernet multicast, and at the internet layer (layer 3 for OSI) for Internet Protocol Version 4 (IPv4) or Version 6 (IPv6) multicast.

IPv4 edit

IPv4 multicast addresses are defined by the most-significant bit pattern of 1110. This originates from the classful network design of the early Internet when this group of addresses was designated as Class D. The CIDR notation for this group is 224.0.0.0/4.[1] The group includes the addresses from 224.0.0.0 to 239.255.255.255. Address assignments from within this range are specified in RFC 5771, an Internet Engineering Task Force (IETF) Best Current Practice document (BCP 51).

The address range is divided into blocks each assigned a specific purpose or behavior.

IP multicast address range Description Routable
224.0.0.0 to 224.0.0.255 Local subnetwork[2] No
224.0.1.0 to 224.0.1.255 Internetwork control Yes
224.0.2.0 to 224.0.255.255 AD-HOC block 1[3] Yes
224.1.0.0 to 224.1.255.255 Reserved[4][5]
224.3.0.0 to 224.4.255.255 AD-HOC block 2[6] Yes
225.0.0.0 to 231.255.255.255 Reserved[4][5]
232.0.0.0 to 232.255.255.255 Source-specific multicast[2] Yes
233.0.0.0 to 233.251.255.255 GLOP addressing[7] Yes
233.252.0.0 to 233.255.255.255 AD-HOC block 3[8] Yes
234.0.0.0 to 234.255.255.255[citation needed] Unicast-prefix-based Yes
235.0.0.0 to 238.255.255.255 Reserved[4][5]
239.0.0.0 to 239.255.255.255 Administratively scoped[2] Yes
Local subnetwork
Addresses in the range of 224.0.0.0 to 224.0.0.255 are individually assigned by IANA and designated for multicasting on the local subnetwork only. For example, the Routing Information Protocol (RIPv2) uses 224.0.0.9, Open Shortest Path First (OSPF) uses 224.0.0.5 and 224.0.0.6, and Multicast DNS uses 224.0.0.251. Routers must not forward these messages outside the subnet from which they originate.
Internetwork control block
Addresses in the range 224.0.1.0 to 224.0.1.255 are individually assigned by IANA and designated as the internetwork control block. This block of addresses is used for traffic that must be routed through the public Internet, such as for applications of the Network Time Protocol using 224.0.1.1.
AD-HOC block
Addresses in three separate blocks are not individually assigned by IANA. These addresses are globally routed and are used for applications that don't fit either of the previously described purposes.[9]
Source-specific multicast
The 232.0.0.0/8 (IPv4) and ff3x::/32 (IPv6) blocks are reserved for use by source-specific multicast.
GLOP[10]
The 233.0.0.0/8 range was originally assigned by RFC 2770 as an experimental, public statically-assigned multicast address space for publishers and Internet service providers that wished to source content on the Internet. The allocation method is termed GLOP addressing and provides implementers a block of 255 addresses that is determined by their 16-bit autonomous system number (ASN) allocation. In a nutshell, the middle two octets of this block are formed from assigned ASNs, giving any operator assigned an ASN 256 globally unique multicast group addresses.[11] The method is not applicable to the newer 32-bit ASNs. RFC 3180, superseding RFC 2770, envisioned the use of the range for many-to-many multicast applications. Unfortunately, with only 256 multicast addresses available to each autonomous system, GLOP is not adequate for large-scale broadcasters.[citation needed]
Unicast-prefix-based
The 234.0.0.0/8 range is assigned by RFC 6034 as a range of global IPv4 multicast address space provided to each organization that has /24 or larger globally routed unicast address space allocated; one multicast address is reserved per /24 of unicast space. A resulting advantage over GLOP is that the unicast-prefix mechanism resembles the unicast-prefix capabilities of IPv6 as defined in RFC 3306.
Administratively scoped
The 239.0.0.0/8 range is assigned by RFC 2365 for private use within an organization. Per the RFC, packets destined to administratively scoped IPv4 multicast addresses do not cross administratively defined organizational boundaries, and administratively scoped IPv4 multicast addresses are locally assigned and do not have to be globally unique. The RFC also discusses structuring the 239.0.0.0/8 range to be loosely similar to the scoped IPv6 multicast address range described in RFC 1884.
Ethernet-specific
In support of link-local multicasts which do not use IGMP, any IPv4 multicast address that falls within the *.0.0.0/24 and *.128.0.0/24 ranges will be broadcast to all ports on many Ethernet switches, even if IGMP snooping is enabled, so addresses within these ranges should be avoided on Ethernet networks where the functionality of IGMP snooping is desired.[12][dubious ]

Notable IPv4 multicast addresses edit

The following table is a list of notable well-known IPv4 addresses that are reserved for IP multicasting and that are registered with the Internet Assigned Numbers Authority (IANA).[5]

IP multicast address Description Routable
224.0.0.0 Base address (reserved) No
224.0.0.1 The All Hosts multicast group addresses all hosts on the same network segment. No
224.0.0.2 The All Routers multicast group addresses all routers on the same network segment. No
224.0.0.4 This address is used in the Distance Vector Multicast Routing Protocol (DVMRP) to address multicast routers. No
224.0.0.5 The Open Shortest Path First (OSPF) All OSPF Routers address is used to send Hello packets to all OSPF routers on a network segment. No
224.0.0.6 The OSPF All Designated Routers (DR) address is used to send OSPF routing information to designated routers on a network segment. No
224.0.0.9 The Routing Information Protocol (RIP) version 2 group address is used to send routing information to all RIP2-aware routers on a network segment. No
224.0.0.10 The Enhanced Interior Gateway Routing Protocol (EIGRP) group address is used to send routing information to all EIGRP routers on a network segment. No
224.0.0.13 Protocol Independent Multicast (PIM) Version 2 No
224.0.0.18 Virtual Router Redundancy Protocol (VRRP) No
224.0.0.19–21 IS-IS over IP No
224.0.0.22 Internet Group Management Protocol (IGMP) version 3[13] No
224.0.0.102 Hot Standby Router Protocol version 2 (HSRPv2) / Gateway Load Balancing Protocol (GLBP) No
224.0.0.107 Precision Time Protocol (PTP) version 2 peer delay measurement messaging No
224.0.0.251 Multicast DNS (mDNS) address No
224.0.0.252 Link-local Multicast Name Resolution (LLMNR) address No
224.0.0.253 Teredo tunneling client discovery address[14] No
224.0.1.1 Network Time Protocol clients listen on this address for protocol messages when operating in multicast mode. Yes
224.0.1.22 Service Location Protocol version 1 general Yes
224.0.1.35 Service Location Protocol version 1 directory agent Yes
224.0.1.39 The Cisco multicast router AUTO-RP-ANNOUNCE address is used by RP mapping agents to listen for candidate announcements. Yes
224.0.1.40 The Cisco multicast router AUTO-RP-DISCOVERY address is the destination address for messages from the RP mapping agent to discover candidates. Yes
224.0.1.41 H.323 Gatekeeper discovery address Yes
224.0.1.129–132 Precision Time Protocol (PTP) version 1 messages (Sync, Announce, etc.) except peer delay measurement Yes
224.0.1.129 Precision Time Protocol (PTP) version 2 messages (Sync, Announce, etc.) except peer delay measurement Yes
239.255.255.250 Simple Service Discovery Protocol address Yes
239.255.255.253 Service Location Protocol version 2 address Yes

IPv6 edit

Multicast addresses in IPv6 use the prefix ff00::/8. The general format of the IPv6 multicast address is described by RFC 4291:

General multicast address format
Bits 8 4 4 112
Field prefix flags scope group ID
Multicast address flags[15]
Bit[note 1] Flag 0 1
0 (MSB) Reserved (Reserved) (Reserved)
1 R (Rendezvous)[16] Rendezvous point not embedded Rendezvous point embedded
2 P (Prefix)[17] Without prefix information Address based on network prefix
3 (LSB) T (Transient)[18] Well-known multicast address Dynamically assigned multicast address

Based on the value of the flag bits, IPv6 multicast addresses can be Unicast-Prefix-based Multicast Addresses, Source-Specific Multicast Addresses (both types introduced by RFC 3306, updated by RFC 7371), or Embedded RP IPv6 Multicast Addresses (introduced by RFC 3956, updated by RFC 7371). Each of these types of multicast addresses have their own format and follow specific rules.

Similar to a unicast address, the prefix of an IPv6 multicast address specifies its scope, however, the set of possible scopes for a multicast address is different. The 4-bit scope field (bits 12 to 15) is used to indicate where the address is valid and unique.

Multicast address scope
IPv6 address[note 2] IPv4 equivalent[19] Scope[20] Purpose
ffx0::/16, ffxf::/16 Reserved
ffx1::/16 Interface-local Packets with this destination address may not be sent over any network link, but must remain within the current node; this is the multicast equivalent of the unicast loopback address.
ffx2::/16 224.0.0.0/24 Link-local Packets with this destination address may not be routed anywhere.
ffx3::/16 239.255.0.0/16 Realm-Local scope[20] Local multicast particular to a network technology
ffx4::/16 Admin-local The smallest scope that must be administratively configured.
ffx5::/16 Site-local Restricted to the local physical network.
ffx8::/16 239.192.0.0/14 Organization-local Restricted to networks used by the organization administering the local network. (For example, these addresses might be used over VPNs; when packets for this group are routed over the public internet (where these addresses are not valid), they would have to be encapsulated in some other protocol.)
ffxe::/16 224.0.1.0-238.255.255.255 Global scope Eligible to be routed over the public internet.

The service is identified in the group ID field. For example, if ff02::101 refers to all Network Time Protocol (NTP) servers on the local network segment, then ff08::101 refers to all NTP servers in an organization's networks. The group ID field may be further divided for special multicast address types.

Notable IPv6 multicast addresses edit

The following table is a list notable IPv6 multicast addresses that are registered with IANA.[21] To be included in some of the below multicast groups a client must send a Multicast Listener Discovery (MLD), a component of ICMPv6 suite, to join that group.[22] For example, to listen to ff02::1:ff28:9c5a, a client must send a MLD report to the router, containing the multicast address, to indicate that it wants to listen to that group.[23]

Address Description
ff02::1 All nodes on the local network segment
ff02::2 All routers on the local network segment
ff02::5 OSPFv3 All SPF routers
ff02::6 OSPFv3 All DR routers
ff02::8 IS-IS for IPv6 routers
ff02::9 RIP routers
ff02::a EIGRP routers
ff02::d PIM routers
ff02::12 Virtual Router Redundancy Protocol (VRRP) version 3
ff02::16 MLDv2 reports[24]
ff02::1:2 All DHCPv6 servers and relay agents on the local network segment[25]
ff02::1:3 All LLMNR hosts on the local network segment[26]
ff05::1:3 All DHCPv6 servers on the local network site[25]
ff0x::c Simple Service Discovery Protocol
ff0x::fb Multicast DNS
ff0x::101 Network Time Protocol
ff0x::108 Network Information Service
ff0x::181 Precision Time Protocol (PTP) version 2 messages (Sync, Announce, etc.) except peer delay measurement
ff02::6b Precision Time Protocol (PTP) version 2 peer delay measurement messages
ff0x::114 Used for experiments

Ethernet edit

Ethernet frames with a value of 1 in the least-significant bit of the first octet[note 3] of the destination MAC address are treated as multicast frames and are flooded to all points on the network. While frames with ones in all bits of the destination address (FF-FF-FF-FF-FF-FF) are sometimes referred to as broadcasts, Ethernet generally does not distinguish between multicast and broadcast frames. Modern Ethernet controllers filter received packets to reduce CPU load, by looking up the hash of a multicast destination address in a table, initialized by software, which controls whether a multicast packet is dropped or fully received.

The IEEE has allocated the address block 01-80-C2-00-00-00 to 01-80-C2-FF-FF-FF for group addresses for use by standard protocols. Of these, the MAC group addresses in the range of 01-80-C2-00-00-00 to 01-80-C2-00-00-0F are not forwarded by 802.1D-conformant MAC bridges.[27]

Some well known Ethernet multicast addresses[28]
Block Ethernet multicast address Ethertype Usage

01-80-C2[29]
IEEE (802 group)

01-80-C2-00-00-00

Local LAN Segment, stopping at STP-capable switches
SNAP (length) Spanning Tree Protocol (for bridges) IEEE 802.1D
0x88CC Link Layer Discovery Protocol (additional)
01-80-C2-00-00-01 0x8808 Ethernet flow control (pause frame) IEEE 802.3x
01-80-C2-00-00-02 0x8809 "Slow protocols" including Ethernet OAM Protocol (IEEE 802.3ah) and Link Aggregation Control Protocol (LACP)

01-80-C2-00-00-03

Local LAN Segment until next multi-port ("non-TPMR") switch
0x888E Port authentication (IEEE 802.1X EAPOL)
0x88CC Link Layer Discovery Protocol (additional)
01-80-C2-00-00-08 SNAP (length) Spanning Tree Protocol (for provider bridges) IEEE 802.1ad
01-80-C2-00-00-0D 0x88F5 Multiple VLAN Registration Protocol (for provider bridges) IEEE 802.1ad
01-80-C2-00-00-0E Local LAN Link, never crosses another device
0x88CC Link Layer Discovery Protocol (primary)
0x88F7 Precision Time Protocol (PTP) version 2 over Ethernet (802.1AS)
01-80-C2-00-00-21 0x88F5 GARP VLAN Registration Protocol (also known as IEEE 802.1Q GVRP)

Multiple VLAN Registration Protocol (MVRP)

01-80-C2-00-00-30 through
01-80-C2-00-00-3F
0x8902 Ethernet CFM Protocol IEEE 802.1ag

01-1B-19
IEEE (TC9)

01-1B-19-00-00-00 0x88F7 Precision Time Protocol (PTP) version 2 over Ethernet (native layer-2)
for electing the Grandmaster clock and advanced applications, otherwise 01-80-C2-00-00-0E

01-00-5E[30]
ICANN/IANA

01-00-5E-00-00-00 through
01-00-5E-7F-FF-FF
0x0800 IPv4 Multicast (RFC 1112), insert the low 23 bits of the multicast IPv4 address into the Ethernet address[31]

33-33-xx
locally administered

33-33-00-00-00-00 through
33-33-FF-FF-FF-FF
0x86DD IPv6 multicast (RFC 2464): The low 32 bits an Ethernet address for IPv6 multicast traffic are the low 32 bits of the multicast IPv6 address used.[32] For example, IPv6 multicast traffic using the address ff02::d uses the MAC address 33-33-00-00-00-0D, and traffic to ff05::1:3 goes to the MAC address 33-33-00-01-00-03.

01-0C-CD
IEC

01-0C-CD-01-00-00 through
01-0C-CD-01-01-FF
0x88B8 IEC 61850-8-1 GOOSE Type 1/1A
01-0C-CD-02-00-00 through
01-0C-CD-02-01-FF
0x88B9 GSSE (IEC 61850 8-1)
01-0C-CD-04-00-00 through
01-0C-CD-04-01-FF
0x88BA Multicast sampled values (IEC 61850 8-1)

01-00-0C
Cisco Systems

01-00-0C-CC-CC-CC SNAP (length) Cisco Discovery Protocol (CDP), VLAN Trunking Protocol (VTP), Unidirectional Link Detection (UDLD)
01-00-0C-CC-CC-CD SNAP (length) Cisco Shared Spanning Tree Protocol Address[citation needed]

802.11 edit

802.11 wireless networks use the same MAC addresses for multicast as Ethernet.

See also edit

Notes edit

  1. ^ The recommended style for Request for Comments (RFC) documents is "MSB 0" bit numbering.
  2. ^ x is a place holder indicating that the value of the flags field is unimportant in the current discussion.
  3. ^ On Ethernet, the least-significant bit of an octet is the first to be transmitted. A multicast is indicated by the first transmitted bit of the destination address being 1.

References edit

  1. ^ MULTICAST_IP_ADDR. General Electric Digital Solutions. CIMPLICITY 10.0. In network prefix or Classless Inter-Domain Routing ( CIDR) notation, IP multicast addresses are summarized as 224.0.0.0/4.
  2. ^ a b c IP Multicast Routing Configuration Guide, Cisco, retrieved 2021-01-13
  3. ^ AD-HOC Block 1
  4. ^ a b c IANA Guidelines for IPv4 Multicast Address Assignments. sec. 3. doi:10.17487/RFC5771. RFC 5771.
  5. ^ a b c d "IANA IP multicast addresses assignments". Internet Assigned Numbers Authority.
  6. ^ AD-HOC Block 2
  7. ^ Fall, K.R. and Stevens, W.R. (2011). TCP/IP Illustrated. Vol. 1. Addison-Wesley. p. 55. ISBN 9780321336316.{{cite book}}: CS1 maint: multiple names: authors list (link)
  8. ^ AD-HOC Block 3
  9. ^ RFC 5771 Section 6.
  10. ^ Joseph, Vinod; Mugulu, Srinivas (2011). Deploying Next Generation Multicast-Enabled Applications - Label Switched Multicast for MPLS, VPN, VPLS, and Wholesale Ethernet. Morgan Kaufmann/Elsevier. p. 7. ISBN 978-0-12-384923-6. Lacking anything better to call it, one of the authors [of RFC2770], David Meyer, simply began refer to this as "GLOP" addressing and the name stuck.
  11. ^ "Frequently Asked Questions (FAQ) File for Multicasting". Multicast Tech. Archived from the original on 2011-05-16.
  12. ^ "Guidelines for Enterprise IP Multicast Address Allocation" (PDF). Cisco. p. 7. Retrieved 2023-01-14. most Layer 2 switches flood all multicast traffic that falls within the MAC address range of 0x0100.5E00.00xx [...] to all ports on the switch even if IGMP Snooping is enabled. [...] There are several multicast group ranges besides the 224.0.0.0/24 that will map to the 0x0100.5E00.00xx MAC address range and hence also will be flooded by most Layer 2 switches.
  13. ^ RFC 3376 Section 4.2.14
  14. ^ RFC 4380 item 2.17
  15. ^ Silvia Hagen (May 2006). IPv6 Essentials (Second ed.). O'Reilly. ISBN 978-0-596-10058-2.
  16. ^ RFC 3956
  17. ^ RFC 3306
  18. ^ R. Hinden; S. Deering (February 2006). IP Version 6 Addressing Architecture. Network Working Group. doi:10.17487/RFC4291. RFC 4291. Draft Standard. Obsoletes RFC 3513. Updated by RFC 5952, 6052, 7136, 7346, 7371 and 8064.
  19. ^ RFC 2365 section 8.
  20. ^ a b R. Droms (August 2014). IPv6 Multicast Address Scopes. Internet Engineering Task Force. doi:10.17487/RFC7346. ISSN 2070-1721. RFC 7346. Proposed Standard. Updates RFC 4007 and 4291.
  21. ^ "IPv6 Multicast Address Space Registry". Internet Assigned Numbers Authority.
  22. ^ RFC 5110
  23. ^ RFC 2710
  24. ^ R. Vida; L. Costa, eds. (June 2004). Multicast Listener Discovery Version 2 (MLDv2) for IPv6. Network Working Group. doi:10.17487/RFC3810. RFC 3810. Proposed Standard. Updates RFC 2710. Updated by RFC 4604.
  25. ^ a b T. Mrugalski; M. Siodelski; B. Volz; A. Yourtchenko; M. Richardson; S. Jiang; T. Lemon; T. Winters (November 2018). Dynamic Host Configuration Protocol for IPv6 (DHCPv6). IETF. doi:10.17487/RFC8415. ISSN 2070-1721. RFC 8415. Proposed Standard. Obsoletes RFC 3315, 3633, 3736, 4242, 7083, 7283 and 7550.
  26. ^ B. Aboba; D. Thaler; L. Esibov (January 2007). Link-Local Multicast Name Resolution (LLMNR). Network Working Group. doi:10.17487/RFC4795. RFC 4795. Informational.
  27. ^ IEEE. "Standard Group MAC Address: A Tutorial Guide" (PDF). IEEE Standards Association. pp. 2–3. Archived (PDF) from the original on 2022-10-09.
  28. ^ Patton, Michael A. et. al.. "Multicast (including Broadcast) Addresses". cavebear.com. Karl Auerbach. {{cite web}}: External link in |author= (help)
  29. ^ "Standard Group MAC Address - Public Listing". IEEE-SA. Retrieved 30 November 2022.
  30. ^ "IANA Multicast 48-bit MAC Addresses". IANA. Retrieved 31 January 2021.
  31. ^ RFC 7042 2.1.1
  32. ^ RFC 7042 2.3.1