Subject: [dhcwg] Re: udhcpd Win98 interoperability

From: Russ Dill <[email-masked]>
Date: 21 Aug 2002 15:38:44 -0700

> Hmm... I looked up RFC2131 and found that the server in fact MUST remain silent if it   
> has no notion of the client AND the network is correct. But if the network is not  
> correct, the server SHOULD send NAK.   
>    
> If you consider a notebook being plugged from time to time to different subnets, the  
> remain silent behavior is quite ugly. The user would have to wait some days for the 
> lease to time out before being able to access the network. 

ok, I'm actually a little confused, here is my parsing of the rfc

If the DHCP server detects that the client is on the wrong 
net, then the server SHOULD send a DHCPNAK message to the
client.

If the network is correct, then the DHCP server should
check if the client's notion of its IP address is correct.

If not, then the server SHOULD send a DHCPNAK message to
the client.

If the DHCP server has no record of this client, then it
MUST remain silent, and MAY output a warning to the
network administrator. This behavior is necessary for
peaceful coexistence of non-communicating DHCP servers on
the same wire.

at first, everything is simple

if (wrong net) {
	should nak;
} else {
	if (!ok ip) {
		should nak;
	}
}

but then the "If the DHCP server has no record of this client" clause is
thrown in. At what stage of the block does this go in? I would say this
clause would go *before* 'if (wrong net)'.

I'll cc this to the Dynamic Host Configuration working group. Hopefully
they'll have some answers.

_______________________________________________
dhcwg mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/dhcwg

---

From: Ted Lemon <[email-masked]>
Date: Thu, 22 Aug 2002 12:11:04 -0500

> clause would go *before* 'if (wrong net)'.

No, if you do that, then DHCP clients will never get new addresses when 
they move to new networks where the DHCP server doesn't know them.   The 
purpose of the "no record" clause is to prevent the DHCP server from NAKing 
simply because the DHCP client has an IP address that the server doesn't 
know about, but that is on the correct network.   I.e., to allow two DHCP 
servers to serve the same network.