I fully agree with these comments from Ray. Basically, when hardware changes on
some router it is pretty much given that some address will change somewhere.
And I don't think fully stable addressing is a good goal to begin with. Make
the devices survive addressing changes, and we'll be fine.
Initial ULA generation before any connectivity with the Internet can be reached
is fine, however.
Jari
On 22.03.2012 14:49, Ray Hunter wrote:
As requested by Tim: My comments on ULA use in Homenet posted in consolidated
manner to the issue tracker.
I think Homenet still has a lot of work to do, especially due to the autoconfig
requirements.
Everyone wants autoconfig.
Concurrent ULA + PA + both with autoconfig + invariant addresses is likely
going to be tough, if not downright impossible.
So why do we think we really need concurrent ULA+PA in Homenet as a base
requirement? I'm not entirely convinced yet.
Issue 1: One reason ULA seems to be mentioned is "time-invariance of addressing for
use by sensor networks."
Using the example of an electrician setting up a sensor network in a home
before an ISP is present, and expecting time-invariant ULA addresses. Firstly,
the electrician would have to generate a Global ID for ULA when the lights are
installed. The electrician can generate a unique Global ID (and hence the /48
prefix of ULA) using the procedure in RFC4193.
Problems with this are:
1) The /48 ULA prefix is tied to a time (when the electrician pressed the "generate
ULA" button)
If a user regenerates the ULA prefix later, the algorithm will generate a
different /48 prefix: all addresses in the house will change
2) The /48 ULA prefix is tied to a MAC address (of the router or device used to
seed the ULA prefix generation algorithm)
If a user changes router hardware, the /48 prefix will change. Or else the seed
stored in non-volatile memory will be lost when hardware is replaced. Again all
addresses in the house will change
3) The Global ID portion of the ULA has to be manually assigned to each of the
routers (if there's more than one) as there's no mechanism to distribute Global
IDs today.
Homenet needs autoconfiguration.
4) Even if the /48 prefix is made invariant, the /64 LAN prefix generated from
it probably won't be invariant as hardware is added, replugged or removed.
Again, OK for manual configuration like an enterprise network, but Homenet
wants autoconfig.
I don't see how "complete time-invariance of addressing" is achievable
together with autoconfig, even if we call for an equivalent site-local addressing with a
fixed /48 prefix that is common to all Homenet implementations everywhere. We've been
down that rathole before. Site-local has been deprecated in RFC3879. And realistically
speaking, any time someone replaces or adds or re-plugs any router hardware, the LAN's
/64 prefix will change when using autoconfig.
I think it would be useful for the Homenet WG to propose a scheme for sensor networks to be able to maintain simple peerings despite the presence of time-variant addressing [whether these are ULA, PA, PI, IPv4 or whatever]. In fact, it would seem to me that a peering solution should use something that is long-term invariant as an identifier for keying the peering e.g. EUI-64 a.k.a. MAC BIA or DHCP DUID, and not the IPv6 address at all. The invariant identifier could be automatically registered by each sensor as a name in the Homenet naming service. Peers could resolve that name to the current IPv6 address and then verify the peering using their own protocol like HMAC_MD5 with a shared secret (RFC2104). Loss of connection would trigger a new address resolution, reconnection, and peer check. Agreeing the shared secret is peering specific (and has to be solved anyway even with fixed addresses). I have an asterisk hardware phone that does something similar to this, so it can't
require much code.
Issue 2: Use of multiple ULA Global ID's in Homenet may also cause problems
with source address selection (3484-revise). There is no way to know which
ULA's are connected to the local Homenet, and which are distributed on remote
Homenets spread over the Internet. This causes problems with potential ULA
leakage, and in determining priority between PA-derived addresses and ULA
addresses when both are available and the default 3484 or 3484-revise rules are
followed.
A workaround might be to be redistribute a non-default RFC3484-revise policy
table to all end nodes via draft-fujisaki-dhc-addr-select-opt-07, but its not
clear that all end nodes will support this mechanism, nor how the contents of
the policy table would be managed in a distributed and automated manner.
Issue 3: A reason concurrent ULA+PA seems to be required was that "intra-homenet
communication should survive a long term ISP outage, and must be able to be established
without any ISP connection present."
The first linkage would appear to be when ISP PA-derived prefixes within
Homenet timeout via DHCPv6 PD meaning that a long-running session based on this
address would drop. That has nothing directly to do with ULA, and may have
other solutions.
Question: How long are ISP's setting their DHCPv6 PD timers in practice? Simply
recommending very long timers for the DHCPv6 PD PA-derived prefix might be a
practical solution. How often has your ISP connection been down for say 10 days?
Another solution might be for the application to reconnect using another
PA-derived address (if the user has two providers).
The second linkage may also have other solutions, such as only configuring a
ULA prefix when no PA-derived prefixes are present.
That would mean at any one time the Homenet could potentially be running either ULA or
multiple PA, but not both, which completely avoids any address selection conflicts and
having to redistribute new RFC3484 address selection rules to all nodes. Simply put:
"Please reboot or reconnect to fix any problems."
regards,
RayH
homenet issue tracker wrote:
#4: Use of ULAs
CN1 in the -02 text says ULAs should be provisioned by default. Do we
agree? And if so, should they be preferred over globals? The new
3484-bis has changed so they are not *unless* a specific /48 for the site
is added to the 3484 policy table with higher precedence than globals. We
should design something that works when disconnected from the Internet.
Also, we currently say nothing about ULA-only devices and their
reachability from outside the homenet; do we want to?
_______________________________________________
homenet mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/homenet
_______________________________________________
homenet mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/homenet