This error indicates that DHCP has timed out without receiving a response from a DHCP server.
Things to try:
* Check that your DHCP server is online and responding to requests.
* Check your DHCP server logs. For example, if you are using ISC dhcpd, you should see something like dhcpd: DHCPDISCOVER from 00:18:f3:f0:9e:61 via eth0
dhcpd: DHCPOFFER on 10.0.0.171 to 00:18:f3:f0:9e:61 via eth0
dhcpd: DHCPREQUEST for 10.0.0.171 (10.0.0.6) from 00:18:f3:f0:9e:61 via eth0
dhcpd: DHCPACK on 10.0.0.171 to 00:18:f3:f0:9e:61 via eth0
* After the failed DHCP attempt, check the output from the ''[[:cmd:ifstat]]'' command to see if iPXE is receiving any packets (the "''RX''" counter) or experiencing receive errors (the "''RXE''" counter).
* Try configuring an appropriate static IP address on the iPXE client, using the iPXE [[:cmdline|command line]]. For example, to configure the static IP address 10.0.0.199/255.255.255.0: ifopen net0
set net0/ip 10.0.0.199
set net0/netmask 255.255.255.0
Check that you can ''ping'' this IP address from your DHCP server.
* Try [[:howto:pcap|capturing a packet trace]].
* Verify [[http://www.cisco.com/en/US/products/hw/switches/ps708/products_tech_note09186a00800b1500.shtml|portfast]] is enabled (Cisco networking equipment) or [[http://lists.ipxe.org/pipermail/ipxe-devel/2012-August/001748.html|increase the iPXE DHCP timeout]]
{{ :clipart:dragon.png?134x132 |Here be dragons}}
* If you are using iPXE with KVM/Xen and your networking is based on a bridge device you Must make sure to include the bridge option: bridge_fd 0 , by default the bridge will timeout for 15 seconds once It "sees" the interface for the first time (i.e. boot...) setting to 0 will force the bridge to immediately pass the DHCP request
=== Advanced troubleshooting ===
You can use a [[:howto:pcap|packet trace]] to determine which types of DHCPOFFER have been received by looking at the "seconds elapsed" field in any DHCP packets transmitted by iPXE:
^ Bit 0 | Indicates that a DHCPOFFER containing PXE options has been received |
^ Bit 1 | Indicates that a DHCPOFFER containing an IP address has been received |
For example, suppose that the packet trace shows a DHCPDISCOVER containing:
{{ :screenshots:wireshark_dhcp_secs.png?339x168 |DHCP packet showing "Seconds elapsed: 14"}}
The "seconds elapsed" value in this example is 14, which is 0b1110 in binary. Bit 1 is set, indicating that a DHCPOFFER containing an IP address has been received. Bit 0 is not set, indicating that no DHCPOFFER containing PXE options has been received.