IPv6 backwards and forwards

I've been trying to get my head around IPv6 addressing lately. This isn't a result of any projects I'm doing, more of a 'get ready for the future' thing. One of the problems I'm having to deal with is the scary-looking nature of IPv6 addresses. For those of us brought up in IPv4, IP addresses with hexadecimals in them are intimidating. In fact, this specific issue has been brought up in meetings when v6 has come up. As I've mentioned before, our telecom group isn't going v6 until they get pushed. Having a /16 address block to play with means regulatory or technical obsolecence will be the drivers to move to v6, not IP exhaustion.

Anyway, IPv6 addresses are not as intimidating as you might think. Yes, they do have 8, 4-digit numbers in them and there is no way on this earth that your average helpdesk technician (or sysadmin) is going to memorize more than a very few 32-digit hexadecimal numbers. Happily, thanks to how v6 works, there are built in short-cuts.

First and foremost, what constitutes the 'network' portion of the address. The entire IPv4 address space can be contained in two of the 4-digit numbers. We care about this, since this is what will drive IPv6 address-space exhaustion. You can look up which regional registrars have been assigned what v6 prefixes on this link:


2600:0000::/12 given to ARIN means that the network-number is "260"

Which means that it is entirely likely that when WWU gets its IPv6 allocation, it'll probably get something similar to:


Which gives us a nigh unimaginable amount of addresses. With 'nigh unimaginable' space to work with we can leverage the power of inefficiency in the pursuit of human understanding. It is entirely allowable for us to configure local addresses that look like this: = 2608:AA11:243:0:0:0:0:16 = 2608:AA11:243::16

In essence, treat our hypothetical 2608:AA11 prefix the same way we're treating 140.160 right now. It's a bit different to remember, but at least once that prefix is memorized the rest just falls into place. Heck, you can even have up to 9999 hosts in a subnet without ever using a letter or an extra colon!

On the back-end turning 2608:AA11:243::16 into a hostname is uglier. The reverse lookup for that address would be found:

Only the DNS admin needs to worry about entering monstrosity into the named tables. Oh wait...

Once the transition to v6 is completed we can start doing funny things with our subnets, or adding colon block to addresses depending on what we need to do with them. And since v6 isn't limited to 256 in each block we can have a lot more subnets. However, we have to get there first.


I'll be honest, IPv6 addressing terrifies me. I'm far from a math-geek, so completely relearning something I use everyday in HEX as opposed to the nice, simple scheme we have now makes me queasy like I used to get on the morning of an algebra test that I hadn't studied for enough.

Got any good recommendations for IPv6 educational resources for old-timers like me?

One of the biggest problems my group has isn't convincing folks that they have a problem. It's convincing them to address the biggest one first and then deal with the other stuff. Nobody seems to want to do that. Everyone wants a reason or an excuse. They want to worry about the big bruise on their arm when there leg is cut off and they are bleeding out.

Hmm, okay, maybe not quite as scary as I first thought!
Still, I'll need to pick up a book or three and start reading up on this pretty damn quick.
If anyone has suggestions on what books are better than others, I'd love to hear it. Otherwise, I'll end up with O'Rielly, as usual.

Encoding IPv4 addresses into IPv6 is a very bad idea from a long-term maintainability standpoint. 30 years from now, someone at your site will be stuck with the decisions you make now. Here are some pointers we are giving people on our campus: http://helpdesk.wisc.edu/ns/page.php?id=13734