skip to content

What are the three IPv6 address types, how is a packet sent to each one delivered, and why is there no broadcast?

level: juniorimportance: must knowfreq 58%

answer

  1. count the receivers per type
  2. the leading ff byte
  3. one type borrows unicast syntax
  4. ff02::1 does broadcast's old job

basics

~20 s

IPv6 has unicast (delivered to one interface), multicast (delivered to every member of a group, ff00::/8) and anycast (delivered to the nearest of a set, using unicast-format addresses). Broadcast was dropped; scoped multicast groups such as all-nodes ff02::1 replace it.

solid answer

~40 s

RFC 4291 defines three types. A **unicast** address identifies one interface: global unicast, link-local `fe80::/10` and the loopback `::1` are all unicast, differing in how far they are valid. A **multicast** address (`ff00::/8`) identifies a group, and a packet is delivered to every member. An **anycast** address is a unicast-format address assigned to several interfaces, and routing delivers each packet to the nearest one. There is **no broadcast**: its function is "superseded by multicast addresses". Work IPv4 does with a broadcast goes to a narrower group instead: all-nodes `ff02::1` when every node really must hear it, all-routers `ff02::2`, or a solicited-node group for address resolution. Hosts with no interest in a packet can discard it in the network card.

go deeper

for a junior

Recall the three types and who receives each: one interface, every group member, the nearest of a set. Say plainly that IPv6 has no broadcast and that ff02::1 is a multicast group.

for a middle

Explain why multicast replaces broadcast: traffic goes to the narrowest group that needs it, so uninterested hosts filter it in the network card. Name the unicast kinds, including the mandatory link-local address and ::1.

for a senior

Show the operational consequences: link-local traffic never crosses a router, ff02::1 still reaches every node, and a switch without MLD snooping floods multicast, so the saving moves to receiver filtering.

for a principal

Weigh what the type model buys a network design: scoped groups keep link chatter predictable, anycast gives service locality without a new address format, and both rely on routing and snooping behaving as specified.

## Three types, sorted by who receives the packet RFC 4291, the IPv6 addressing architecture, defines exactly three address types and classifies them by **delivery**: how many interfaces receive a packet sent to the address. | Type | Who receives the packet | How you recognise it | Examples | |---|---|---|---| | **Unicast** | the one interface the address identifies | any address outside `ff00::/8` (other than `::`) | `2001:db8:0:7::10`, `fe80::1c4b:72e9:a05d:3f18`, `::1` | | **Multicast** | every interface that has joined the group | the first byte is `ff` | `ff02::1`, `ff02::2`, `ff02::1:ff6a:31b7` | | **Anycast** | one interface of a set, the nearest by the routing protocols' measure of distance | it cannot be recognised: it uses unicast formats | the Subnet-Router anycast address `2001:db8:0:7::` of the link `2001:db8:0:7::/64` | Addresses are assigned to **interfaces**, not nodes, and one interface normally holds several addresses of different types at once. ## Unicast: one interface, several reaches - **Global unicast**: routable across the internet; the everyday address of a server or a laptop. - **Link-local** (`fe80::/10`): every interface is *required* to have one, even when a global address is also present. It is valid only on its own link, and RFC 4291 says routers must not forward any packet with a link-local source or destination to another link. - **Loopback** (`::1`): used by a node to send to itself. It must not be assigned to any physical interface, it is treated as link-local scope, it must never be sent outside the node, and a packet arriving on an interface with destination `::1` must be dropped. - **Unspecified** (`::`): not the address of anything; it marks the absence of one. A node that has no address yet may use it as a source, it must never be a destination, and a router never forwards a packet whose source is `::`. How a prefix such as `fe80::/10` is written and compressed is a notation question; what matters here is each address's delivery role. ## Multicast: one packet, a group of receivers A multicast address names a **group**. An interface may belong to any number of groups, and it joins one with Multicast Listener Discovery (MLD; version 2 is RFC 3810), so routers, and switches that snoop MLD (RFC 4541), know where the members are. - A multicast address **must not** be used as a packet's source. - On Ethernet, RFC 2464 maps a group to a MAC address of `33:33` followed by the group's last four octets, so a network card can discard frames for groups its host has not joined. - Some groups are predefined: **all-nodes** `ff02::1`, **all-routers** `ff02::2`, and one **solicited-node** group for each address a node holds. ## Why there is no broadcast RFC 4291 states it in one line: there are no broadcast addresses in IPv6, "their function being superseded by multicast addresses." The reasoning: 1. An IPv4 broadcast, such as an ARP request, is delivered to every host on the segment, and every host's network stack must examine it, even though only one host cares. 2. IPv6 sorts the same traffic into **narrower groups**. Address resolution goes to a solicited-node group that, in practice, only the target has joined. A Router Solicitation goes to all-routers, a group hosts do not join. 3. When every node genuinely must hear something, such as an unsolicited Router Advertisement, IPv6 still has `ff02::1`. Every node listens to it permanently, without sending MLD reports, and a snooping switch forwards it on all ports. So "no broadcast" does not mean "no way to reach everyone": reaching everyone is one named group among many, used only where it is needed. On a switch that does not snoop MLD, multicast frames are flooded much as broadcasts are; the saving then comes from each receiving card filtering on the `33:33` MAC address instead of passing every frame up to its IP stack. ## Anycast in brief An anycast address is a unicast-format address assigned to more than one interface. The holders must be explicitly configured to know it is anycast, Duplicate Address Detection is never run on it (RFC 4862), and routing delivers each packet to one holder. RFC 4291 predefines one: the **Subnet-Router anycast** address, the subnet prefix with an all-zero interface identifier, which every router must support for the subnets it is attached to. ## Common confusions - "`ff02::1` is IPv6's broadcast address": it plays broadcast's old role, but it is an ordinary multicast group, scoped to one link. - "Anycast has its own prefix": it does not, which is precisely why a sender cannot tell an anycast address from a unicast one. - "Link-local is a fallback for when nothing else works": it is mandatory and sits beside the global addresses all the time.

  • If anycast addresses look like unicast ones, how does a sender know it is talking to an anycast address?
    Usually it does not. RFC 4291 makes anycast addresses syntactically indistinguishable from unicast; only the nodes holding the address must be configured to know it is anycast. The sender addresses an ordinary-looking packet and routing picks the nearest holder. RFC 4861 says as much: senders generally do not know an anycast address is in use.
  • Does a packet to ff02::1 reach every node on a switched link, and does each node process it?
    Yes. All-nodes is the one group every IPv6 node listens to permanently, without MLD reports, so a snooping switch forwards it on all ports (RFC 4541) and every node processes it. That is why IPv6 reserves it for traffic everyone genuinely needs, such as unsolicited Router Advertisements, and sends everything else to narrower groups.

Unicast is a letter to one flat; multicast is a newsletter delivered to every subscriber and nobody else; anycast is a nationwide help-line number answered by whichever call centre the phone network routes you to, usually the closest. IPv6 stopped pushing leaflets through every door (broadcast) and sends newsletters instead.

saying these in an interview costs you the question

  • IPv6 broadcast is the all-ones host part of the subnet, as in IPv4.
  • Anycast addresses come from their own reserved prefix, like multicast does.
  • Link-local addresses exist only when no router or global address is present.
  • The loopback address ::1 can be assigned to a physical interface like any other.
  • A host may use a multicast group address as the source of its reply.