iPXE is the leading open source network boot firmware. It provides a full PXE implementation enhanced with additional features such as:
iPXE is free, open-source software licensed under the GNU GPL (with some portions under GPL-compatible licences), and is included in products from several network card manufacturers and OEMs.
The easiest way to start experimenting with iPXE is to use the bootable ISO image. Burn the ISO image to a CD-ROM (or DVD-ROM) and boot from it. You should soon see a welcome banner such as:
iPXE -- Open Source Network Boot Firmware -- http://ipxe.org Features: HTTP iSCSI DNS TFTP AoE FCoE TFTP COMBOOT ELF PXE PXEXT Press Ctrl-B for the iPXE command line...
Ctrl-B at this point, and you should reach the iPXE command line:
You can list the network devices that iPXE has detected using the
iPXE> ifstat net0: 52:54:00:12:34:56 using rtl8139 on PCI00:03.0 (closed) [Link:up, TX:0 TXE:0 RX:0 RXE:0]
and acquire an IP address using the
iPXE> dhcp DHCP (net0 52:54:00:12:34:56).... ok
You can examine the IP configuration and other DHCP options:
iPXE> route net0: 10.0.0.155/255.255.255.0 gw 10.0.0.1 iPXE> show dns net0.dhcp/dns:ipv4 = 10.0.0.6
You can boot something over the network. Unlike a traditional PXE ROM, iPXE is able to boot over a wide area network such as the Internet. If the machine you are testing is connected to the Internet, you can boot the iPXE demonstration script:
iPXE> chain http://boot.ipxe.org/demo/boot.php