New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define "private" and "local" in terms of properties of the relevant IANA registry #30
Comments
That sounds like a great idea. I'll amend the spec. |
I went through the IPv4 registry to see how the above proposal would play out concretely. Here are the special-use registrations classified by address space:
I'll want to dig into a few of these a bit more to understand whether the classifications make sense, but on a surface level they look good :) |
I think it's noteworthy that this will classify things like TEST-NET-1 as If addresses of the same type are allowed to interact freely, then |
That's fair, and simple enough to fix. How about this alternate definition?
It hardcodes the IPv4 and IPv6 loopback addresses, but otherwise defers to the registry for |
I think that sounds reasonable. |
It just happens to match the current implementation in Chromium too! 🎉 I'll see how it plays out with the IPv6 special-use registry. |
Here's the classification of the IPv6 special-use registry assignments according to the rules laid out in comment #30 (comment).
The following assignments have a
We might want to make an exception for IPv4-mapped addresses, and instead consider the address space of the embedded IPv4 address? |
A strict reading of #30 (comment) yields that both TEREDO an 6to4 should be considered I'll amend the algorithm to handle the IPv4-IPv6 mapped addresses: in that case, apply the algorithm to the encapsulated IPv4 address. Will send a PR to fix the spec. |
Fixed by #31. |
This is a subset of issue #28 , and addresses the Carrier Grade NAT / Special Use address.
Presently, the spec states:
However, the "source of truth" for these reservations is the relevant IANA registry, which captures all of the relevant reservations (such as what @thejh raised with RFC6598)
With this approach, the following rules should give equivalent results, but support the full spectrum of reserved allocations
This isn't perfect, as there are still reserved address spaces that would be treated as public.
However, this also matches Chrome's current implementation, and would cover the situation raised in Issue #28 regarding VMs
The text was updated successfully, but these errors were encountered: