Compare and contrast IPv6 address types

IPv6 global unicast address-

IPv6 global addresses are similar to IPv4 public addresses. As the name implies, they are routable on the internet. Currently IANA has assigned only 2000::/3 addresses to the global pool.
A global IPv6 address consists of two parts:

  • subnet ID – 64 bits long. Contains the site prefix (obtained from a Regional Internet Registry) and the subnet ID (subnets within the site).
  • interface ID – 64 bits long. typically composed of a part of the MAC address of the interface.
Here is a graphical representation of the two parts of an global IPv6 address:

global unicast ipv6 address

IPv6 unicast local address-

Unique local IPv6 addresses have the similar function as IPv4 private addresses. They are not allocated by an address registry and are not meant to be routed outside their domain. Unique local IPv6 addresses begin with FD00::/8.

A unique local IPv6 address is constructed by appending a randomly generated 40-bit hexadecimal string to the FD00::/8 prefix. The subnet field and interface ID are created in the same way as with global IPv6 addresses.

A graphical representation of an unique local IPv6 address:

unique local ipv6 address

IPv6 link local address-

Link-local IPv6 addresses have a smaller scope as to how far they can travel: only within a network segment that a host is connected to. Routers will not forward packets destined to a link-local address to other links. A link-local IPv6 address must be assigned to every network interface on which the IPv6 protocol is enabled. A host can automatically derive its own link local IP address or the address can be manually configured.

Link-local addresses have a prefix of FE80::/10. They are mostly used for auto-address configuration and neighbor discovery.

Here is a graphical representation of a link local IPv6 address:
Link local address

IPv6 multicast address-

Multicast addresses in IPv6 are similar to multicast addresses in IPv4. They are used to communicate with dynamic groupings of hosts, for example all routers on the link (one-to-many distribution).

Here is a graphical representation of the IPv6 multicast packet:



IPv6 multicast addresses start with FF00::/8. After the first 8 bits there are 4 bits which represent the flag fields that indicate the nature of specific multicast addresses. Next 4 bits indicate the scope of the IPv6 network for which the multicast traffic is intended. Routers use the scope field to determine whether multicast traffic can be forwarded. The remaining 112 bits of the address make up the multicast Group ID.

Some of the possible scope values are:
1 – interface-local
2 – link-local
4 – admin-local
5 – site-local
8 – organization-local
E – global
For example, the addresses that begin with FF02::/16 are multicast addresses intended to stay on the local link.

The following table lists of some of the most common link local multicast addresses:

commom link local multicast addresses ipv6

Modified EUI-64 -

EUI-64 (Extended Unique Identifier) is a method we can use to automatically configure IPv6 host addresses. An IPv6 device will use the MAC address of its interface to generate a unique 64-bit interface ID. However, a MAC address is 48 bit and the interface ID is 64 bit. What are we going to do with the missing bits?
IPv6 MAC address vs Interface ID

Here’s what we will do to fill the missing bits:
  1. We take the MAC address and split it into two pieces.
  2. We insert “FFFE” in between the two pieces so that we have a 64 bit value.
  3. We invert the 7th bit of the interface ID.
So if my MAC address would be 1234.5678.ABCD then this is what the interface ID will become:
IPv6 EUI-64 FF FE

Auto-configuration -

Stateless Address Auto-configuration (SLAAC) allows for the auto-configuration of an IPv6 address.

This is achieved using ICMPv6 RS and RA messages after generating a Link Local address. Routers respond to a Router Solicitation (RS) message with a Router Advertisement (RA) message advertising the prefix(es) being used. EUI-64 is then use to generate an IPv6 address.

Anycast -

Anycast IPv6 addresses are IPv6 unicast addresses that have been assigned to multiple nodes. IPv6 packets sent to a anycast address are forwarded to the nearest anycast address (as determined by a routing protocol).