zero suppression vs compression in addresses

Jay Hennigan jay at
Sat May 16 02:24:22 CEST 2009

Alan Batie wrote:
> I think I may have misinterpreted how zero compression and suppression
> work:  when I say 2607:f678:1::0/60, I expect the "::" to mean "all 0's
> from the preceding digit to the next", but from what I'm seeing
> configuring things, (leading) zero *suppression* seems to be happening
> at the same time within word (32 bit) boundaries, which colons always
> delineate, making that really 2607:f678:0001::0/60.  Thus what I really
> wanted to say was 2607:f678:1000::0/60.

1.  IPv6 addresses are 128 bits, written as eight quads of hex digits. 
Each quad is delimited by a colon.

2.  Within each quad, leading zeros may be dropped, but (for this step) 
if a quad is all zeros leave a single zero.

3. After doing this, if one or more successive quads is zero, that group 
of zeros can be replaced with a double colon, BUT only one double colon 
can appear per address.

(You can reverse steps 2 and 3 if you choose)

So, if you have:


    it becomes


Which can EITHER be expressed as




     BUT NOT


Jay Hennigan - CCIE #7880 - Network Engineering - jay at
Impulse Internet Service  -
Your local telephone and internet company - 805 884-6323 - WB6RDV

More information about the ipv6-ops mailing list