nanog mailing list archives

Re: IPv6 fc00::/7 — Unique local addresses


From: Owen DeLong <owen () delong com>
Date: Wed, 20 Oct 2010 17:51:11 -0700


On Oct 20, 2010, at 5:29 PM, Mark Smith wrote:

On Wed, 20 Oct 2010 19:39:19 -0400
Deepak Jain <deepak () ai net> wrote:

Use a pseudo random number, not follow bad examples. Where are these
examples? I'd be curious as to what they say regarding why they haven't
followed the pseudo random number requirement.

Use something like fd00::1234, or incorporate
something like the interface's MAC address into the address? It'd
make
the address quite unreadable though.

Unique Local IPv6 Unicast Addresses
http://tools.ietf.org/rfc/rfc4193.txt


[snipped a bunch of stuff above]. 

According to the RFC: 

3.2

  The local assignments are self-generated and do not need any central
  coordination or assignment, but have an extremely high probability of
  being unique.

3.2.1.  Locally Assigned Global IDs

  Locally assigned Global IDs MUST be generated with a pseudo-random
  algorithm consistent with [RANDOM].  Section 3.2.2 describes a
  suggested algorithm.  It is important that all sites generating
  Global IDs use a functionally similar algorithm to ensure there is a
  high probability of uniqueness.

  The use of a pseudo-random algorithm to generate Global IDs in the
  locally assigned prefix gives an assurance that any network numbered
  using such a prefix is highly unlikely to have that address space
  clash with any other network that has another locally assigned prefix
  allocated to it.  This is a particularly useful property when
  considering a number of scenarios including networks that merge,
  overlapping VPN address space, or hosts mobile between such networks.

----

Global ID in this case means the 40 bit pseudo random thing. The point here is, we are all supposed  to pick our own 
poison and pray that we are unique.

The chance of collision is dependent on both the randomness of 40 bits
*and* how interconnected the ULA domains are. You'll have to sin a lot to be that unlucky.

Here's the table from the RFC showing the odds of collision based on interconnectedness -

The following table shows the probability of a collision for a range
  of connections using a 40-bit Global ID field.

     Connections      Probability of Collision

         2                1.81*10^-12
        10                4.54*10^-11
       100                4.54*10^-09
      1000                4.54*10^-07
     10000                4.54*10^-05

  Based on this analysis, the uniqueness of locally generated Global
  IDs is adequate for sites planning a small to moderate amount of
  inter-site communication using locally generated Global IDs.


Though an algorithm is suggested in 3.2.2. Perhaps SIXXS uses it. Anyway, the SIXXS tool seems pretty slick.


One thing I'm not keen on that sixxs have done is to create a voluntary
registry of the non-central ULAs. By creating a registry, I think some
people who use it will then think that their ULA prefix is now
guaranteed globally unique and is theirs forever. If there ever was a
collision, those people are likely to point to that completely
voluntary registry and say "I had it first" and are likely to refuse
to accept that the voluntary registry has no status or authority over
the random ULA address space.

Which is part one of the three things that have to happen to make ULA
really bad for the internet.

Part 2 will be when the first provider accepts a large sum of money to
route it within their public network between multiple sites owned by
the same customer.

Part 3 will be when that same provider (or some other provider in the
same boat) takes the next step and starts trading routes of ULA space
with other provider(s).

At that point, ULA = GUA without policy = very bad thing (tm).

Since feature creep of this form is kind of a given in internet history,
I have no reason to believe it won't happen eventually with ULA.

Owen



Current thread: