[ipxe-devel] IPXE dhcp authoritative bug ?

Michael Brown mcb30 at ipxe.org
Tue Jan 29 14:38:47 UTC 2019

On 29/01/2019 09:17, Joakim Tjernlund wrote:
> I have had non functional tftp from within ipxe from time to time and finally I think I
> have tracked it down. Every now and then there is an non authoritative dhcp server
> on the network and IPXE dhcp seems to prefer that one over the authoritative dhcp server.
> The built-in PXE in BIOS/EFI prefers the authoritative dhcp server.
> All in all, this seems like a bug to me in IPXE dhcp.

If you have conflicting DHCP servers on your network then you would 
expect to see undefined behaviour.

You can work around your problem by explicitly specifying the 
iPXE-specific DHCP server priority option.  For ISC dhcpd, use something 

   option space ipxe;
   option ipxe-encap-opts code 175 = encapsulate ipxe;
   option ipxe.priority code 1 = signed integer 8;

   option ipxe.priority 1;

> Question, it would be nice if one could inherit the IP params from BIOS(UEFI) PXE so
> one can skip running dhcp in IPXE, is that possible ?

For legacy BIOS, yes.  If you start iPXE and drop to a shell, you'll see 
that the NIC is already configured using the parameters obtained by the 
original PXE ROM.  If you like, you can use an embedded script that will 
then attempt to boot without first attempting DHCP.

Note that this is often a bad idea.  DHCP clients must explicitly 
request a parameter list.  There is a good chance that your original PXE 
client will not have requested parameters that are needed by iPXE (e.g. 
a DNS server address).

In UEFI, there is not yet any support for this.


More information about the ipxe-devel mailing list