Broadcasts of DHCPNAK: In the bullring
Mark Sirota <msirota@isc.upenn.edu> Tue, 18 June 1996 20:08 UTC
Received: from ietf.cnri.reston.va.us by IETF.CNRI.Reston.VA.US id aa04837;
18 Jun 96 16:08 EDT
Received: from CNRI.Reston.VA.US by IETF.CNRI.Reston.VA.US id aa04832;
18 Jun 96 16:08 EDT
Received: from reef.bucknell.edu by CNRI.Reston.VA.US id aa19426;
18 Jun 96 16:08 EDT
Received: from localhost by reef.bucknell.edu with SMTP
(5.65/IDA-1.2.8) id AA02441; Tue, 18 Jun 1996 15:59:52 -0400
Date: Tue, 18 Jun 1996 15:59:52 -0400
Message-Id: <31C70756.63DE@isc.upenn.edu>
Errors-To: droms@bucknell.edu
Reply-To: dhcp-v4@bucknell.edu
Originator: dhcp-v4@bucknell.edu
X-Orig-Sender: dhcp-v4@bucknell.edu
Precedence: bulk
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: Mark Sirota <msirota@isc.upenn.edu>
To: Multiple recipients of list <dhcp-v4@bucknell.edu>
Subject: Broadcasts of DHCPNAK: In the bullring
X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
X-Comment: Discussion of DHCP for IPv4
Mime-Version: 1.0
X-Mailer: Mozilla 3.0b2 (X11; I; OSF1 V3.2 alpha)
In the previous message, I quoted four passages from the latest DHCP spec, draft-ietf-dhc-dhcp-07.txt. I discovered all of that after wrestling with a problem involving the Windows 95 DHCP client, a Cisco IOS 11.1(2) router acting as a BOOTP relay agent, and the ISC DHCP Server, Beta release 4 patchlevel 5A. I had outlined this earlier to this list, but at the time I had a lot less information, and some of my conjectures and theories were just plain wrong. I would appreciate any insight as to which piece is at fault here, and what might be done to solve it, either as a temporary workaround or preferably as a permanent solution. The situation is as follows: The server sits on Subnet A. The client gets a lease on Subnet A, and is then carried to Subnet B, and is booted up. The client sends a REQUEST for the Subnet A address. The router forwards the REQUEST to the server. The server sends a NAK to the router, because the client is on the wrong subnet for the requested address. The router broadcasts the NAK (both link level and IP level) on Subnet B. The client does not seem to recognize the NAK, and so sends another REQUEST. In the converse situation, everything works fine: The server sits on Subnet A. The client gets a lease on Subnet B, and is then carried to Subnet A, and is booted up. The client sends a REQUEST for the Subnet B address. The server broadcasts a NAK (both link level and IP level) on Subnet A, ebcause the client is on the wrong subnet for the requested address. The client understands the NAK, and so responds with a DISCOVER. I have analyzed the two NAK packets in detail, one which is understood and one which is not. There are no differences that seem to matter. Both are broadcast at both the IP layer and the link layer on the client's subnet, so it should hear both. I am theorizing that the Windows 95 client is doing some sanity checks on the packet, and sees that it came through a BOOTP forwarder, and therefore doesn't like that it got there via broadcast, based on one or more of the conflicting paragraphs in the spec. I can provide details on the packets -- I have bunches of them saved up in the sniffer, if anyone cares to help tear them apart. Any and all opinions are most welcome! -- Mark Sirota, Network Systems Engineer University of Pennsylvania, Information Systems and Computing msirota@isc.upenn.edu, 215/573-7214
- Broadcasts of DHCPNAK: In the bullring Mark Sirota