iPXE ist eine quelloffene Implementierung der Client-Firmware und Bootloader Preboot eXecution Environment (PXE), die 2010 als Abspaltung von gPXE geschaffen wurde. Sie kann verwendet werden, um Rechner zu befähigen, ohne eingebaute PXE-Unterstützung über das Netzwerk zu booten oder eine vorhandene PXE-Client-Implementierung zu erweitern, so dass sie zusätzliche Protokolle unterstützt.

iPXE
Basisdaten

Aktuelle Version 1.21.1[1]
(31. Dezember 2020)
Programmiersprache C[2]
Lizenz GNU General Public License, Version 2.0 oder später[3]
https://ipxe.org

Während standardisierte PXE-Clients TFTP verwenden, um Daten zu übertragen, fügt die nicht-standardisierte Client-Firmware iPXE die Fähigkeit hinzu, Daten über andere Protokolle einschließlich HTTP, iSCSI, ATA over Ethernet (AoE) und Fibre Channel over Ethernet (FCoE) zu empfangen. Auch kann die iPXE-Firmware mittels unterstützender Geräte eine Wi-Fi-Verbindung verwenden, anstatt unbedingt eine verkabelte zu erfordern. Die iPXE-Firmware kann nicht als vollständiger Ersatz für PXE-Firmware betrachtet werden.

iPXE ist der offizielle Nachfolger zu gPXE. Jede in gPXE vorhandene Funktion ist ebenso in iPXE vorhanden und Nutzer können nahtlos von gPXE zu iPXE wechseln.

PXE-Implementierung Bearbeiten

iPXE kann von einem Rechner entweder durch Ersetzen (Re-flash) des vorhandenen Standard-PXE-ROM einer geeigneten Netzwerkkarte (NIC) oder durch Booten des Standard-PXE-ROMs des NIC und nachfolgendem Laden der iPXE-Binärdatei erfolgen. Damit kann dessen Funktionalität erhalten werden, ohne dass die Notwendigkeit besteht, den NIC zu re-flashen. Grundsätzlich ist es aber so, dass PXE-Firmware ihr Konfigurationsskript in das Firmwareabbild einbettet, daher erfordern alle Änderungen an der Konfiguration einen Re-Flash des NIC.

iPXE implementiert seinen eigenen PXE-Stack, entweder durch Verwendung des von iPXE bereitgestellten Netzwerkkartentreibers oder den Standard-PXE-UNDI-Treiber, wenn iPXE nach dem Standard-PXE-ROM geladen wird. Das Implementieren eines unabhängigen PXE-Stacks ermöglicht es Clients ohne Standard-PXE-ROM auf ihren NICs einen alternativen iPXE-Stack durch Laden von alternative medium.

Boot-Manager Bearbeiten

Obwohl das Hauptziel des Projektes war, einen PXE-Stack zu implementieren, kann iPXE auch als Netzwerk-Boot-Manager verwendet werden, der über begrenzte Fähigkeiten für die menübasierte Interaktion mit Endbenutzern verfügt. iPXE kann Boot-Dateien unter Verwendung verschiedener Netzwerkprotokolle empfangen, wie TFTP, NFS, HTTP oder FTP.

iPXE kann als Bootloader für den Linux-Kernel, mit Unterstützung für Multiboot, eingesetzt werden. Bei anderen Betriebssystemen, beispielsweise Windows CE, lädt iPXE nachfolgend den entsprechenden Microsoft-Bootloader. Darüber hinaus ist iPXE durch Skripte steuerbar und kann COMBOOT und COM32 SYSLINUX-Erweiterungen laden, die es beispielsweise ermöglichen SYSLINUX-basierte grafische Menüfunktionen für das netzwerkbasierte Booten zur Verfügung stellen.

Siehe auch Bearbeiten

Einzelnachweise Bearbeiten

  1. Release 1.21.1. 31. Dezember 2020 (abgerufen am 20. Februar 2024).
  2. The ipxe Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
  3. iPXE - open source boot firmware [licensing]. (abgerufen am 13. November 2018): „The majority of iPXE is licensed under the GNU GPL version 2 (or, at your option, any later version)

Weblinks Bearbeiten