# IPv6 Shrinker 1

Looking for short #ICND2 or #CCNA review tasks? This new practice drill can help. The short version: take a 32-digit hex IPv6 address, and find the shortest abbreviation – or do the opposite. The goal: to get good, and to go fast. Today’s post lists sample problems; the follow-up post will show the answers.

Related links: Deeper info from the ICND2 OCG book

## The Rules for IPv6 Address Abbreviation

The rules for IPv6 address abbreviation can actually be summarized very succinctly. The trick is to practice enough to be comfortable. (Note that like my books, these posts refer to a set of up to 4 hex digits inside an IPv6 address as a quartet.) For reference, a short version of the rules are:

• One quartet at a time, remove all leading 0’s in the first 3 digits of the quartet.
• Avoid common beginner mistakes: do not remove trailing 0’s, or 0’s in the middle.
• For any one string of >1 quartet that has a single remaining 0, replace those multiple quartets with ::

To convert from the abbreviated address back to the complete 32-digit IPv6 address, just do the opposite. The only tricky part is that for any ::, you have to figure out how many quartets of all 0s to add. Here are the rules:

• If a :: exists:
• Count the rest of the quartets.
• Add enough quartets of 0000 to replace the :: so that 8 quartets exist.
• One quartet at a time, add leading 0s as needed to make each quartet have 4 hex digits.

So, the process seems pretty simple, but the proof is whether you can do the conversions. Why does it matter? Most devices list the abbreviated IPv6 address in command output, but you may need to think about the full 32-digit address to compare it to configuration, to find the prefix, to think about how a router forwards packets sent to that address, or just make sense of the number. So, a little practice helps.

## Problems to Do

The following list shows five unabbreviated IPv6 addresses; convert these to the shortest possible abbreviated IPv6 address.

```  1.  2001:0DB8:9283:0102:1020:00AA:BB00:0000

2.  3000:D0D0:0D0D:BEEF:0000:0000:CAFE:0000

3.  2001:0DB8:0000:0000:0001:0000:0000:0000

4.  3100:0202:1010:00AA:BB00:0000:0000:000A

5.  2001:0DB8:0000:0000:1111:0000:0000:0000```

The following list shows five abbreviated IPv6 addresses. Convert these to the full 32-digit IPv6 addresses, with all hex 0’s included.

```  1.  2001:DB8:3:12:BAD:DAD:CAD:0

2.  3000::1:1001

3.  2001:D:B:A:0:5:4000:1

Subscribe
Notify of

Inline Feedbacks
John rambo
June 3, 2023 1:24 pm

Hello Mr Odom,

Just to let you know, I think the placement of this question and the answer is misplaced.

Thank you