PXE (Preboot eXecution Environment) is an Intel specification to boot from the network after BIOS POST. It comes embedded in the firmware of network cards in most desktop/server class devices available in the market today. When booted in the network mode, PXE code executes and sends out a DHCP request packet. The DHCP server in the LAN responds and the device gets an IP. The DHCP (or ProxyDHCP) also points at the next server from where the device can download the next boot file over TFTP.
iPXE extends PXE by providing more options to boot from:
- boot from a web server via HTTP
- boot from an iSCSI SAN
- boot from a Fibre Channel SAN via FCoE
- boot from an AoE SAN
- boot from a wireless network
- boot from a wide-area network
- boot from an Infiniband network
- control the boot process with a script
iPXE is licensed under GNU GPL and is open source. There two ways to use iPXE in a production environment:
- Flash iPXE binary to the network card firmware
- Chainload iPXE from generic PXE using DHCP’s next-server configuration option
iPXE can boot WinPE, SCCM and is compatible with WDS.
To try iPXE download the bootable ISO from the home page and follow the instructions. iPXE has a command-line mode to play around and get accustomed, like get IP address, check route etc. Refer to the documentation section of the project for details.