Many IPv6 multicast addresses are well-known to software implementing IPv6, to simplify common routing needs.
Oct 18th, 2019
Now that we’ve familiarized ourselves with the IPv6 header and the IPv6 address space, let’s take a look at multicast.
IPv6 packets can be sent, depending on the intended purpose, in a variety of ways:
We’re not covering anycast in detail at this moment, but we can — do let us know if that’s something of interest to you!
IPv6 multicast works by nodes* joining multicast groups by sending Multicast Listener Discovery (MLD) report messages.
(*Little terminology from IETF: node is an interface enabled for IPv6. Router is any node that forwards IPv6 packets that are not expressly addressed to it. Host is any node that’s not a router.)
Multicast groups aren’t constrained by local or global (network) geography. Whether the host is on the local network or on the internet, as long as it’s signaling to join a multicast group, it can receive multicast packets sent to that group.
Any host can be a sender, whether it’s part of the multicast group or not. Only hosts part of the multicast group are receivers. Hosts can join or leave multicast groups dynamically at any time.
All IPv6 multicast addresses share the prefix of FF00::/8.
The multicast address ends with the interface ID.
Many IPv6 multicast addresses are well-known to software implementing IPv6, to simplify common routing needs.
ff02::1 | all nodes |
ff02::2 | all routers |
ff02::5 | all OSPF (Open Shortest Path First) routers |
ff02::6 | all OSPF DRs (OSPF Designated Routers) |
ff02::9 | all RIP (Routing Information Protocol) routers |
ff02::a | all EIGRP (Enhanced Interior Gateway Routing Protocol) routers |
ff02::d | all PIM (Protocol Independent Multicast) routers |
ff02::f | UPNP (Universal Plug and Play) devices |
ff02::11 | all homenet nodes |
ff02::12 | VRRP (Virtual Router Redundancy Protocol) |
ff02::16 | all MLDv2-capable routers |
ff02::1a | all RPL (Routing Protocol for Low-Power and Lossy Networks) routers (used in Internet of Things (IoT) devices) |
ff02::fb | multicast DNS IPv6 |
ff02::101 | network time (NTP) |
ff02::1:2 | all DHCP agents |
ff02::1:3 | LLMNR (Link-Local Multicast Name Resolution) |
ff02:0:0:0:0:1:ff00::/104 | solicited node address |
ff02:0:0:0:0:1-2:ff00::/104 | node information query |
ff05::1:3 | all DHCP server (site) |
ff05::101 | all NTP server (site) |
(Did we or did we not promise a veritable smorgasbord of acronyms?)
See our automation video playlist here.
Next time we’ll be taking a look at IPv4-IPv6 tunneling and the particularities of migrating from IPv4 to IPv6.
After that, we have one last post to cover the remaining sections on our cheat-sheet, including useful Linux commands.
As always, do let us know if there’s a particular part of IPv6 (whether covered in here or not) you’d like to know more about!