Shortening IPv6 Addresses

IPv6 addresses can be shortened using two main rules:

Rule 1: Remove Leading Zeros

In each group of four hexadecimal digits, remove leading zeros.

Example:

2001:0db8:0000:0000:0000:ff00:0042:8329
becomes
2001:db8:0:0:0:ff00:42:8329

Rule 2: Replace Consecutive Zero Groups with Double Colon (::)

Replace the longest consecutive sequence of zero groups with double colons (::). This can only be done once in an address.

Example:

2001:db8:0:0:0:ff00:42:8329
becomes
2001:db8::ff00:42:8329

Important Notes

  • You can only use :: once in an address

  • If there are multiple sequences of zeros of the same length, compress the leftmost one

  • Leading zeros in a group must always be removed

  • Single zero groups should be written as “0”

Example with multiple zero sequences:

2001:0:0:1:0:0:0:1
becomes
2001:0:0:1::1
(not 2001::1:0:0:0:1)

Understanding IPv6 Addresses

An IPv6 address consists of 8 groups of 4 hexadecimal digits, separated by colons (:).

Example of a full IPv6 address:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

Key Features of IPv6

  • Each group contains 4 hexadecimal digits (0-9 and a-f)

  • Total length is 128 bits (compared to 32 bits in IPv4)

  • Provides approximately 340 undecillion unique addresses

  • Uses hexadecimal notation instead of decimal (used in IPv4)

Common Types of IPv6 Addresses

  • Global Unicast: Similar to public IPv4 addresses, usually start with 2000::/3

  • Link-Local: Start with fe80::/10, used for communication on a single network segment

  • Multicast: Start with ff00::/8, used for one-to-many communication

The large address space of IPv6 eliminates the need for Network Address Translation (NAT) and provides enough addresses for the growing number of internet-connected devices.