IPv6 Addressing – Types & Structure

1. Why IPv6? The Case for a New Addressing Scheme

IPv4 uses 32-bit addresses, providing approximately 4.3 billion unique addresses. With the explosion of internet-connected devices — smartphones, IoT sensors, smart appliances, vehicles — the IPv4 address space was effectively exhausted by the early 2010s. Techniques such as NAT (Network Address Translation) extended IPv4's life but introduced complexity, broke end-to-end connectivity, and created difficulties for certain protocols and applications.

IPv6 uses 128-bit addresses, providing 2128 ≈ 3.4 × 1038 unique addresses — enough to assign billions of addresses to every person on Earth. Beyond sheer quantity, IPv6 also simplifies addressing, eliminates the need for NAT in most scenarios, and introduces features such as stateless address autoconfiguration (SLAAC), mandatory IPsec support in the original design, and built-in multicast that replaces IPv4 broadcast.

Feature IPv4 IPv6
Address length 32 bits 128 bits
Address count ~4.3 billion ~3.4 × 1038
Notation Dotted decimal (192.168.1.1). See IPv4 Address Structure. Colon-hexadecimal (2001:db8::1)
Broadcast Yes (255.255.255.255 and subnet broadcast) No — replaced by multicast and anycast
NAT required Typically yes (due to address exhaustion) No — every device can have a globally unique address
Address configuration Manual, DHCP Manual, DHCPv6, or SLAAC (stateless autoconfiguration)
Header size 20–60 bytes (variable — options allowed) 40 bytes fixed (extension headers used for options)
Fragmentation Routers and hosts Hosts only — routers do not fragment IPv6 packets

Related pages: IPv6 Overview | Link-Local vs Global Unicast | IPv6 Neighbor Discovery | SLAAC | IPv4 Address Structure | IP Address Classes | NAT & PAT | IPv6 Basic Configuration Lab | DHCPv6 & SLAAC Lab

2. IPv6 Address Structure

An IPv6 address is 128 bits long, written as eight groups of four hexadecimal digits separated by colons. Each group represents 16 bits (one hextet, also called a quartet or 16-bit block).

  Full IPv6 address representation:

  2001:0DB8:0000:0001:0000:0000:0000:0001

  ◄────────────────── 128 bits ──────────────────►
  2001 : 0DB8 : 0000 : 0001 : 0000 : 0000 : 0000 : 0001
  ├──┤   ├──┤   ├──┤   ├──┤   ├──┤   ├──┤   ├──┤   ├──┤
  16b    16b    16b    16b    16b    16b    16b    16b
  = 8 groups × 16 bits = 128 bits total

  Each hexadecimal digit = 4 bits
  Each group (hextet) = 4 hex digits = 16 bits
  Full address = 32 hex digits (when written without colons)

  Prefix and Interface ID portions:
  ◄────────── Prefix (network) ──────────►◄──── Interface ID (host) ────►
  2001:0DB8:0000:0001  :  0000:0000:0000:0001
  ◄──────── /64 network prefix ──────────►◄──────── 64-bit host ─────────►
  (most common split for routed IPv6 networks)

Hexadecimal Refresher

  Hex digits: 0 1 2 3 4 5 6 7 8 9 A B C D E F
  Decimal:    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

  Each hextet examples:
  0000 = 0000 0000 0000 0000 in binary = decimal 0
  FFFF = 1111 1111 1111 1111 in binary = decimal 65535
  2001 = 0010 0000 0000 0001 in binary = decimal 8193

  IPv6 addresses are case-insensitive:
  2001:DB8::1  =  2001:db8::1  (both valid and equivalent)

3. IPv6 Address Abbreviation Rules

Full 128-bit IPv6 addresses are long and tedious to write. Two abbreviation rules are defined in RFC 5952 to shorten them.

Rule 1 — Omit Leading Zeros Within Each Hextet

  Each group of four hex digits may have its leading zeros removed:

  Full:       2001 : 0DB8 : 0000 : 0001 : 0000 : 0000 : 0000 : 0001
  Rule 1:     2001 : DB8  : 0    : 1    : 0    : 0    : 0    : 1

  Examples of leading-zero removal:
  0DB8  →  DB8    (drop the leading 0)
  0000  →  0      (all zeros becomes single 0)
  00A1  →  A1     (drop both leading zeros)
  0001  →  1      (drop three leading zeros)

  Note: trailing zeros cannot be removed — only LEADING zeros within a group.
  0010  →  10     (correct — leading zeros dropped)
  0100  →  100    (correct — only the one leading zero dropped)
  1000  →  1000   (no leading zeros to drop)

Rule 2 — Replace One Consecutive Group of All-Zero Hextets with ::

  A single continuous sequence of all-zero hextets may be replaced with ::
  (double colon). This can only be done ONCE per address.

  After Rule 1:  2001:DB8:0:1:0:0:0:1
  After Rule 2:  2001:DB8:0:1::1
                           └─────┘ three consecutive zero hextets → ::

  More examples:

  Full:    FE80:0000:0000:0000:0211:22FF:FE33:4455
  Rule 1:  FE80:0:0:0:211:22FF:FE33:4455
  Rule 2:  FE80::211:22FF:FE33:4455

  Full:    0000:0000:0000:0000:0000:0000:0000:0001
  Rule 1:  0:0:0:0:0:0:0:1
  Rule 2:  ::1                                      ← loopback address

  Full:    0000:0000:0000:0000:0000:0000:0000:0000
  Rule 2:  ::                                       ← unspecified address

  WRONG (:: used twice — ambiguous):
  2001:DB8::1:0:0::2   ← INVALID — impossible to tell how many zeros each :: represents

Expanding an Abbreviated Address

  Expand 2001:DB8::1 back to full form:

  Step 1 — Count existing hextets: 2001, DB8, 1 = 3 hextets written
  Step 2 — Total hextets needed: 8
  Step 3 — Missing hextets: 8 − 3 = 5 → :: represents five groups of 0000

  Expanded: 2001:0DB8:0000:0000:0000:0000:0000:0001

  Expand FE80::211:22FF:FE33:4455:
  Hextets written: FE80, 211, 22FF, FE33, 4455 = 5
  Missing: 8 − 5 = 3 → :: = 0000:0000:0000
  Expanded: FE80:0000:0000:0000:0211:22FF:FE33:4455
CCNA exam tip: Expanding abbreviated IPv6 addresses is a frequently tested skill. Practice both directions — abbreviating a full address and expanding a shortened one. Remember: :: can appear only once, and it always represents the largest consecutive run of all-zero hextets (RFC 5952 prefers this to resolve ambiguity when multiple equal-length zero runs exist).

4. IPv6 Prefix Notation

Like IPv4 CIDR notation (see Subnetting & VLSM), IPv6 uses a prefix length expressed as a slash followed by the number of bits in the network portion. There are no subnet masks in IPv6 — the prefix length is always used.

  IPv6 prefix notation:

  2001:DB8:ACAD:1::/64

  ◄──────── Network prefix ────────►◄───── Interface ID ─────►
  2001:0DB8:ACAD:0001 : 0000:0000:0000:0000
  ◄──────────── 64 bits ────────────►◄──────── 64 bits ────────►

  The /64 means: first 64 bits identify the network,
                 last 64 bits identify the interface (host)

  Common IPv6 prefix lengths:
  /128  → single host route (one specific IPv6 address)
  /64   → standard LAN prefix (most common — enables EUI-64 and SLAAC)
  /48   → typical prefix assigned to a site by an ISP
  /32   → typical prefix assigned to an ISP by a Regional Internet Registry
  /16   → very large allocation
  /0    → default route (matches all IPv6 destinations) → ::/0
Prefix Prefix Length Use
::/0 /0 Default route — matches all IPv6 addresses. See Static Routing Configuration.
::1/128 /128 Loopback address. Test with ping ::1.
2001:DB8::/32 /32 Documentation / example addresses (RFC 3849) — not routable
2001::/32 /32 Teredo tunnelling (IPv6 over IPv4 UDP)
FC00::/7 /7 Unique local addresses (FC00::/8 and FD00::/8)
FE80::/10 /10 Link-local unicast addresses. See Link-Local vs Global Unicast.
FF00::/8 /8 Multicast addresses
2000::/3 /3 Global unicast addresses (all addresses starting with 001 in binary)

5. Global Unicast Addresses (GUA)

Global Unicast Addresses (GUAs) are the IPv6 equivalent of public IPv4 addresses — they are globally routable on the Internet. Every GUA is unique across the entire Internet. Currently assigned GUAs begin with binary 001, which means they fall in the range 2000::/3 through 3FFF::/3. In practice, most GUAs in use today start with 2001:. See IPv6 Basic Configuration Lab for hands-on configuration.

  Global Unicast Address structure (typical /48 site, /64 LAN prefix):

  ◄── Global Routing Prefix ──►◄─ Subnet ID ─►◄──── Interface ID ────►
  |     48 bits                |   16 bits     |       64 bits         |
  | Assigned by ISP / RIR      | Chosen by     | Assigned to interface |
  | Identifies the site        | site admin    | (manual or EUI-64)    |

  Example: 2001:0DB8:ACAD:0001:0000:0000:0000:0001/64

  2001:0DB8:ACAD   = Global Routing Prefix (48 bits, assigned by ISP)
  0001             = Subnet ID (16 bits, chosen by admin)
  0000:0000:0000:0001 = Interface ID (64 bits)

  Abbreviated: 2001:DB8:ACAD:1::1/64

  The 16-bit Subnet ID allows for 65,536 subnets per /48 site allocation.
  The 64-bit Interface ID allows for 2^64 hosts per subnet.
Component Bits Description
Global Routing Prefix 48 Assigned by ISP or Regional Internet Registry (RIR) — identifies the organisation's site globally
Subnet ID 16 Chosen by the organisation's network administrator — used to create up to 65,536 internal subnets within the site. See Subnetting & VLSM.
Interface ID 64 Identifies the specific interface within the subnet — manually assigned or auto-generated via EUI-64 or SLAAC
Documentation prefix: The prefix 2001:DB8::/32 (RFC 3849) is reserved for use in documentation, examples, and textbooks — it is never routed on the real Internet. You will see it extensively in CCNA materials, including this page.

6. Link-Local Addresses

Link-local addresses are mandatory on every IPv6-enabled interface. They are automatically generated when IPv6 is enabled and are only valid on the local link — they are never routed beyond the directly connected network segment. Every IPv6 router and host has at least one link-local address per interface, even if no global unicast address is configured.

  Link-local address range:  FE80::/10

  FE80::/10 means: the first 10 bits must be  1111 1110 10
  In practice, Cisco IOS always generates addresses in FE80::/64
  (the remaining 54 bits of the prefix are set to zero)

  Typical link-local address:
  FE80::1          (manually configured, often on router loopback)
  FE80::211:22FF:FE33:4455   (auto-generated from MAC address via EUI-64)

  Structure:
  ◄── Fixed prefix ──►◄─── Typically all zeros ───►◄── Interface ID ──►
  FE80:0000:0000:0000 :  xxxx:xxxx:xxxx:xxxx
  ◄───────── 64 bits ──────────►◄──── 64 bits ─────►

Key Characteristics of Link-Local Addresses

Characteristic Detail
Prefix FE80::/10 — all link-local addresses begin with FE80 through FEBF (though FE80::/64 is by far the most common)
Scope Local link only — a router will never forward a packet with a link-local source or destination address
Mandatory Every IPv6-enabled interface must have a link-local address — it is generated automatically when ipv6 enable or ipv6 address is configured
Uses Neighbor Discovery Protocol (NDP), Router Advertisements (RA), routing protocol next-hops (OSPFv3, EIGRPv6 use link-local as next-hop), default gateway for SLAAC hosts
Uniqueness Must be unique only on the local link — the same link-local address can appear on interfaces in different networks
Manual assignment Can be manually set for simplicity: ipv6 address FE80::1 link-local
  Configuring a link-local address on a Cisco router interface:

  Router(config)# interface gigabitEthernet 0/0
  Router(config-if)# ipv6 address FE80::1 link-local

  ! Or enable IPv6 and let the router auto-generate a link-local from MAC:
  Router(config-if)# ipv6 enable

  ! Verify:
  Router# show ipv6 interface gigabitEthernet 0/0
  GigabitEthernet0/0 is up, line protocol is up
    IPv6 is enabled, link-local address is FE80::1

See: Link-Local vs Global Unicast | IPv6 Neighbor Discovery | show ipv6 interface

7. Unique Local Addresses (ULA)

Unique Local Addresses (ULAs) are the IPv6 equivalent of IPv4 private addresses (RFC 1918 — 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 — see IPv4 Address Structure). They are routable within a private network or organisation but are not routable on the global Internet.

  Unique Local Address range:  FC00::/7

  This covers:
  FC00::/8  →  L bit = 0  (defined but not used in practice)
  FD00::/8  →  L bit = 1  (the range actually used — locally assigned)

  Structure of a ULA (FD00::/8):
  ◄──────── 8 bits ────────►◄── 40 bits ──►◄─ 16 bits ─►◄── 64 bits ──►
  FD              Global ID (random)  Subnet ID    Interface ID

  FD              = 1111 1101 = indicates locally assigned ULA
  Global ID       = 40 pseudo-random bits — makes the prefix globally unique
                    with very high probability (should be randomly generated)
  Subnet ID       = 16 bits — internal subnetting
  Interface ID    = 64 bits — identifies the host

  Example ULA:  FD00:1234:5678:0001::1/64
  FD            = locally assigned
  00:1234:5678  = 40-bit random global ID
  0001          = subnet 1
  ::1           = interface ID 1
Feature Unique Local (ULA) IPv4 Private (RFC 1918)
Prefix FC00::/7 (FD00::/8 in practice) 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16
Internet routable No No
Globally unique Very likely (due to random 40-bit Global ID) No — same private ranges used everywhere
NAT required for Internet Typically yes (if Internet access needed) Yes
Use case Private internal networks, merged organisations, always-available internal addressing Private internal networks

8. Multicast Addresses

IPv6 has no broadcast. The functions that IPv4 handled with broadcast (ARP, router discovery, DHCP discovery) are performed in IPv6 using multicast. A multicast packet is sent once and delivered to all members of the multicast group — but only to those members, not to everyone on the network.

  Multicast address range:  FF00::/8
  All IPv6 multicast addresses begin with  FF  (1111 1111)

  Multicast address structure:
  ◄── 8 bits ──►◄─ 4 bits ─►◄─ 4 bits ─►◄──────── 112 bits ────────►
  FF             Flags        Scope        Group ID

  Flags: 0000 = well-known (permanent) multicast group
         0001 = temporary / dynamically assigned

  Scope values:
  1  = Interface-local (loopback — same interface only)
  2  = Link-local      (same link — not forwarded by routers)
  5  = Site-local      (entire site — forwarded within site)
  8  = Organisation-local
  E  = Global          (Internet-wide multicast)

Well-Known IPv6 Multicast Groups

Address Scope Group IPv4 Equivalent
FF02::1 Link-local All nodes — every IPv6 device on the link 255.255.255.255 (limited broadcast)
FF02::2 Link-local All routers — every IPv6 router on the link. Used by SLAAC Router Solicitation. 224.0.0.2 (all routers)
FF02::5 Link-local All OSPFv3 routers 224.0.0.5
FF02::6 Link-local All OSPFv3 DR/BDR routers 224.0.0.6
FF02::9 Link-local All RIPng routers 224.0.0.9
FF02::A Link-local All EIGRPv6 routers 224.0.0.10
FF02::1:2 Link-local All DHCPv6 relay agents and servers. See DHCPv6 & SLAAC Lab. N/A
FF05::1:3 Site-local All DHCPv6 servers N/A
FF02::1:FF00:0/104 Link-local Solicited-node multicast (see Section 9) N/A

Multicast MAC Address Mapping

  IPv6 multicast addresses map to Ethernet multicast MAC addresses:

  Formula: 33:33: followed by the last 32 bits of the IPv6 multicast address

  Examples:
  FF02::1          → 33:33:00:00:00:01
  FF02::2          → 33:33:00:00:00:02
  FF02::1:FF12:3456 → 33:33:FF:12:34:56  ← solicited-node multicast

  Network interfaces subscribe to these multicast MAC addresses,
  so they accept the relevant multicast frames at Layer 2.

9. Solicited-Node Multicast Address

The solicited-node multicast address is a special link-local multicast address automatically derived from a unicast or anycast address. It is used by the Neighbor Discovery Protocol (NDP) to resolve IPv6 addresses to MAC addresses — replacing the IPv4 ARP broadcast mechanism with a more efficient targeted multicast.

  Solicited-node multicast address construction:

  Prefix:  FF02:0000:0000:0000:0000:0001:FF00::/104  (104-bit fixed prefix)
  + last 24 bits of the corresponding unicast IPv6 address

  Example:
  Unicast address:  2001:DB8::211:22FF:FE33:4455
  Last 24 bits:                              33:44:55

  Solicited-node multicast:  FF02::1:FF33:4455

  Step by step:
  Full prefix:   FF02:0000:0000:0000:0000:0001:FF00:0000
  Add last 24b:                                   33:4455
  Result:        FF02:0000:0000:0000:0000:0001:FF33:4455
  Abbreviated:   FF02::1:FF33:4455

  Why is this more efficient than ARP broadcast?
  IPv4 ARP:  sends a broadcast → EVERY host on the subnet processes it
  IPv6 NDP:  sends to solicited-node multicast → only the host(s) whose
             address ends in :33:4455 process it (almost always just one host)
             → dramatically reduces unnecessary interruptions to other hosts
Every IPv6 interface automatically joins the solicited-node multicast group corresponding to each of its unicast and anycast addresses. When a device wants to find the MAC address of a neighbour, it sends a Neighbor Solicitation to the target's solicited-node multicast address rather than broadcasting to all hosts. This replaces IPv4's ARP broadcast. See: IPv6 Neighbor Discovery

10. EUI-64 Interface ID Generation

EUI-64 (Extended Unique Identifier — 64-bit) is a method for automatically generating the 64-bit Interface ID portion of an IPv6 address from a device's 48-bit MAC address. It is used by both SLAAC (stateless address autoconfiguration) and the router's automatic link-local address generation.

EUI-64 Process — Step by Step

  MAC address of the interface:  00:11:22:33:44:55

  Step 1 — Split the MAC in half (split after the 3rd octet):
  OUI (first 3 octets):  00:11:22
  Device ID (last 3):          33:44:55

  Step 2 — Insert FFFE in the middle:
  00:11:22 : FF:FE : 33:44:55
  → 0011:22FF:FE33:4455

  Step 3 — Flip the 7th bit (Universal/Local bit) of the first byte:
  First byte: 00 = 0000 0000
  7th bit (from left, 0-indexed) = bit position 1 from the right of the first byte
  More precisely: the U/L bit is bit 6 of the first octet (counting from bit 7 on left)

  00 in binary = 0000 0000
  Flip bit 6:   0000 0010 = 02

  Result:  02:11:22:FF:FE:33:44:55  →  0211:22FF:FE33:4455

  Final EUI-64 Interface ID:  0211:22FF:FE33:4455

  Applied to a /64 network prefix 2001:DB8:ACAD:1::/64:
  Full IPv6 address:  2001:DB8:ACAD:1:0211:22FF:FE33:4455/64

The Universal/Local (U/L) Bit

  The 7th bit of the first octet of the MAC address is the Universal/Local bit:
  U/L = 0 → universally administered (MAC assigned by IEEE to manufacturer)
  U/L = 1 → locally administered (MAC manually assigned or randomised)

  In EUI-64, this bit is FLIPPED:
  - A universally administered MAC (U/L = 0) becomes U/L = 1 in the Interface ID
  - This signals that the EUI-64 Interface ID is derived from a universal MAC address

  Practical effect on common MAC addresses:
  00:xx:xx... → first octet 00 = 0000 0000 → flip bit 6 → 0000 0010 = 02
  50:xx:xx... → first octet 50 = 0101 0000 → flip bit 6 → 0101 0010 = 52
  C8:xx:xx... → first octet C8 = 1100 1000 → flip bit 6 → 1100 1010 = CA

  Note: Many modern operating systems use PRIVACY EXTENSIONS (RFC 4941)
  to generate random interface IDs instead of EUI-64, to prevent
  device tracking across networks.

Configuring EUI-64 on a Cisco Router Interface

  ! Assign an IPv6 address using EUI-64 for the Interface ID:
  Router(config)# interface gigabitEthernet 0/0
  Router(config-if)# ipv6 address 2001:DB8:ACAD:1::/64 eui-64

  ! The router generates the Interface ID automatically from the interface MAC.
  ! Verify the resulting full address:
  Router# show ipv6 interface gigabitEthernet 0/0
  GigabitEthernet0/0 is up, line protocol is up
    IPv6 is enabled, link-local address is FE80::0211:22FF:FE33:4455
    Global unicast address(es):
      2001:DB8:ACAD:1:211:22FF:FE33:4455, subnet is 2001:DB8:ACAD:1::/64 [EUI]

See: SLAAC – Stateless Address Autoconfiguration | show ipv6 interface | IPv6 Basic Configuration Lab

11. Anycast Addresses

An anycast address is assigned to multiple interfaces (typically on multiple devices). A packet sent to an anycast address is delivered to the topologically nearest interface that holds that address — as determined by the routing protocol. Anycast provides a form of geographic or topological load distribution and redundancy without requiring the sender to know which specific device responds.

  Anycast concept:

  Three DNS servers in different cities all configured with anycast address X:
  [Server-London]  ← configured with  2001:DB8::CAFE:1
  [Server-Tokyo]   ← configured with  2001:DB8::CAFE:1  (same address!)
  [Server-NY]      ← configured with  2001:DB8::CAFE:1  (same address!)

  A client in Paris sends a DNS query to 2001:DB8::CAFE:1
  → Routing protocol selects the nearest server → London responds
  → Client in Sydney sends same query → Tokyo responds
  → No change needed on client — same destination address always used

  Real-world use: Internet root DNS servers use IPv6 anycast.
  RFC 2526 defines a Subnet Router Anycast address:
  Network prefix with all-zeros Interface ID = subnet router anycast address
  Example: 2001:DB8:ACAD:1::/64 → subnet router anycast = 2001:DB8:ACAD:1::0
Feature Unicast Multicast Anycast
Assigned to One interface A group of interfaces Multiple interfaces (typically different devices)
Delivered to That single interface All group members The nearest member (by routing metric)
Address range Depends on type (GUA, ULA, etc.) FF00::/8 From global unicast or ULA space — no special prefix
IPv6 broadcast equivalent? No Yes (FF02::1) No
Anycast configuration: An anycast address looks identical to a unicast address — there is no special prefix that distinguishes anycast. On Cisco IOS, an anycast address is configured with the anycast keyword: ipv6 address 2001:DB8::CAFE:1/128 anycast. Without the keyword, Cisco treats it as a regular unicast address.

12. Loopback and Unspecified Addresses

12.1 Loopback Address — ::1/128

The IPv6 loopback address is ::1 (expanded: 0000:0000:0000:0000:0000:0000:0000:0001). It is the equivalent of IPv4's 127.0.0.1. A packet sent to ::1 is processed locally by the protocol stack and never leaves the device. It is used to test whether the TCP/IP stack on a device is functioning correctly.

  Loopback address:  ::1/128  (single host /128 prefix)

  Full form:  0000:0000:0000:0000:0000:0000:0000:0001

  Test IPv6 stack on a host:
  C:\> ping ::1
  Pinging ::1 with 32 bytes of data:
  Reply from ::1: time<1ms
  Reply from ::1: time<1ms

  On a Cisco router:
  Router# ping ipv6 ::1

Use ping ::1 to verify the local IPv6 stack is operational — the IPv6 equivalent of ping 127.0.0.1.

12.2 Unspecified Address — ::/128

The unspecified address is :: (all 128 bits zero, written as ::). It is the equivalent of IPv4's 0.0.0.0. It is used as the source address in packets sent by a device that has not yet been assigned an IPv6 address — for example, during the DAD (Duplicate Address Detection) process when a device is checking whether its tentative address is already in use on the link.

  Unspecified address:  ::/128  (or simply :: )

  Full form:  0000:0000:0000:0000:0000:0000:0000:0000

  Use:  Source address in DAD (Duplicate Address Detection) Neighbor Solicitation
        Source address in DHCPv6 Solicit messages (before address is assigned)

  A device must NEVER use :: as a destination address.
  A router must never forward a packet with :: as the source address.

12.3 Default Route — ::/0

The IPv6 default route is ::/0 — a prefix length of zero matches all IPv6 addresses, exactly as 0.0.0.0/0 does in IPv4. See Static Routing Configuration for configuration examples.

  Configure IPv6 default route on a Cisco router:

  Router(config)# ipv6 route ::/0 <next-hop-address>
  Router(config)# ipv6 route ::/0 gigabitEthernet 0/1   ! exit interface method

  Verify:
  Router# show ipv6 route
  S   ::/0 [1/0] via 2001:DB8:1::1, GigabitEthernet0/1

13. IPv6 Address Types — Complete Reference

Type Prefix / Address Scope Description
Global Unicast (GUA) 2000::/3 Global Globally routable — equivalent to public IPv4. Starts with 2 or 3 in hex.
Link-Local FE80::/10 Link only Auto-generated on every IPv6 interface; never routed; used for NDP, routing next-hops. See Link-Local vs Global Unicast.
Unique Local (ULA) FC00::/7 (FD00::/8 used) Site / org Private addressing — not Internet-routable; equivalent to RFC 1918. NAT required for Internet access.
Multicast FF00::/8 Varies (scope field) One-to-many delivery; replaces IPv4 broadcast; well-known groups (FF02::1, FF02::2, OSPFv3 FF02::5/FF02::6, etc.)
Anycast From unicast space Global / site Assigned to multiple interfaces; delivered to nearest; used for DNS, CDN, redundancy
Loopback ::1/128 Local host Equivalent to 127.0.0.1; tests local IPv6 stack with ping ::1; never leaves the device
Unspecified ::/128 N/A Equivalent to 0.0.0.0; used as source during DAD and initial DHCPv6; never a destination
Solicited-Node Multicast FF02::1:FF00:0/104 Link-local Auto-generated from unicast address; used by NDP to replace ARP broadcasts
Default Route ::/0 Global Matches all IPv6 destinations; equivalent to 0.0.0.0/0 in IPv4. See Static Routing Configuration.
Documentation 2001:DB8::/32 N/A (not routed) Reserved for examples and documentation (RFC 3849); never assigned or routed

14. IPv6 Addressing Quiz

1. How many bits are in an IPv6 address, and how is it written?

Correct answer is C. An IPv6 address is 128 bits long, written as eight hextets (groups of 16 bits each) separated by colons in hexadecimal notation. Each hextet is four hex digits (0000 through FFFF). 8 × 16 = 128 bits total. This contrasts with IPv4's 32-bit dotted-decimal notation.

2. What is the correctly abbreviated form of the IPv6 address 2001:0DB8:0000:0000:0000:0000:0000:0001?

Correct answer is B. Applying both abbreviation rules: Rule 1 — remove leading zeros: 2001:DB8:0:0:0:0:0:1. Rule 2 — replace the longest consecutive run of all-zero hextets with :: (six consecutive zero hextets between DB8 and 1): 2001:DB8::1. Option A is wrong (the :0: leaves unnecessary zero hextets). Option C still has leading zeros. Option D uses :: twice which is invalid — only one :: per address is permitted.

3. A device has MAC address C8:00:84:12:34:56. What is the EUI-64 generated Interface ID?

Correct answer is D. The EUI-64 process: Step 1 — split MAC C8:00:84:12:34:56 in half: OUI = C8:00:84, Device = 12:34:56. Step 2 — insert FF:FE in the middle: C8:00:84:FF:FE:12:34:56. Step 3 — flip the U/L bit (7th bit) of the first octet: C8 = 1100 1000. Bit 6 (the U/L bit, counting from bit 7 on the left) = 0. Flip it to 1: 1100 1010 = CA. Result: CA:00:84:FF:FE:12:34:56 → CA00:84FF:FE12:3456.

4. Which IPv6 address type is automatically generated on every IPv6-enabled interface, is never routed by a router, and is used by Neighbor Discovery Protocol?

Correct answer is A. Link-local addresses (FE80::/10) are generated automatically whenever IPv6 is enabled on an interface — even if no global unicast address is configured. They are scoped to the local link: a router will never forward a packet with a link-local source or destination. They are fundamental to IPv6 operation — NDP (Neighbor Solicitation, Neighbor Advertisement, Router Advertisement) all use link-local addresses. OSPFv3 and EIGRPv6 use link-local addresses as routing next-hops. See Link-Local vs Global Unicast.

5. What is the well-known IPv6 multicast address that all IPv6 routers on a link listen to, and which IPv4 multicast address does it correspond to?

Correct answer is B. FF02::2 is the "all routers" link-local multicast group. Every IPv6 router joins this group on each interface where IPv6 is enabled. It corresponds to IPv4 224.0.0.2. It is used by hosts to send Router Solicitation (RS) messages when they want to discover IPv6 routers on the link (during SLAAC). FF02::1 is all-nodes (all IPv6 devices), and FF02::5 and FF02::A are routing protocol specific groups.

6. What is the purpose of the solicited-node multicast address, and how is it derived from a unicast address?

Correct answer is C. The solicited-node multicast address is automatically derived from a unicast IPv6 address by combining the fixed prefix FF02::1:FF00:0/104 with the last 24 bits of the unicast address. For example, if a device has address 2001:DB8::211:22FF:FE33:4455, its solicited-node multicast is FF02::1:FF33:4455. NDP Neighbor Solicitation messages (the IPv6 equivalent of ARP requests) are sent to this address. Only the device(s) whose address ends in those 24 bits need to process the message — far more efficient than an IPv4 broadcast that all hosts must process.

7. What is the IPv6 address type FD12:3456:7890::/48, and what is it equivalent to in IPv4?

Correct answer is D. The FD prefix identifies a Unique Local Address. FC00::/7 is the ULA range. The 8th bit (L bit) distinguishes FC00::/8 (L=0, not used in practice) from FD00::/8 (L=1, locally assigned). An address starting with FD is a locally administered ULA — it is routable within a private organisation but is not globally routable on the Internet. The 40-bit Global ID (12:3456:7890 in this example) is pseudo-randomly generated to make the prefix globally unique with high probability, even without Internet registration. See IPv4 Address Structure for RFC 1918 private ranges.

8. A host sends a packet with the source address :: during the IPv6 address assignment process. What address is this, what is it equivalent to in IPv4, and when is it used?

Correct answer is A. The unspecified address (:: or ::/128) is all 128 bits set to zero, equivalent to IPv4's 0.0.0.0. It is used as the source address when a device does not yet have an assigned IPv6 address. The primary use is during Duplicate Address Detection (DAD): when a device selects a tentative IPv6 address, it sends a Neighbor Solicitation with source = :: to check whether another device on the link already uses that address. It is also used as the source in initial DHCPv6 Solicit messages. A router must never forward packets sourced from ::. Note: :: is also used in the default route ::/0, but in that context it is a prefix, not a host address.

9. What is the expanded (full) form of the IPv6 address FE80::A1B:2C3D:4E5F:6789?

Correct answer is C. Expanding FE80::A1B:2C3D:4E5F:6789: Written hextets are FE80, A1B, 2C3D, 4E5F, 6789 = 5 hextets. Missing = 8 − 5 = 3 hextets → :: = 0000:0000:0000 (placed after FE80). Restore leading zeros to each hextet: A1B → 0A1B. Full form: FE80:0000:0000:0000:0A1B:2C3D:4E5F:6789. Option A incorrectly pads A1B as A1B0 (adds a trailing zero instead of a leading zero). Option D places the :: expansion in the wrong position. Verify on a Cisco device with show ipv6 interface.

10. What is the key operational difference between a multicast address and an anycast address in IPv6?

Correct answer is B. This distinction is fundamental. Multicast (FF00::/8) delivers one copy of a packet to every member that has joined the multicast group — one packet sent, many copies received. Anycast assigns the same address to multiple interfaces (on different devices), but delivers the packet to only the topologically nearest one as chosen by the routing protocol — one packet sent, one copy received (by the best node). Anycast has no special prefix — it uses addresses from the unicast space and is distinguished only by configuration (ipv6 address X anycast) and routing table entries.

← Back to Home