ietf
[Top] [All Lists]

Re: Renumbering

2007-09-13 14:44:42

How do you renumber the IP address stored in the struct sockaddr_in
in a
long running critical application?

Disconnect current session, reconnect.
Uh, not unless your application has some sort of retry or
checkpoint-restart capability.   SMTP is pretty resilient in the face of
connection breakage, and for some interactive applications you just hit
"retry" or the equivalent, which has caused some people to think that
somehow it's okay if the network changes a host's IP addresses out from
under it.  But it doesn't work in general.
And for that matter, a DNS name is not a host name, and hasn't reliably
been a host name since at least the mid 1980s.   Just because you get
address A1 from doing a lookup on a name at time T1 and an address A1
from doing the same lookup at time T2, doesn't mean that those addresses
will connect to the same (layer 3 or higher) stack.

So even if we somehow magically changed our existing transport protocols
to be able to support changes to endpoint addresses on the fly, DNS
names as they are currently used are not suitable as endpoint
identifiers for such a purpose.  At best, existing DNS names serve as
identifiers for the initial contact only.

This falls under the heading of "nobody is stopping us from doing this
and it works today so now it's a feature and it can never be taken away". 
No, it just means that people shouldn't assume that existing DNS names
(i.e. the ones we're already using to identify hosts and services) will
work as endpoint identifiers for the purpose of connection restart.  
People are using DNS names to name things that aren't hosts (e.g.
services or groups of hosts) for valid reasons and any solution that
destroyed this functionality would be a non-starter.

As for renumbering, on a Cisco router, I can make the following
configuration:

[deleted for brevity]
This way, the router obtains an IPv6 prefix dynamically from a DHCPv6
prefix delegation server and then sends out router advertisements
using that prefix. So you can renumber the router and all the hosts
connected through it by changing one entry in a DHCPv6 server config. 
That's the least of the problems with renumbering.  A few years ago I
was involved in renumbering of a class B IPv4 network.  DHCP and DNS
doesn't even begin to cover it.
Even with the current state of the art I'd say that renumbering
clients is not a big deal. Renumbering servers is more difficult, though.
The distinction between client and server is fairly meaningless.  It's
certainly not something you want to assume in a renumbering
architecture.  Every host is a server in some sense.

Keith


_______________________________________________
Ietf mailing list
Ietf(_at_)ietf(_dot_)org
https://www1.ietf.org/mailman/listinfo/ietf

<Prev in Thread] Current Thread [Next in Thread>