IPv6 addresses look long because they contain 128 bits, four times the size of an IPv4 address. The basic task is still familiar: identify which leading bits describe the routed prefix and which remaining bits identify an interface or another value inside that prefix.

The important difference is that IPv6 is not IPv4 with more digits. IPv6 does not use broadcast addresses, and its first and last values are not automatically reserved as network and broadcast addresses. Avoid carrying IPv4 shortcuts into IPv6 questions.

Start with three questions. What type of address is this? Which bits belong to the prefix? What process assigned or discovered the address?

Read the eight 16-bit groups

An IPv6 address contains eight groups of four hexadecimal digits when written in full. Each group represents 16 bits.

2001:0db8:1234:0012:0000:0000:0000:0020

Hexadecimal uses the digits 0 through 9 and the letters a through f. One hexadecimal digit represents four bits, so four hexadecimal digits represent 16 bits.

The slash value is the prefix length:

2001:db8:1234:12::20/64

A /64 means the first 64 bits belong to the prefix. The remaining 64 bits follow that prefix. In a typical LAN, those remaining bits form the interface identifier, although modern IPv6 standards do not require the identifier to contain a MAC address.

Compress and expand the address

IPv6 text can omit unnecessary characters without changing the numeric address.

Remove leading zeros

Leading zeros inside each 16-bit group may be removed:

0db8 becomes db8
0012 becomes 12
0000 becomes 0

Replace one zero run with ::

One consecutive run of all-zero groups may be replaced with :::

2001:0db8:1234:0012:0000:0000:0000:0020
2001:db8:1234:12::20

Use :: only once. If several zero runs have the same length, the recommended text form compresses the first run. A single zero group remains 0 rather than being shortened with ::.

RFC 5952 recommends lowercase hexadecimal, removal of leading zeros, and compression of the longest zero run. Systems should accept other valid forms, but a consistent form makes searching, logging, and comparison more reliable.

Understand prefix lengths and the /64 boundary

The prefix length tells a router how many leading bits identify the destination network. A longer prefix is more specific.

PrefixCommon planning useNumber of /64 prefixes inside it
/48Large site or organization assignment65,536
/56Smaller site or customer assignment256
/60Small deployment with several LANs16
/64Common LAN prefix1

A /64 is the normal size for many IPv6 LANs and is expected by common Stateless Address Autoconfiguration (SLAAC) designs. IPv6 routing still supports other prefix lengths. A prefix that is not /64 is not automatically invalid, but using a different size can affect address-assignment features and device expectations.

The prefix boundary may fall inside a hexadecimal group. A /57, for example, uses three complete 16-bit groups and the first 9 bits of the fourth group. Calculators can help check that boundary, but you should still understand that the slash length counts bits, not hexadecimal groups.

Recognize common IPv6 address types

Address or prefixPlain-language purpose
::/128Unspecified address. A system uses it before it has a usable source address.
::1/128Loopback. Traffic stays on the local system.
fe80::/10Link-local. Traffic remains on the local link and is not routed to another link.
fc00::/7Unique local. Intended for private local communication, not normal public internet routing.
2000::/3Main global-unicast range. Allocation and reachability still need separate verification.
2001:db8::/32Documentation. Reserved for examples and training material.
ff00::/8Multicast. Sends traffic to a group of interfaces.
::ffff:0:0/96IPv4-mapped IPv6 form used by software and APIs.
64:ff9b::/96Well-known NAT64 prefix for embedding IPv4 destinations in translation environments.

Multicast scope

The final hexadecimal digit in the first multicast group identifies scope. For example:

  • ff01::/16: interface-local
  • ff02::/16: link-local
  • ff05::/16: site-local
  • ff08::/16: organization-local
  • ff0e::/16: global

IPv6 uses multicast instead of broadcast. The all-nodes group ff02::1 reaches IPv6 nodes on the local link. The all-routers group ff02::2 reaches IPv6 routers on that link.

Anycast

Anycast uses an ordinary unicast address assigned to more than one interface. Routing delivers traffic to one of the available instances, usually the closest according to the routing system. You cannot identify anycast from the written address alone.

Divide a parent prefix into child prefixes

Subnet planning asks how many additional bits are borrowed after the parent prefix.

A /48 divided into /64 prefixes uses 16 additional subnet bits:

64 - 48 = 16 subnet bits
2^16 = 65,536 child /64 prefixes

Example parent:

2001:db8:1234::/48

The fourth 16-bit group becomes the subnet field:

2001:db8:1234:0000::/64
2001:db8:1234:0001::/64
2001:db8:1234:0002::/64
...
2001:db8:1234:ffff::/64

A /56 divided into /64 prefixes uses 8 subnet bits and creates 256 child prefixes. A /60 uses 4 additional bits and creates 16 child prefixes.

Do not calculate “usable hosts” by subtracting two. IPv6 has no broadcast address, and the prefix boundary values are not handled like the IPv4 network and broadcast addresses. Address-assignment rules and reserved anycast uses can still affect whether a particular value should be assigned in a specific design.

Separate SLAAC, DHCPv6, and static addressing

SLAAC lets a host build an address from information in Router Advertisements. The router supplies the prefix and flags that guide host behavior. The host creates its interface identifier and performs Duplicate Address Detection before using the address.

DHCPv6 can provide addresses and other configuration information. Stateful DHCPv6 assigns addresses. Stateless DHCPv6 provides information such as DNS settings while another process, often SLAAC, supplies the address.

Static addressing is configured manually or through automation. It can be appropriate for infrastructure and predictable services, but it still requires correct prefix, route, gateway, and duplicate-address planning.

A host normally creates a link-local address even when it also has global or unique-local addresses. IPv6 routers often use link-local addresses as next hops because the next-hop relationship exists on one local link.

Use Neighbor Discovery instead of ARP

IPv6 Neighbor Discovery uses Internet Control Message Protocol for IPv6 (ICMPv6) messages to discover routers, prefixes, neighbors, and address conflicts.

MessagePlain-language purpose
Router SolicitationA host asks routers to send configuration information sooner.
Router AdvertisementA router announces prefixes, default-router information, and address-assignment flags.
Neighbor SolicitationA node asks who owns an IPv6 address or checks reachability.
Neighbor AdvertisementA node answers with link-layer information or announces a change.
RedirectA router tells a host about a better next hop on the same link.

The solicited-node multicast range ff02::1:ff00:0/104 limits neighbor discovery traffic to nodes whose addresses share the final 24 bits. This replaces the broad local broadcast behavior used by IPv4 Address Resolution Protocol (ARP).

Avoid common IPv6 mistakes

  • Using :: twice. The address would be ambiguous because the system could not determine how many zeros belong in each location.
  • Compressing a single zero group. Recommended text representation uses :: for the longest run of at least two zero groups.
  • Assuming every prefix must be /64. Many LANs use /64, but routing can use other prefix lengths.
  • Subtracting two addresses for network and broadcast. IPv6 has no broadcast address.
  • Treating link-local addresses as globally unique. The same link-local value can appear on different links, so a zone or interface may be needed to identify the intended link.
  • Assuming an address proves reachability. A valid global-unicast address does not confirm current allocation, routing, firewall policy, or service availability.
  • Assuming an interface identifier reveals a MAC address. Stable privacy methods and temporary addresses commonly avoid direct MAC-derived identifiers.

Work through two prefix examples

Find the containing /64

Input:

2001:db8:1234:12ab:44::20/48

The /48 parent is:

2001:db8:1234::/48

The address falls inside this /64:

2001:db8:1234:12ab::/64

The fourth group, 12ab, is the 16-bit child-prefix number within the /48.

Find a non-hextet boundary

Input:

2001:db8:1234:abff::1/57

A /57 keeps the first 48 bits and the first 9 bits of the fourth group. The containing prefix is:

2001:db8:1234:ab80::/57

The final address in that prefix is:

2001:db8:1234:abff:ffff:ffff:ffff:ffff

Use the IPv6 Address and Prefix Calculator to check expanded forms, common address types, non-hextet boundaries, and child-prefix planning.

Official references

IPv6 Address and Prefix Calculator Expand and compress an address, identify its type, find prefix boundaries, and divide a parent prefix into smaller child prefixes. CCNA IPv6 Addressing and Neighbor Discovery Quick Review Connect address types, SLAAC, Neighbor Discovery, and Cisco IOS evidence to exam scenarios. CCNA Domain 1: Network Infrastructure and Connectivity Apply IPv6 addressing to interfaces, modified EUI-64, client connectivity, and troubleshooting. Network+ Domain 1: Networking Concepts Place IPv6 beside the OSI model, IPv4, traffic types, devices, and modern network designs. IPv4 Subnetting Reference Compare IPv6 prefix planning with IPv4 network, broadcast, and usable-host calculations. IPv4 Subnet Calculator Calculate IPv4 boundaries, host ranges, masks, wildcard masks, and special-use status.