mirror of
https://github.com/xcat2/xNBA.git
synced 2024-11-22 17:41:55 +00:00
xCAT Network Boot Agent
b1ba80f8fb
When a DHCP session is started (using autoboot or a command-line `dhcp net0'), check whether the new setting use-cached (DHCP option 175.178) is TRUE; if so, skip DHCP and rely on currently registered settings. This lets one combine a static IP with autoboot. Before checking the use-cached setting, call a weak get_cached_dhcpack() hook that can be implemented by particular builds of gPXE supporting some fashion of retrieving a cached DHCPACK packet. If one is available, it is registered as an options source, and then either that packet's option 175.178 or the user's prior manual use-cached setting can allow skipping duplicate DHCP. Using cached packets is not the default because DHCP servers are often configured to give gPXE different options than they give a vendor PXE client; in order to break the infinite loop of PXE chaining, one would need to load a gPXE with an embedded image that does something more than autoboot. Signed-off-by: Marty Connor <mdc@etherboot.org> |
||
---|---|---|
contrib | ||
src | ||
COPYING | ||
COPYRIGHTS | ||
LOG | ||
README |
gPXE README File gPXE is an implementation of the PXE specification for network booting, with extensions to allow additional features such as booting via HTTP, iSCSI, and AoE. In generally, gPXE is compatible with the industry-standard PXE specification, and also supports Etherboot .nbi file loading and some additional protocols and features. For more detailed information about gPXE, please visit our project website at: http://etherboot.org/ BUILDING gPXE IMAGE FROM SOURCE If you don't want to install development tools, and have access to the Web, you can get gPXE and Etherboot ROM images made on demand from http://rom-o-matic.net/ If you would like to compile gPXE images from source, here are some tips. We normally compile gPXE images on x86, 32-bit Linux machines. It is possible to also use x86-64 machines. We use gcc compiler options to create 32-bit output. It is important to have the necessary software packages installed. A gcc-based toolchain is required. The following packages (at least) are required: - a gcc tool chain (gcc 3.x or gcc 4.x) - binutils - perl - syslinux - mtools To test your environment, cd to the "src" directory and type: make You should see a lot of output, and when it stops, the "bin" directory should be populated with gPXE images and object files. To learn more about what to build and how to use gPXE, please visit our project website at http://etherboot.org/ , particularly the "howto" section. CONTACTING US Pointers to our project mailing lists are on http://etherboot.org/ Real-time help is often available on IRC on the #etherboot channel of irc.freenode.net.