0

From the dawn of when I heard about IPv6 many years ago, to my continued hesitance to make good use of it in today's world where it's eventually going to become necessary... my biggest issue I think is pretty simple and strictly a human issue: remembering & entering IPv6 addresses is a PITA.

I'm aware of the basic shortening techniques:

  • A :: can be used to represent a string of 0s.
  • You can always drop leading zeros

Is there any way to utilize a named constant or variable to shorten an IPv6 address' representation? Something along the lines of "@local::ef" translating to "utilizes your local address as a prefix, ending with a final hextet of ef"?

Such a process might make the idea of remembering and accessing IPv6 addresses manually... well... palpable.

  • 2
    They're not that hard to remember, and for the most part you are going to be using names, not addresses. – Michael Hampton Jan 17 at 17:28
4

There is, of course, DNS, which is the preferred method for referring to a particular host.

There is also IPv6 prefix delegation that can simplify things for assignments to interfaces in a router.


Other than that, I would suggest adopting a strategy that formalizes the way IPv6 addresses are assigned. For example, you can be assigned a /32 prefix, then use the next nibble or so to mean the specific site and/or region, a nibble to identify the function of the network (user data, VoIP, Wi-Fi, guest, etc.), a nibble for the specific module, then some subnet nibbles within the module. Such a strategy can make it easy to identify a network address and where it is.

You can also go farther with /127 point-to-point links and /128 loopback addresses. For example, if the subnet is 0, then let that mean it is an infrastructure (loopback or point-to-point link) address, and you can use a lot more nibbles/bits beyond the /64 prefix to identify the specific device (loopback) or devices (point-to-point link). In this way, the addresses write themselves, and they are easy to decode.

All that can be done with a simple spreadsheet to start, then you get familiar and can see it on your own.


As the experts at a global IPv6 conference explained to me, companies that are putting in IPv6 change the addressing, on average, three times before settling on an addressing scheme. If you sit down and plan it correctly, you will see that IPv6 addressing is actually more flexible, allowing you to encode meaningful information into the addresses.

  • In the RIPE region you get a /29. Knowing that your address scheme from today will probably not fit your requirement in 5, 10, 15 years you take one /32 now, one in 5 years one in 10,... The idea was presented at RIPE 74 in Budapest. – Jens Link Jan 17 at 19:05
  • That was simply an example. The RIRs will actually reserve a smaller prefix (often two nibbles) than you have requested for future growth. It is at that point you could make the high-order nibble mean a region or something else. We are huge, and we have created a good plan that seems to work and is expandable. People keep trying to throw stuff at it to break it, but we spent a few years developing it, and it seems to be very flexible. – Ron Maupin Jan 17 at 19:12
  • I've spent a few days returning to this, trying to get myself to wholeheartedly agree with it because it's the same thing I've heard again and again, and there is a lot of wisdom in it. My IPv6 implementation will make use of a lot of this knowledge. And yet, I also keep returning to wanting some mechanism to cut out a lot of unnecessary memorization. I keep going back to wanting to use DNS IPv6 addresses to simplify them. Something like "@stackexchange.com::0102:1" feels like it'd be a good way to A: make IPv6 addressing more friendly and B: more flexible. – Darinth Jan 23 at 15:09
  • Or extending out the concept... "@printers.site1.organization.com::1" where printers.site1.organization.com could in fact be defined in DNS as "@site1.organization.com:xx02:0" and site1.organization.com could be defined as "@organization.com::0100:0" and organization.com would have a specific IPv6 address to generated heirarchical IPv6 addressing that was easily changed and easier to remember. – Darinth Jan 23 at 15:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.