v6 subnet size for DSL & leased line customers

Mark Smith nanog at 85d5b20a518b8f6864949bd940457dc124746ddc.nosense.org
Sun Dec 23 22:59:24 UTC 2007

On Sun, 23 Dec 2007 12:54:34 -0500
Ross Vandegrift <ross at kallisti.us> wrote:

> On Sun, Dec 23, 2007 at 12:24:32AM +0100, Iljitsch van Beijnum wrote:
> > First of all, there's RFC 3513:
> > 
> > For all unicast addresses, except those that start with binary value  
> > 000, Interface IDs are required to be 64 bits long and to be  
> > constructed in Modified EUI-64 format.
> Ahhh, thanks - that is the only thing I have ever seen that gives any
> reason for the /64 prefix.  Sadly, the document contains no
> compelling technical reasons for it - looks like it's done just so
> things are easy when generating interface IDs from ethernet addresses.

If operational simplicity of fixed length node addressing is a
technical reason, then I think it is a compelling one. If you've ever
done any reasonable amount of work with Novell's IPX (or other fixed
length node addressing layer 3 protocols (mainly all of them except
IPv4!)) you'll know what I mean.

I think Ethernet is also another example of the benefits of
spending/"wasting" address space on operational convenience - who needs
46/47 bits for unicast addressing on a single layer 2 network!? If I
recall correctly from bits and pieces I've read about early Ethernet,
the very first versions of Ethernet only had 16 bit node addressing.
They then decided to spend/"waste" bits on addressing to get
operational convenience - "plug and play" layer 2 networking.

If IPv6 can have the same operational simplicity as Ethernet,
and addressing bits can afford to be spent on it, then I think those
bits are well worth spending.

The /64 for all subnets idea is probably an example of "worse is
better" principle. It's not ideal for everything, but because it's
general enough, it works with everything, and is simpler and a
*single* solution to everything, and that's what makes it better.

Regarding where the /64 boundary came from, from what I understand, the
following Internet Drafts are it's origin:

"8+8 - An Alternate Addressing Architecture for IPv6"

"GSE - An Alternate Addressing Architecture for IPv6"

> > Second, we currently have two mechanisms to configure IPv6 hosts with  
> > an address: router advertisements and DHCPv6. The former has been  
> > implemented in ALL IPv6 stacks but doesn't work if your subnet isn't  
> > a /64.
> But the protocols don't imply or require this.  All of the messages
> used in stateless autoconfig will behave as expected with longer prefix
> lengths.  So it seems that because the interface identifier has to be
> 64-bits, stateless autoconfig is unnecessarily crippled.
> For kicks I just tried RAs with a /96 prefix.  Linux 2.6 checks and
> enforces the requirement from RFC3513, though it'd be trivial to
> change.  But I'm guessing other vendors enforce this as well.
> -- 
> Ross Vandegrift
> ross at kallisti.us
> "The good Christian should beware of mathematicians, and all those who
> make empty prophecies. The danger already exists that the mathematicians
> have made a covenant with the devil to darken the spirit and to confine
> man in the bonds of Hell."
> 	--St. Augustine, De Genesi ad Litteram, Book II, xviii, 37


        "Sheep are slow and tasty, and therefore must remain constantly
                                   - Bruce Schneier, "Beyond Fear"

More information about the NANOG mailing list