[ipxe-devel] TFTP prefix configuration and pxelinux

Yann Genevois yann.genevois at inrialpes.fr
Tue May 24 10:45:35 BST 2011


i'd like to boot a host from different ways using a database:  ipxe, pxelinux, local boot.. but i can't manage ipxe and pxelinux together.

In my dhcpd.conf file i have this:

if exists user-class and option user-class = "iPXE" {
                filename = concat("http://${next-server}/cm/engine/boot_ipxe.php?FILENAME=",binary-to-ascii(16, 8, ":", substring (hardware, 1, 6)));
      } else if exists user-class and option user-class = "rawpxe" {
                filename = "PXEClient/pxelinux.0";
      } else {
                filename "ipxe/undionly.kpxe";

So when an host is booting, i can load the boot_ipxe.php script. This script is launching a shell script to determine what kind of boot the host has to do, querying a database. So i've managed successfully  booting from ipxe and from a local disk but when i'm trying to boot from  PXElinux it's not working.

In the documentation of the chain command(http://ipxe.org/cmd/chain) i have found some explanation:

"If this command is executed from within an iPXE script, then the URI will be interpreted as being relative to the URI of the script itself. For example, if the script http://boot.ipxe.org/demo/boot.php contains the line

  chain pxelinux.0

then iPXE will download and boot http://boot.ipxe.org/demo/pxelinux.0."

I have successfully load the pxelinux.0 file but when PXE starts i can read this:

TFTP prefix: http://${next-server}/cm/engine/boot_ipxe.php?FILENAME=xxxxx

That's why i can't boot from a classical PXE process... so this is my question, is there a way to change the TFTP prefix using iPXE? Even when i used the command "chain tftp://.../pxelinux.0", the TFTP prefix refers to the original script path.
In my PHP script i have something like this:  

echo "#!ipxe\n";
echo "set user-class rawpxe\n";
echo "chain tftp://\${next-server}/PXEClient/pxelinux.0\n";

Any ideas? AM i missing something? 

Thank you for your help, if it's unclear, don't hesitate to contact me.

Best regards,
',',',',',',',' Yann GENEVOIS                         | INRIA - MESCAL
',',',',',',',' Ingénieur Expert - Projet Computemode | 655, avenue de l'Europe
',',',',',',',' Yann.Genevois at inrialpes.fr            | 38330 Montbonnot St Martin

More information about the ipxe-devel mailing list