PXE native boot menu

From Syslinux Wiki
Jump to: navigation, search

What is PXE native boot menu

The PXE specification [1] requires that compliant agent (i.e network card) support a simple menu system to select the image to download and execute.

The menu entries are provided through DHCP protocol (by the DHCP server or a PXE boot server).

Native pxe menu.png


  • Two or more OS deployment servers, like ISC's dhcp + HPA's tftpd, dnsmasq, Microsoft RIS / WDS, IBM Tivoli provisioning manager (TPM), Symantec/Altiris Deployment Service (DS)...
  • Don't want to mess-up integrating one boot menu in the other.
  • No old PXE newtork card.

Using dnsmasq to provide a PXE menu

Let's configure dnsmasq as DHCP server, and provide some entries:

A simple /etc/dnsmasq.conf:

 ### Usual DHCP stuffs ###

 ### PXE's native menu ###
 pxe-service=x86PC, "Boot from local disk", 64
 pxe-service=x86PC, "PXE-Linux", "pxelinux"
 pxe-service=x86PC, "PXE-Linux on", "pxelinux",
 pxe-service=x86PC, "ACME Deployment server", "acme",
 # See dnsmasq(8) for explanation of pxe-service syntax.


Using other tools to provide a PXE menu

It should be possible to use other DHCP servers and PXE boot server to provide the PXE native menu. Your contribution is welcome


This page is dual license under GFDL 1.2 and CC-BY-SA 2.5