In your letter dated Wed, 16 Apr 2014 09:07:46 -0400 you wrote:
>Philip Homburg <[email protected]> wrote:
>    > Does that include all edge cases and the user interface?
>
>    > I.e. DHCPv4 has configured an address and by mistake a RA orders IPv4
>    > to be
>    > shutdown. Do you just shutdown IPv4? Does your code parse the output of
>    > ifconfig to figure out if the interface was configured?
>
>No, and no.
>
>The order is not to shutdown v4.  The suggestion is to stop DHCPv4, if it
>hasn't succeeded, and assume that there isn't any IPv4 for any downstream
>devices.

(This was in the context of FreeBSD.)

One option: the DHCPv4 client has an option to shutdown unless it already
obtained a lease. Probably requires allocating a signal, changes to the
DHCPv4 client, etc.

Otherwise, what happens if you kill a DHCPv4 client when it has a lease?
- A hard kill (-9) and the address remains installed even when the lease
  expires. Not good.
- (Unlikely) A hard kill and the kernel knows about the lifetime of the lease
  and deletes the address when it expires. This one would be really great to
  debug. Send one 'ipv4begone' packet and hour later the admin goes crazy.
- A soft kill (say TERM) and DHCPv4 removes the address before shutting down.
  Nice immediate DoS on IPv4.

Alternative, ifconfig $interface | grep 'inet '...
Ugly.

And unless all of this is spelled out in the RFC in extreme detail, I can
already see the presentations in a couple of years: we sent one 'ipv4begone'
packet and this is the kind of fireworks you get in the various operating
systems.

Somebody might just go ahead and implement
'grep "option no-ipv4" /var/db/dhclient6.leases.eth0 && pkill dhclient'
...

_______________________________________________
homenet mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/homenet

Reply via email to