Date:        Mon, 13 Jan 2020 10:13:04 +0000
    From:        "Schwarz, Konrad" <konrad.schw...@siemens.com>
    Message-ID:  
<a45b1767f1002449a37508c2cc6003d7172c9...@defthw99em4msx.ww902.siemens.net>

  | I actually feel this problem is out-of-scope for POSIX: compliant machines
  | are not supposed to dynamically change their IP addresses at run-time.

I have no idea what (if anything) POSIX says about IP networking
requirements, but I'd expect not much, but that (if it were stated
somewhere) would be an error.

Staticaally assigned IPv4 (or even IPv6) addresses do not tend to
change much, but just about no-one uses those any more.

If you obtain your address (v4 or v6) via DHCP, then when your host
goes to renew the lease, the server can decline, and instruct you
(your DHCP client) to request a new address, at which point it can
give out whatever is appropriate, not necessarily even slightly
related to what was there before.

For v6 without DHCP, using stateless autoconfiguration, the router
advertises a (or more than one) local network prefix, with a lifetime,
and can alter that prefix whenever it is required.

One of the real problems with networking in the 80's was dealing with
client networks that needed to be renumbered - the workload for any
reasonable sized network was prohibitive.  One of v6's goals was to
defeat that problem (it wasn't only about more addresses).   In the
meantime v4 has switched away from static configs (/etc/hosts or the
equivalent) or from BOOTP for hosts without static storage, and to
DHCP (where the 'D' really does mean dynamic) which some v6 sites
also use (some odd notion of the network managers actually being able
to control things that way, which is incorrect, but gives the net admins
a warm fuzzy feeling, and it is what they have become used to with v4).

All that said, I agree that anything related to this issue would be out
of scope for POSIX, but the more general problem of threaded applications
(which it must be, that's the only way that the process can be simultaneously
closing & opening sockets, while also, unknown to itself, also forking)
and the interactions wrt fork & threads, is a POSIX issue.   That the
actual problem is networking related is just a side issue, I believe.

kre   (IAB member during the period all this network transition started).

Reply via email to