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:
  • 1 Vote(s) - 1 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Passing state/args/data to chainloaded iPXE
2016-02-22, 17:53
Post: #1
Passing state/args/data to chainloaded iPXE
How do I easily pass state/args/data from iPXE, to another chainloaded iPXE binary? I have to do a multi-stage boot chain, to load an iPXE binary with the correct console output device (serial COM1, COM2, VGA, etc), and break the loop afterwards.

My use case, step by step:
  1. Network card's native PXE stack requests DHCP.
  2. DHCP server returns the file parameter pointing to undionly.kpxe or snponly.efi, depending on architecture.
  3. First-stage iPXE requests DHCP.
  4. DHCP server detects feature flags and user-class, and returns file parameter pointing to http://install/netboot.ipxe?op=consoledetect&product=${smbios/product}
  5. Server-side netboot.ipxe script cleans up SMBIOS product string, and maps it to another iPXE filename, such as: undionly_serialcom1.kpxe, undionly_serialcom2.kpxe, snponly_serialcom1.efi, etc. All combinations are built and available.
  6. First-stage iPXE chainloads the second-stage iPXE binary.

At this point, how can the second-stage iPXE binary know that it is at the second stage, and then set a user-class that will indicate this to the DHCP server? (Which will then return the main iPXE boot script to the client.)

While I could build a set of binaries that embed a script that sets the user-class to "iPXE-stage2" or something, it makes it rather inflexible.

Can I instead embed a single script that can be used in both stage 1 and 2, and have access to some sort of variable/argument that tells it to set the DHCP user-class option?
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
Passing state/args/data to chainloaded iPXE - svenx - 2016-02-22 17:53



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