IPXE

Open-source implementation of the Preboot eXecution Environment


title: "IPXE" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["network-booting", "free-boot-loaders", "free-network-related-software"] description: "Open-source implementation of the Preboot eXecution Environment" topic_path: "general/network-booting" source: "https://en.wikipedia.org/wiki/IPXE" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Open-source implementation of the Preboot eXecution Environment ::

::data[format=table title="Infobox software"]

FieldValue
nameiPXE
developeriPXE project
released
latest release version1.21.1
latest release date
latest preview date
programming languageC
genreBoot loader
licenseGPLv2+
website
::

|name = iPXE |logo = |screenshot = |caption = |collapsible = |author = |developer = iPXE project |released = |latest release version = 1.21.1 |latest release date = |latest preview version = |latest preview date = |programming language = C |operating system = |platform = |size = |language = |status = |genre = Boot loader |license = GPLv2+ |website =

iPXE is an open-source implementation of the Preboot eXecution Environment (PXE) client software and bootloader, created in 2010 as a fork of gPXE (gPXE was named Etherboot until 2008). It can be used to enable computers without built-in PXE capability to boot from the network, or to provide additional features beyond what built-in PXE provides.

While standard PXE clients use only TFTP to load parameters and programs from the server, iPXE client software can use additional protocols, including HTTP, iSCSI, ATA over Ethernet (AoE), and Fibre Channel over Ethernet (FCoE). Also, on certain hardware, iPXE client software can use a Wi-Fi link, as opposed to the wired connection required by the PXE standard.

The iPXE client is a superset of, and can replace or supplement, prior PXE implementations.

iPXE is the official replacement for gPXE. It has every feature of gPXE, and users can seamlessly upgrade from gPXE to iPXE.

PXE implementation

iPXE can be booted by a computer either by replacing (re-flashing) the existing standard PXE ROM on a supported network interface card (NIC), or by booting the NIC's standard PXE ROM and then chainloading into the iPXE binary, thus obtaining its features without the need to re-flash a NIC. iPXE firmware embeds its configuration script into the firmware image, thus any changes to the configuration require a NIC to be re-flashed.

iPXE implements its own PXE stack either by using the network card driver provided by iPXE, or the standard PXE UNDI driver if iPXE is chainloaded from a standard PXE ROM. Implementing an independent PXE stack allows clients without the standard PXE ROM on their NICs to use an alternative iPXE stack by loading it from an alternative medium.

Boot manager

Although its basic role was to implement a PXE stack, iPXE can be also used as a network boot manager with limited capabilities for menu-based interaction with end users. iPXE can fetch boot files using multiple network protocols, such as TFTP, NFS, HTTP or FTP.

iPXE can act as a boot loader for the Linux kernel, with support for multiboot. For other operating systems, for example Windows CE, iPXE chain-loads corresponding Microsoft boot loader. Additionally, iPXE is scriptable and can load COMBOOT and COM32 SYSLINUX extensions, which, for example, allows SYSLINUX-based graphical menu capabilities to be available for network booting.

References

References

  1. "Tags".
  2. [http://ipxe.org/faq ipxe.org - iPXE FAQs], 2011-12-02

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

network-bootingfree-boot-loadersfree-network-related-software