IPv6

IPv6 Address Types: Link-Local, Global, Unique Local

The six IPv6 address types: global unicast, link-local, ULA, multicast, anycast, and special. Prefixes, scope, when to use which, and design implications.
IPv6 Address Types: Link-Local, Global, Unique Local
Table of Contents
In: IPv6

IPv6 has more address types than IPv4. Where IPv4 has unicast, multicast, and broadcast (gone in IPv6), IPv6 has global unicast, link-local, unique local, multicast, anycast, and a few special addresses. Each has a specific scope and purpose, and getting the types right is foundational to IPv6 design.

This article walks through each address type, when to use which, and the operational implications. If you are designing IPv6 addressing or trying to figure out why show ipv6 interface shows so many addresses on every interface, this is the reference.

The Six Address Types

2000::/3
TypeGlobal Unicast
ScopeGlobally routable
Routable?Yes (internet)
FC00::/7 (FD00::/8 in practice)
TypeUnique Local (ULA)
ScopeSite-local
Routable?Yes (within site)
FE80::/10
TypeLink-Local
ScopeLink-only
Routable?
No (never crosses a router)
FF00::/8
TypeMulticast
ScopeGroup communication
Routable?
Yes (depending on scope)
Same range as global unicast
TypeAnycast
ScopeGlobally routable
Routable?
Yes; multiple hosts share the address
::/128, ::1/128, etc.
TypeSpecial
ScopeVarious
Routable?Various

Global Unicast

Global unicast addresses are the IPv6 equivalent of IPv4 public addresses. They are globally routable and globally unique. The currently allocated range is 2000::/3 (any address starting with 2 or 3 in the first hex digit).

The structure of an enterprise global unicast address:

+- 48 bits global prefix -+- 16 bits subnet -+- 64 bits interface ID -+
| 2001:db8:1234:          | abcd:            | xxxx:xxxx:xxxx:xxxx     |
+-------------------------+------------------+-------------------------+

The 48-bit prefix is what your ISP allocates to you. The 16-bit subnet field gives you 65,536 subnets within that prefix, plenty for any enterprise. The 64-bit interface ID identifies the host on the subnet.

Examples:

2001:db8:abcd:1::1
Global unicast (in the documentation/example range)
2607:f8b0:4006:80f::200e
Global unicast (Google)
2a00:1450:4001::1
Global unicast (Google EU)

2001:db8::/32 is reserved for documentation; never use this on real production networks.

Link-local addresses are the workhorse of IPv6 internal protocols. Every IPv6 interface has one, automatically assigned, and it is required for the interface to function. The prefix is FE80::/10 (in practice always FE80::/64 because the next 54 bits must be zero).

Properties:

  • Always present on every IPv6 interface (required by the protocol)
  • Never crosses a router (link-scoped)
  • Used for Neighbor Discovery, Router Solicitation/Advertisement, OSPFv3 adjacencies, EIGRP for IPv6 sessions, VRRPv3 advertisements
  • Format: FE80:: followed by 64 bits of interface ID (often EUI-64 derived from MAC)
  • Same link-local can theoretically appear on multiple interfaces of the same router (you scope it with %interface-id syntax: fe80::1%Gi0/0/0)

Verify with:

Router# show ipv6 interface GigabitEthernet0/0/0
GigabitEthernet0/0/0 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::21A:2BFF:FE3C:4D5E
  Global unicast address(es):
    2001:DB8:1::1, subnet is 2001:DB8:1::/64

Most routing protocols (OSPFv3, EIGRP for IPv6) form adjacencies over link-local addresses, not global unicast. The benefit: if you renumber the global prefix, the IGP keeps running uninterrupted.

Unique Local Addresses (ULAs)

ULAs are the IPv6 equivalent of IPv4 RFC 1918 private addresses. RFC 4193 defines the format. The prefix is FC00::/7, but in practice you only use FD00::/8 (the L bit is set to 1 to indicate locally-assigned).

The ULA structure includes a 40-bit Global ID that is meant to be pseudo-random:

+- FD -+- 40-bit Global ID --+- 16-bit subnet -+- 64-bit interface ID -+
| FD   | xxxxxxxxxxxxxxxxxx  | abcd            | xxxx:xxxx:xxxx:xxxx    |
+------+---------------------+-----------------+------------------------+

You generate a random Global ID once for your organization (using SHA-1 of the time and MAC, or just using a random generator) and use it across all your sites. The randomness reduces collision risk if two ULA-using networks ever merge.

Use ULAs for:

  • Internal management traffic that should never leak to the internet
  • Communication between hosts that don't need internet reachability
  • Lab environments where global addresses don't make sense
  • IPv6 addressing for networks that have private IPv4 addressing today

Modern IPv6 best practice often skips ULAs entirely - use global unicast everywhere with proper firewalling, since you have abundant addresses. ULAs are a tool for specific use cases, not the default.

Multicast

IPv6 has no broadcast. Functions that used to use broadcast (ARP, etc.) now use multicast. The prefix is FF00::/8.

The multicast address format includes scope bits:

+- FF -+- Flags (4) -+- Scope (4) -+- Group ID (112) -+
| FF   | flgs        | scope       | group identifier  |
+------+-------------+-------------+-------------------+

Common multicast scopes:

Interface-local (loopback)
Scope1
ExampleFF01::1
Link-local
Scope2
ExampleFF02::1 (all nodes)
Admin-local
Scope4
ExampleSite-defined
Site-local
Scope5
Example
FF05::101 (NTP servers)
Organization-local
Scope8
ExampleLarger than site
Global
ScopeE
Example
FF0E:: (internet-scope)

Well-known multicast addresses you see constantly:

FF02::1
All nodes on link
FF02::2
All routers on link
FF02::5
OSPFv3 routers (replaces 224.0.0.5)
FF02::6
OSPFv3 designated routers (replaces 224.0.0.6)
FF02::A
EIGRP for IPv6
FF02::12
VRRPv3
FF02::1:FFXX:XXXX
Solicited-node multicast (used by NDP)

The solicited-node multicast is interesting: each unicast address has a corresponding multicast address derived from the bottom 24 bits. NDP uses this to direct Neighbor Solicitations only to hosts whose interface ID matches, dramatically reducing broadcast-style flooding.

Anycast

Anycast is "one address, multiple hosts." Multiple hosts advertise the same address; the network delivers to whichever is topologically closest. It is technically just a unicast address shared by multiple hosts; nothing in the address format indicates anycast (it is up to the routing layer).

Common uses: DNS root servers (root anycast), CDN edge servers, internal services like NTP across multiple data centers. The "subnet anycast" address (interface ID all zeros within a subnet) is reserved by RFC 4291.

Special Addresses

::/128
Unspecified (used during DAD; no address yet)
::1/128
Loopback
::FFFF:0:0/96
IPv4-mapped (used by dual-stack sockets)
2001:db8::/32
Documentation prefix; never use in production
2002::/16
6to4 tunneling (largely obsolete)
3FFE::/16
Old 6bone experimental; deprecated

Every Interface Has Multiple Addresses

An IPv6-enabled interface typically has:

  1. A link-local address (FE80::xxxx)
  2. One or more global unicast addresses (2xxx:xxxx::xxxx)
  3. Optionally a ULA (FDxx:xxxx::xxxx)
  4. Multicast group memberships (FF02::1 always; FF02::5 if OSPFv3; etc.)
  5. Solicited-node multicast for each unicast address

This is normal IPv6 behavior. Cisco's show ipv6 interface displays them all.

Design Implications

Internet-facing service
Global unicast
Internal client / internal server traffic
Global unicast (with firewall) or ULA
Routing protocol next-hop
Link-local (used automatically by OSPFv3, etc.)
Documentation / examples
Documentation prefix 2001:db8::/32
Lab environments
ULA or documentation prefix
Multi-site enterprise without internet need
ULA
Loopback interface
::1/128 globally; per-router /128 from your global allocation

Summary

IPv6 has six main address types: global unicast, link-local, ULA, multicast, anycast, and special addresses. Every interface gets at least a link-local automatically; you assign global unicast for internet reachability and ULAs for site-internal traffic. Multicast is built into the protocol and used pervasively (NDP, RAs, OSPFv3, etc.).

Master the prefixes (2000::/3 for global, FE80::/10 for link-local, FC00::/7 for ULA, FF00::/8 for multicast) and the rest of IPv6 addressing follows. Bookmark this article alongside the IPv6 cluster pillar.

Written by
More from Ping Labz
IPv6 Header Format Explained
IPv6

IPv6 Header Format Explained

The IPv6 header byte by byte: 40 bytes fixed, 8 fields, extension headers, Next Header chaining, comparison to IPv4, and what it looks like in Wireshark.
IPv6 Configuration on Cisco IOS XE
IPv6

IPv6 Configuration on Cisco IOS XE

IPv6 configuration on Cisco IOS XE: enabling IPv6, static and SLAAC addresses, RA options, OSPFv3, BGP for IPv6, EIGRP for IPv6, VRRPv3, dual-stack, and first-hop security.
IPv4 vs IPv6: The Real Differences
IPv6

IPv4 vs IPv6: The Real Differences

IPv4 vs IPv6 in 2026. Header differences, ARP vs Neighbor Discovery, SLAAC vs DHCP, NAT vs end-to-end, and dual-stack as the migration reality.
Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to Ping Labz.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.