[ipxe-devel] Chain loading ipxelinux from pxelinux

Pereira pereira at informatik.uni-freiburg.de
Tue Sep 18 13:41:59 UTC 2012


On 09/14/2012 07:09 AM, H. Peter Anvin wrote:
> On 09/11/2012 07:28 AM, Pereira wrote:
>> Hi,
>>
>> I have a question regarding chain loading ipxelinux from within 
>> pxelinux.
>> We are trying to integrate IPXE into our network boot environment due to
>> the benefit from faster data transmission rates with the featured http
>> functionality. So far our TFTP server hands out ipxelinux.0 with the
>> embedded pxelinux
>> to the clients upon boot and DHCP request. It is possible to load system
>> files over HTTP and even chain load to other pxelinux bootloaders with
>> the chainloader.com module.
>>
>> Particularly what is not working is chain loading from ipxelinux to
>> ipxelinux; and chain loading from pxelinux to ipxelinux.
>> The machines just reboot without any further message.
>>
>> The problem is that other departments point to our bootloader so we are
>> required to have a solution that takes a minimum amount of changes,
>> especially to the existing bootmenu entries from other departments. So
>> the basic idea was to simply replace pxelinux with ipxelinux on our
>> servers.
>>
>> Any debugging tips or hints would be greatly appreciated!
>>
>
> pxelinux.0 is what version?
>
>     -hpa
>
>

I use version 4.0.6 from the same syslinux package as ipxelinux from 
this source -> http://git.ipxe.org/people/mcb30/syslinux.git
I think the problem is with the pxechain module, it doesn't seem to work 
with ipxelinux nor with gpxelinux...

But I found a workaround, it is possible to start ipxelinux.0 as a 
kernel. In the ipxe script of ipxelinux I manually set the dhcp 
next-server option to be the one of the server ipxelinux is loaded from, 
thats what pxechain does normally.

e.g. If ipxelinux is on 10.4.9.1 the script would look like this:

#!ipxe
set use-cached 1
dhcp net0
set net0/dhcp.next-server 10.4.9.1
set net0/dhcp.filename ipxelinux.0
imgload pxelinux.0
boot pxelinux.0

this way it is possible to chain load from pxelinux to ipxelinux, from 
ipxelinux to ipxelinux and with the pxechain module it is possible to 
chain load from ipxelinux to pxelinux. That's all we need :)

Thanks everyone,
Michael




More information about the ipxe-devel mailing list