The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 807 - File: showthread.php PHP 7.3.15 (Linux)
File Line Function
/showthread.php 807 errorHandler->error





Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
iPXE booting a preloaded pxelinux.0
2014-04-15, 10:57
Post: #1
iPXE booting a preloaded pxelinux.0
Hi Everyone,

I have managed to successfully boot a an IBM firmware update (called: ToolsCenter) pxelinux.0 file from iPXE
My iPXE script is as follows:
Code:
chain http://${next-server}/pxelinux.0

However what happens is, even though pxelinux.0 loads using http in ipxe, the moment it executes it looks to load the rest of the stack from tftp:
Code:
/var/lib/tftpboot
(I'm using Centos)

from there it grabs the default file:
Code:
/var/lib/tftpboot/pxelinux.cfg/default

The contents of the default file is as follows:

Code:
prompt 0
default toolscenter
timeout 100
label toolscenter
display bsb.msg
kernel /UpdateFirmware/img2a
append initrd=/UpdateFirmware/img3a vga=0x317 root=/dev/ram0 rw ramdisk_size=100000 tftp_server=192.168.99.1 tftp_tcrootfs=/UpdateFirmware/tcrootfs tftp_tczip=/UpdateFirmware/tc.zip debug_level=1 silent_boot=no boot_src=4 iommu=soft ipstatic6=auto

The tool works perfectly fine, however pxelinux.0 loads img2a and img3a using TFTP and for some reason its SUPER slow !
As a matter of fact if I boot the pxelinux.0 directly by changing some parameters in the dhcpd.conf file, the same exact stack: pxelinux.0, img2a, img3a boot three if not four times as fast.

I've tried chaining iPXE -> gPXE -> pxelinux.0 (ibm) however the sluggish tftp performance remains.

I'm wondering is it possible to preload the 3 files in iPXE before execution so they don't need to be downloaded via pxelinux.0 (via tftp) ?

i've tried the following:
Code:
initrd http://${next-server}/ibmstk/UpdateFirmware/img3a
initrd http://${next-server}/ibmstk/UpdateFirmware/img2a vga=0x317 root=/dev/ram0 rw ramdisk_size=100000 tftp_server=192.168.10.1 tftp_tcrootfs=/UpdateFirmware/tcrootfs tftp_tczip=/UpdateFirmware/tc.zip debug_level=1 silent_boot=no boot_src=4 tftp_blksize=1420 iommu=soft ipstatic6=auto
chain http://${next-server}/ibmstk/pxelinux.0

however what ends up happening is the initrd preloads are ignored and as soon as pxelinux.0 executes it looks to download from the tftp directory: /var/lib/tftpboot

Is there a way around this ?
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
iPXE booting a preloaded pxelinux.0 - jhonny - 2014-04-15 10:57



User(s) browsing this thread: 2 Guest(s)