Petri Newsletter Sign-up
Tech Tuesday

Subscribe to Tech Tuesday, the latest insights from for IT Pros.

    See All Petri Newsletters

    IPv6 Address Notation

    Posted on by Sean Wilkins in Networking with 6 Comments


    When learning IPv6 addressing, one of the first things that people notice is that it is much more complex to look at than the previous IPv4 addresses; this is compounded by the fact that a single address can be notated in a number of different ways and still refers to the same device. This article takes a look at IPv6 notation, how a single IPv6 address can be notated in a number of different ways, and how to expand and compress them correctly.

    IPv6 Address Notation

    An IPv6 address has a total of 128 bits that are represented in hexadecimal form, using 8 – 4 hex character groupings.  Figure 1 below shows a fully expanded IPv6 address:

    Expanded IPv6 Address

    Figure 1 – Expanded IPv6 Address

    There are two ways that an IPv6 address can be additionally compressed: compressing leading zeros and substituting a group of consecutive zeros with a single double colon (::). Both of these can be used in any number of combinations to notate the same address. It is important to note that the double colon (::) can only be used once within a single IPv6 address notation. Figure 2 below shows what the same address shown in Figure 1 would look like if the leading zeros were removed.

    Compressing Leading Zeros

    Figure 2 – Compressing Leading Zeros

    Another method is to use the double colon (::).  Figure 3 shows how the use of a double colon (::) could be used to compress the IPv6 address:

    Compressing using Double Colon

    Figure 3 – Compressing using Double Colon (::)

    The final compression method removes the leading zeros and uses the double colon (::) to provide the shortest IPv6 notation. Figure 4 shows what this completely compressed IPv6 address would look like:

    Compressing Leading Zeros and using Double Colon

    Figure 4 – Compressing Leading Zeros and using Double Colon (::)

    IPv6 Mask Notation

    To notate the number of bits to mask with an IPv4 address, a decimal subnet mask or a CIDR notation was used. For example, to notate an IPv4 C class network range, the subnet address,, plus an additional subnet mask, (or /24), were placed and configured together to notate the network range from through

    For IPv6, the decimal subnet mask is not used anymore, and only a CIDR notation is used. Figure 5 shows an example of a 64 bit network prefix:

    IPv6 Mask Notation

    Figure 5 – IPv6 Mask Notation

    What this means is that all addresses with the prefix 3001:ABC0:FE00:0034 will be included within a single subnetwork. This works out to be 18,446,744,073,709,551,616 total addresses, which is by far larger than needed on any single organizational network (at least at the moment).


    The main stumbling block for most individuals starting to learn IPv6 is getting over looking at a large number of hexadecimal numbers. IPv6 addresses and subnetting work the same as with IPv4 address when converted to binary, and anyone familiar with IPv4 binary addressing and subnetting should be able to understand these IPv6 concepts.


    Don't have a login but want to join the conversation? Sign up for a Petri Account


    Register for this Petri Webinar!

    Software-Defined Unlimited Backup Storage

    Tuesday, August 27, 2019 @ 1:00 pm EDT

    A Scale-Out Backup storage infrastructure is a must-have technology for your backups. In this webinar, join expert Rick Vanover for a look on what real-world problems are solved by the Scale-Out Backup Repository.

    Register Now

    Sponsored By