Het mailing list,

I'm having a problem getting DHCP requests to complete.  I originally posted 
this problem in the iPXE forum:http://forum.ipxe.org/showthread.php?tid=24
 
I apologize for the length of the following email, but I wanted to be thorough.
 
I found iPXE because I needed a PXE client that supported vlan tagging. I've 
been using it successfully for months, but just recently it stopped having 
successful DHCP exchanges. I did a Wireshark capture of the DHCP exchange 
between the client and the DHCP server (which also serves out the pxelinux.0 
later) and there is a full DHCP exchange, but there are a ton of repeated 
packets on the part of the diskless client. He sends around 10 DHCP discovers 
before he realizes that he's been getting DHCP offers, and h e sends another 10 
DHCP requests, receiving DHCP ACKs all the while. The problem is, the DHCP 
request in iPXE eventually times out. I guess the client is just ignoring the 
ACKs that I'm seeing it receive (I'm mirroring its port on its switch, which is 
how I'm able to monitor the exchange).
 
I'm not a complete expert on DHCP, is there some sort of timeout for each 
request, where if he doesn't receive an OFFER after his DISCOVER he sends 
another DISCOVER, ignoring any OFFERs that eventually come in from previous 
DISCOVERs?
 
I'm just really trying to figure out why none of the ACKs I clearly see him 
receive are taking, and I'm thinking maybe the ACKs are taking too long? The 
DHCP server works just fine for some other hardware I have (not using iPXE, 
just built-in Intel PXE).
 
Is there some way I can do a DHCP in verbose mode or something to get more 
information about how iPXE is processing the DHCP it gets?
 
I did a Wireshark capture of a different machine using the Intel PXE boot 
loader that supports VLAN tagging (on different hardware) and compared the 
packets with iPXE, and I noticed that there were different DHCP options set, 
such the Broadcast flag being set to Unicast on iPXE.
 
Now I've disabled VLAN tagging to make sure it wasn't messing anything up. I've 
used both chainloading and boot CD in the past, both have worked. As a test for 
hardware failure, I used the trusty boot CD that has always worked on another 
machine with identical hardware, still doesn't work now. I'm seeing tons of 
repeated DHCP packets from the client and he's ignoring the ACKs I'm seeing him 
receive. He must eventually receive a DHCP OFFER from the server he likes 
because he does e ventually send (10) DHCP REQUESTs. And once in a blue moon, 
like once every 25 reboots, he takes the IP. Once in a while, he likes the ACK 
he's receiving or it comes fast enough (like I said, I have no idea if DHCP 
requests time out and how often).
 
The worst part is that the Intel PXE bootloader works just fine, does a perfect 
DHCP request (since I disabled VLAN tagging, I was able to test using the 
default Intel program).
 
The network card in question is an Intel 8086:105e and I was using a version 
from a couple months ago (ipxe-HEAD-72d387e) but now I'm using the latest 
version of iPXE, just captured it from the source and built it yesterday.
 
Most recently I removed all VLANs and attempted DHCP with the Intel PXE loader 
that came with the hardware. It takes a while but succeeds. I then resta rted 
and did an identical test with iPXE from my boot CD. Nothing.  I'm starting to 
think it has to do with how long the iPXE waits for DHCP but I'm not sure.
 
It's just so frustrating when something used to work, and then just doesn't, 
you know?

--Mike
_______________________________________________
ipxe-devel mailing list
[email protected]
https://lists.ipxe.org/mailman/listinfo/ipxe-devel

Reply via email to