Difference between revisions of "PXE native boot menu"

From Syslinux Wiki
Jump to: navigation, search
(add comments in dnsmasq.conf)
m (Wiki formatting. Add links. Typos.)
 
Line 1: Line 1:
 
=== What is PXE native boot menu ===
 
=== What is PXE native boot menu ===
The PXE specification [http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf] requires that compliant agent (i.e network card) support a simple menu system to select the image to download and execute.
+
<span id="ref1"></span>
 +
The PXE specification  
 +
<sup><small>&#91;[[#lref1|1]]&#93;</small></sup>,
 +
requires a compliant agent (i.e. network card) supporting a simple menu  
 +
system so as to select the image to be downloaded and executed.
  
The menu entries are provided through DHCP protocol (by the DHCP server or a [[PXE boot server]]).
+
The menu entries are provided through DHCP protocol  
 +
(by the DHCP server or a [[PXE boot server]]).
  
 
[[Image:native_pxe_menu.png]]
 
[[Image:native_pxe_menu.png]]
  
 
=== Requirements ===
 
=== Requirements ===
* 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)...
+
* Two or more OS deployment servers, like <!--
* Don't want to mess-up integrating one boot menu in the other.
+
--> ISC's dhcp + HPA's tftpd, <!--
* No old PXE newtork card.
+
--> dnsmasq, <!--
 +
--> Microsoft RIS / WDS, <!--
 +
--> IBM Tivoli provisioning manager (TPM), <!--
 +
--> Symantec/Altiris Deployment Service (DS)...
 +
* Don't want to mess-up integrating one boot menu within the other.
 +
* No old PXE network card.
  
 
=== Using dnsmasq to provide a PXE menu ===
 
=== Using dnsmasq to provide a PXE menu ===
  
Let's configure dnsmasq as DHCP server, and provide some entries:
+
Let's configure dnsmasq as DHCP server, and provide some entries.
  
A simple /etc/dnsmasq.conf:
+
A simple <tt>/etc/dnsmasq.conf</tt>:
<pre> ### Usual DHCP stuffs ###
+
<pre>
 +
### Usual DHCP stuffs ###
 
  dhcp-range=192.168.0.110,192.168.0.120,255.255.255.0
 
  dhcp-range=192.168.0.110,192.168.0.120,255.255.255.0
 
  dhcp-option=option:router,192.168.0.1
 
  dhcp-option=option:router,192.168.0.1
  
 ### PXE's native menu ###
+
### PXE's native menu ###
 
  pxe-prompt="Choose:"
 
  pxe-prompt="Choose:"
 
  pxe-service=x86PC, "Boot from local disk", 64
 
  pxe-service=x86PC, "Boot from local disk", 64
Line 28: Line 39:
 
  # See dnsmasq(8) for explanation of pxe-service syntax.
 
  # See dnsmasq(8) for explanation of pxe-service syntax.
 
</pre>
 
</pre>
 +
 
See:
 
See:
 
* [http://www.thekelleys.org.uk/dnsmasq/doc.html dnsmasq Homepage]
 
* [http://www.thekelleys.org.uk/dnsmasq/doc.html dnsmasq Homepage]
Line 33: Line 45:
  
 
=== Using other tools to provide a PXE menu ===
 
=== 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.
+
It should be possible to use other DHCP servers and [[PXE boot server]]  
Your contribution is welcome
+
to provide the PXE native menu.
 +
Your [[Contact|contribution]] is welcome.
  
 
=== License ===
 
=== License ===
 
This page is dual license under GFDL 1.2 and CC-BY-SA 2.5
 
This page is dual license under GFDL 1.2 and CC-BY-SA 2.5
 +
 +
== References ==
 +
 +
* <span id="lref1">1</span>. <sup><small>[[#ref1|&#94;]]</small></sup> <!--
 +
--> The Preboot Execution Environment (PXE) Specification version 2.1, <!--
 +
--> originally located (but no longer found) at <!--
 +
--> [http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf] <!--
 +
--> can be <!--
 +
--> [https://web.archive.org/web/20061114170438/download.intel.com/design/archives/wfm/downloads/pxespec.pdf retrieved from the Wayback Machine].

Latest revision as of 16:23, 19 October 2018

What is PXE native boot menu

The PXE specification [1], requires a compliant agent (i.e. network card) supporting a simple menu system so as to select the image to be downloaded and executed.

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

Native pxe menu.png

Requirements

  • 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 within the other.
  • No old PXE network 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 ###
 dhcp-range=192.168.0.110,192.168.0.120,255.255.255.0
 dhcp-option=option:router,192.168.0.1

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

See:

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.

License

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

References