In message <[email protected]> Brian E Carpenter writes: > On 07/08/2012 16:39, Curtis Villamizar wrote: > > In message <[email protected]> > > Brian E Carpenter writes: > > > >> On 01/08/2012 15:39, Curtis Villamizar wrote: > >>> In message <[email protected]> > >>> Brian E Carpenter writes: > >>> > >>>> Excuse front posting, but... > >>>> > >>>>> Today there is no DHCP help in avoiding the "please reboot" messages. > >>>> > >>>> Don't RECONFIGURE (DHCPv6) and FORCERENEW (DHCP) cover this, in theory? > >>>> They are unicast, which is a scaling issue in enterprise networks but > >>>> presumably not in homenets. > >>>> > >>>> Regards > >>>> Brian > >>> > >>> These only force a renew before the lease expires. For the sometimes > >>> very long IPv6 leases, this is essential. For often relatively > >>> shorter IPv4 leases, it is nice but not quite as essential. > >>> > >>> The issue is not forcing the renew to occur earlier, it is the way in > >>> which a renew that changes the address is handled. Maybe its just > >>> implementations taking a shortcut, but I think in practice changing > >>> the IP address takes the interface down, kills all connections, > >>> including listens, and then brings it back up with a new address. > >> > >> Really? I can't test it in my current native-IPv6-deprived state, but > >> it seems to me that Windows (at least) runs happily with multiple IPv6 > >> addresses on one interface, and I can't imagine that changing one of them > >> will kill the others. I have to admit I haven't studied the semantics > >> of RECONFIGURE closely, though. > >> > >> The RFC 4192 model would look a bit sick if the interfaces get reset. > >> > >> Brian > > > > Brian, > > > > Aliases (more than one address on the same interface) > > Aliases, as you describe them, sound like a hack. I'd like to > hear from Microsoft (for example) whether their support of multiple > IPv6 addresses per interface is a hack or genuine. I don't care > about IPv4, but the IPv6 model is very clear. You can't read the > ND spec and imagine the arrival of a new address resetting sessions > that use other addresses. > > Brian
Brian, An alias is a second (or third or fourth) address bound to an interface. The name alias comes from the 2+ decades old "ifconfig ... alias" syntax. Every dual stack host uses aliases - it has an IPv4 address and more than one IPv6 address. This is also true of an IPv6 only interface with interface local, ULA, and GUA addresses. Every router with a GUA on the loopback (most likely every one deployed in a major provider) has a ::1 and the GUA as an alias on the loopback. Cisco added a loopback over 15 years ago just to support this. The purpose is to have a routable address that remains regardless of which forwarding cards fail or get pulled out. In modern implementations, once an alias is installed, it is no different from the original address. You can remove the original and keep the alias, which at one point you couldn't do. That is the most significant change to aliases in decades and has also been around a very long time. Aliases are critical to renumbering so that a transition period can exist while the renumbering process is in progress with no disruption at all to hosts as they are renumbered. > > has worked on > > every OS for a decade at least. Aliases have been around in BSD for more than two decades and existed before Microsoft had an IP stack in their product and before Linux existed. I would hope that by now *even Microsoft* has got it right. Curtis > > The issue is more what occurs when a lease is withdrawn (force to > > renew and won't renew) and another lease is provided with a different > > address. AFAIK most implementations take that interface down and > > bring it back up. > > > > They do not keep the old address as an alias for some period of time > > but put new connections on the new address. > > > > Curtis > > > > > >> Its > >>> a bit like a reboot as implemented, except the user doesn't know its > >>> coming and therefore may have open TCP connections that break. BTW - "It" in this context is the existing delete old address, then add new address behavior of DHCP. > >>> What I've suggested is what to do on a renew that changes the address. > >>> Add an alias. Until the old address has no more connections or > >>> listens on the old address, keep the old address. Then remove the old > >>> address. > >>> > >>> If someone has an open connection, ssh for example, the old address > >>> could be in use indefinitely, but if the transition is weeks, then its > >>> unlikely to go beyond that. For example, if someone was using ssh to > >>> do a long compile on another machine, breaking the connection and > >>> killing the compile would be bad. There are certain to be plenty of > >>> other uses of long duration TCP connections that would have to be > >>> broken in this sort of transition, unless we can also extend TCP to > >>> negotiate a change to one side of the address pair. > >>> > >>> Curtis _______________________________________________ homenet mailing list [email protected] https://www.ietf.org/mailman/listinfo/homenet
