nanog mailing list archives

Re: Introducing draft-denog-v6ops-addresspartnaming


From: William Herrin <bill () herrin us>
Date: Fri, 19 Nov 2010 17:52:41 -0500

On Fri, Nov 19, 2010 at 4:20 PM, Richard Hartmann
<richih.mailinglist () gmail com> wrote:
On Fri, Nov 19, 2010 at 21:45, William Herrin <bill () herrin us> wrote:
I have an anti-naming proposal: Allow users to place the colons
-anywhere- or even leave them out altogether without changing the
semantics of the IPv6 address.

A decade or two of established syntax disagree. IPv6 addresses, UUIDs
and similar have a unique syntax for a reason. Otherwise, we, nor
computers, wouldn't be able to quickly distinguish an IP from a hash.

Hi Richard,

I thought about that. Have a "one colon rule" that IPv6 addresses in
hexidecimal format have to include at least one colon somewhere. The
regex which picks that token out versus the other possibilities is
easy enough to write and so is the human rule: "Oh, it's got
hexidecimal digits and a colon in it. IPv6 address."

There is one serious problem with switching notations: we've already
started dropping the leading 0's inside each coloned-off section, and
that would have a different meaning if the colons could be placed
anywhere.

fd00:68::1 and fd:0068::1 mean different things now. The former means
fd00:0068::1 while the latter means 00fd:0068::1. I would instead have
them mean the same thing: fd00:6800::1. The single-colon separator
gets syntax but no semantics and the :: separator means "all middle
nibbles are zero" instead of "all middle two-byte components are
zero."

I mean, when you think about it, the consequence that :: means "all
middle two-byte components are zero" is kinda weird.

Even if they were for readability only, they would still be for
humans. Same as the specific, canonical name we are trying to agree
on.

If people want to interpret more into the colons than there is to see,
they will do so regardless of a name.

Anything you call out will be interpreted as special. The more you
call it out, the greater the expectation that the distinction is
important. That's human nature.

You've explained netmasks before to folks whose brains couldn't get
past the dots in the address. We all have. And referring to IP address
notation as "dotted quads" just reinforces classful addressing
concepts so that folks assigning themselves 10/8 subnets damn near
always split on /16 and /24 boundaries.


The rest of us will work faster, more efficiently and not explain the
same old thing a gazillion times.

And even more efficiently when we don't have to repeatedly explain
that the mental model implied by the notation style is, in fact, not
how the technology actually works.


On Fri, Nov 19, 2010 at 4:31 PM, Richard Hartmann
<richih.mailinglist () gmail com> wrote:
In any case, other than "some people might see the colons as magic
markers" I don't really see an argument in favour of avoiding a common
name. And that does not seem to hold much water. This is not meant to
be an attack, I simply wonder if I am missing something.

No sweat. When I shoot my mouth off, I expect to be challenged on the
remarks. Part of the fun lies in discovering whether the thesis is
defensible.

By the by, as long as I'm criticizing IPv6 notation, let me express
just how poor a choice of separator character the colon is. The colon
separates the IPv4 address from a directory or port description only
slightly less often than the slash. Writing the parsers to handle an
IPv6 address as a drop in is a pain in the tail. Should have used a
dash, underscore or plus. Those are far more rarely used in
tokenization.

Regards,
Bill Herrin


-- 
William D. Herrin ................ herrin () dirtside comĀ  bill () herrin us
3005 Crane Dr. ...................... Web: <http://bill.herrin.us/>
Falls Church, VA 22042-3004


Current thread: