My vote: Devices with ULA only should be regarded as having no IPv6 at all unless an active test can demonstrate connectivity (as in, through an NPTv6 device) RIPE Atlas acts as a connectivity observatory. A ULA is the equivalent of an unconnected node. It is not broken; it is, by design, limited to local connectivity, and should always be that way. If a device has no global IPv6 address, it should be regarded as IPv6 incapable, not IPv6 broken. The situation where my probes have ULA: An upstream Linksys router supports IPv6 and provides a ULA. Since it has no connectivity from the MSO, it does not provide a global address. It may provide site-local IPv6 routing, but never IPv6 Internet routing. Therefore, it should be regarded as not IPv6 capable. There may be an NPTv6 gateway that will provide IPv6 connectivity for ULA devices, but I will argue that this is less common that the home router providing unrouteable ULA. However, that case NPTv6 should be readily detectable. RE: Are CPEs doing the right thing - the HOMENET IETF group is very concerned about that question, and actively wrestling with it. https://datatracker.ietf.org/wg/homenet/documents/ On Wed, Mar 25, 2015 at 9:31 AM, Philip Homburg <philip.homburg@ripe.net> wrote:
Dear community members,
The RIPE Atlas team has a question what to do with probes that have only a Unique Local IPv6 Unicast Address (ULA) [RFC4193] as their IPv6 address. The question is whether to treat those probes as IPv6 capable or not.
It is known that about 10% of the RIPE Atlas probes that have IPv6 addresses do not actually have IPv6 connectivity. This was documented by Stéphane Bortzmeyer in his RIPE Labs article "How Many RIPE Atlas Probes Believe They Have IPv6 (But Are Wrong)?" ( https://labs.ripe.net/Members/stephane_bortzmeyer/how-many-atlas-probes-beli... )
As a way of dealing with this problem, the RIPE Atlas system now tags probes that have broken IPv6. Any probe that has an IPv6 address (other than link local) but cannot reach the global internet is tagged as "IPv6 Doesn't Work" (see https://atlas.ripe.net/docs/probe-tags/)
At the moment, around 2800 probes are connected and have an IPv6 address. Of those probes, around 350 (12.5%) are tagged that IPv6 doesn't work. Of those 350 probes, 114 have the surprising condition that the connect system call fails immediately with the error 'Network is unreachable.'
Those 114 probes have two things in common, they have only a ULA address and the do not have a default route. It is the lack of default route that causes the connect system call to fail immediately.
This feature (ULA and no default route) is specified in RFC-7084 (IPv6 CE Router Requirements) requirement ULA-5 ("An IPv6 CE router MUST NOT advertise itself as a default router with a Router Lifetime greater than zero whenever all of its configured and delegated prefixes are ULA prefixes.") The surprising thing is that for some probes this condition persists for many months.
For the Atlas project, the question is how we should treat these probes. Currently they are regarded as having broken IPv6 connectivity. However, an alternative is to consider those probes as having no IPv6 at all.
Broader questions are: are CPEs doing the right thing here. Should a CPE announce a ULA on the local LAN even if there hasn't been any IPv6 internet connectivity for a very long time? It is already complex enough for normal users to understand that there is always a link local IPv6 address even if there is no IPv6 connectivity. Now we have to add ULA to that group as well.
So the question to the community, should RIPE Atlas treat ULAs in the same way as RFC-1918, addresses that should be ignored unless a valid global address can be found elsewhere. Or should we keep the current approach where ULAs are treated just like other global IPv6 addresses and consider the probe host's network setup to be broken?
Philip