Casper.Dik at Sun.COM writes:
> 
> 
> >That's not legal, for the reason given above.  DHCP servers check for
> >address in use (by ARP and ICMP) before assigning them to clients.
> >
> 
> And what is the rest doing?  What happens if you don't give up the
> address?

By "the rest," I assume you're referring to DHCP servers that somehow
manage to ignore the text in section 3.1(2) of RFC 2131, and thus fail
to check whether the address is in use before handing it out again.

In that case, the server thinks that (since the lease expired), the
address is free to be reused.  When the address is eventually reused,
the other client that gets your still-in-use address is _required_ to
check whether that address is errantly in use (section 3.1(5)), and
send DHCPDECLINE if it is.  When it gets your address, it'll see that
you're still using it, and refuse to configure it.

That DHCPDECLINE message generally causes the server to mark the
address as "unusable" so that it's taken out of the address pool.  As
in the previous case (where the server detects the duplicate), the
results are the same: addresses leak out of the pool, because nobody
knows who is supposed to be using them.

> (My systems have a a "pkill -9 dhcpagent" when it sees a "drop/release"
> message).  The system then works.

Yes; it's possible to damage the daemon in order to obtain the
behavior you need for some special situation, but I think it'd be far
better if we redesigned the interaction to eliminate the "special"
cases.

-- 
James Carlson, Solaris Networking              <james.d.carlson at sun.com>
Sun Microsystems / 35 Network Drive        71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677

Reply via email to