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.

You can use iPXE to replace the existing PXE ROM on your network card , or you can chainload into iPXE to obtain the features of iPXE without the hassle of reflashing.

iPXE is the leading open source network boot firmware. It provides a full PXE implementation enhanced with additional features such as:

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...

Press Ctrl-B at this point, and you should reach the iPXE command line:

iPXE>

You can list the network devices that iPXE has detected using the ifstat command:

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 dhcp command:

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