iPXE discussion forum

Full Version: How boot iPXE script over pxelinux ?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I have own configured server TFTPD32 with DHCP and TFTP (pxelinux.0 + menu default). Now I learned that HTTP protocol is faster than TFTP to load ISO images. I want change loading ISO images to HTTP protocol in file default. I make script for boot over HTTP protocol:
initrd http://192.168.xxx.xxx:port/mxp14.iso
chain memdisk iso
How to do it?
LABEL image
kernel mxp14.ipxe
but this not working :-(

I know that this working in menu.ipxe booted from TFTP like this:
echo ISO over HTTP
chain mxp14.ipxe
goto start
but i want this with menu default. Is this is possible?

If this is not possible please help me how boot ISO over HTTP automatic other way.
Build your ipxe.pxe/undionly.kpxe with that script embeded.
make bin/ipxe.pxe EMBED=ipxe.script.ipxe

Then rename ipxe.pxe to ipxe.pxe.0, and move to tftp folder.

From pxelinux label.
LABEL ipxe http iso
kernel ipxe.pxe.0

Or just use gpxelinux.0 or ipxelinux.0, from some of the latest syslinux releases.
And then you can have http directly from pxelinux.
LABEL http iso
kernel memdisk
append iso raw initrd=
I downloaded syslinux 5.01. Copying new pxelinux.0 and gpxelinux.0 to root folder TFTPD32:
If boot from gpxelinux.0 boot stop at:
gPXE 1.0.0...
DHCP using cached
PXELINUX 5.01 2013-01-28 Copyright © 1994-2013 H. Peter Anvin et al
and menu default not working :-(
If boot from new pxelinux.0 boot stop at:
PXELINUX 5.01 2013-01-28 Copyright © 1994-2013 H. Peter Anvin et al
Failed to load ldlinux.c32
and not menu default :-( and after add file ldlinux.c32 boot and files lib*.c32 to syslinux folder stop at:
PXELINUX 5.01 2013-01-28 Copyright © 1994-2013 H. Peter Anvin et al
Unable to locate configuration file
Peter really messed with the PATH and new files lib*.c32 :-(
OK, after many attempts Angry Angry succeeded with new files syslinux 5.01. To upgrade PXELINUX 3.86 to 5.01 need copy this files from syslinux-5.01.zip to root TFTP directory:
  • pxelinux.0 (replace old)
  • vesamenu.c32 (replace old)
  • ldlinux.c32
  • libcom32.c32
  • libutil.c32
and add this entry in "default" menu to working ISO over HTTP:
LABEL winxp
kernel http://192.168.xxx.xxx/memdisk
initrd http://192.168.xxx.xxx:port/images/mxp14.iso
append raw iso
Of course, also run a HTTP server such as Apache

But some things I do not like:
  • not working automatic boot (TIMEOUT 100 in menu default) :-(
  • vesamenu appears until after 10 seconds after message PXELINUX 5.01.... but this is only sometimes !!? In old version 3.86 vesamenu appears faster.
[attachment=48] --> in this time I see in TFTPD32 that ldlinux.c32 is loading
Reference URL's