Definition

Preboot Execution Environment (PXE)

Was ist Preboot Execution Environment (PXE)?

Preboot Execution Environment (PXE), ausgesprochen Pixie, umfasst eine Reihe von Standards, die es einem Computer ermöglichen, ein Betriebssystem (OS) über eine Netzwerkverbindung zu laden. PXE kann zur schnellen Installation eines Betriebssystems verwendet werden und wird häufig sowohl für Server als auch für Clients eingesetzt. Es kann auch als PXE-Boot, Boot vom Netzwerk, Netzwerk-Boot oder LAN-Boot bezeichnet werden.

PXE kann die Bereitstellung einer großen Anzahl von Computern erheblich vereinfachen. Es ersetzt die Verwendung einer Compact Disc (CD) oder eines USB-Laufwerks zur Installation eines Betriebssystems. Ein einzelnes Betriebssystem-Image kann schnell auf vielen Computern gleichzeitig installiert werden.

PXE ist von Natur aus unsicher, da es keine native Verschlüsselung oder Authentifizierung bietet. In produktiven Umgebungen sollte das Netzwerksegment für PXE-Boot abgesichert und isoliert werden.

Wie funktioniert PXE?

PXE erfordert mehrere Standards, damit Client und Server erfolgreich booten können. Der Client muss PXE in der UEFI (Unified Extensible Firmware Interface) oder der NIC Firmware unterstützen. Das Netzwerk muss über einen konfigurierten DHCP-Server (Dynamic Host Configuration Protocol) und einen TFTP-Server (Trivial File Transfer Protocol) verfügen. In der Regel gibt es auch einen weiteren Imaging-Server.

Moderne Alternativen oder Erweiterungen wie iPXE oder das UEFI HTTP Boot nutzen HTTP statt TFTP, was deutlich höhere Geschwindigkeiten und flexiblere Boot-Skripte erlaubt. iPXE unterstützt außerdem HTTPS, iSCSI und AoE. Cloud-basierte Systeme wie Azure greifen auf Provisioning-Methoden wie Cloud-Init oder Autopilot zurück.

Der DHCP-Server verwendet die Optionen 66 und 67 im BIOS-Modus, um die IP-Adresse des PXE-Bootservers bekannt zu geben. Im UEFI-Modus kann die PXE-Kommunikation komplexer sein und je nach Firmware andere DHCP-Optionen verwenden. Oft werden die Optionen 211 oder 59 genutzt. Der Client kontaktiert dann den Boot-Server und lädt das Network Bootstrap Program (NBP) über TFTP herunter und bootet es. Das NBP ist ein kleines Betriebssystem, das nur einen Kernel, grundlegende Treiber und grundlegende Programme enthält, mit denen die restlichen Betriebssystemkomponenten heruntergeladen werden können. Windows Preinstallation Environment oder ein kleines Linux-Betriebssystem sind die gängigsten Betriebssysteme, die über einen Netzwerkboot geladen werden.

Ein Proxy-DHCP-Server kann zur Verarbeitung von PXE-Anfragen verwendet werden.

Wie funktioniert der PXE-Bootvorgang?

Hier sind die Schritte des PXE-Bootvorgangs:

1. Das BIOS des Clients initiiert den PXE-Bootvorgang. Dies kann vom Client-Bediener ausgewählt werden oder eine Ausweichoption sein, wenn andere Bootmedien ausfallen.

2. Der Client sendet eine DHCP-Anfrage und eine PXE-Anfrage.

3. Der DHCP-Server reagiert mit der DHCP-Antwort, damit der Client eine IP-Adresse festlegen kann, und sendet die IP-Adresse des TFTP-Servers und den Dateinamen des NBP zurück.

4. Der Client lädt das NBP herunter und bootet es.

Viele moderne Computer unterstützen den PXE-Boot sowohl mit IPv4 als auch mit IPv6. Es gibt einige herstellerspezifische Implementierungen des Netzwerkbootens über WLAN, aber keinen WiFi-PXE-Standard.

Der Netzwerkboot ist eine Client-Funktion. Der Code für PXE ist auf dem UEFI-BIOS der Hauptplatine oder im schreibgeschützten Speicher (ROM) der Netzwerkkarte enthalten. Er ist eine Standardfunktion auf Unternehmenscomputern und Servern, kann jedoch auf einigen Verbraucherhardwareprodukten fehlen. Auf einigen Computern muss er in der BIOS-Konfiguration des Computers aktiviert werden. Die am häufigsten verwendete Implementierung von PXE ist die Verwendung von Intel-Treibern.

Apple-Computer mit macOS unterstützen PXE nicht. Sie verwenden ein ähnliches, aber inkompatibles System namens Boot Server Discovery Protocol (BSDP). BSDP verwendete einen NetBoot-Client, um auf einen Apple-Bereitstellungsserver zuzugreifen. Apple hat NetBoot und NetInstall mit macOS Server 5.7.1 (2018) eingestellt. Heute empfiehlt Apple den Einsatz von MDM-Lösungen wie Apple Business Manager oder Apple School Manager.

Wie wird PXE verwendet?

PXE ist ein leistungsstarkes Konzept, das die Arbeit aller IT-Mitarbeiter erheblich vereinfachen kann. Es ist nützlich für Clients, Server, virtuelle Maschinen (VM) und eingebettete Geräte des Internet of Things (IoT).

PXE wird in erster Linie verwendet, um ein neues Betriebssystem auf neuen oder fehlerhaften Computern zu installieren. Dabei kann es sich um ein Client-Betriebssystem wie Windows oder Ubuntu Linux oder um ein Server-Betriebssystem wie Windows Server oder Red Hat Linux handeln. PXE kann USB-Laufwerke oder CD-ROMs als Installationsmedien ersetzen.

Die Installation eines Betriebssystems über PXE anstelle von physischen Medien hat oft viele Vorteile:

  • PXE ist bequemer, da der Netzwerkzugriff in der Regel besser verfügbar ist als ein dediziertes Bootgerät.
  • Moderne Netzwerke können schneller sein als CD- oder USB-Laufwerke.
  • Das Laden eines Images von einem zentralen Netzwerkstandort stellt sicher, dass das neueste Betriebssystem-Image verwendet wird.

PXE wird von den meisten VM-Frameworks unterstützt. Auf diese Weise kann eine neue VM generiert und dann schnell über eine Netzwerkverbindung abgebildet werden.

Eine PXE-Bereitstellung kann auch zum Hosten von Tools zum Troubleshooting und zur Wartung verwendet werden. Während des PXE-Bootvorgangs kann der NBP dem Bediener eine Auswahl an zu ladenden Betriebssystemen anbieten. Eine Organisation kann eine einfache Linux-Distribution hosten, die Hardwaretests durchführen und Tools für die erweiterte Client-Wartung bereitstellen kann, beispielsweise Tools für Festplattenklonen, Festplattenpartitionierung, sicheres Löschen von Festplatten oder Zurücksetzen von Passwörtern.

DHCP-Serveroptionen im Microsoft Server Manager
Abbildung 1: Navigieren Sie zu den DHCP-Serveroptionen im Microsoft Server Manager, um die Konfiguration für die PXE-Automatisierung vorzunehmen.

Diskless- oder Thin-Client-Computer können PXE verwenden, um bei jedem Start ein Betriebssystem zu laden. Ein Diskless-Computer verfügt über kein festes Storage auf einer Festplatte oder einem Solid-State-Laufwerk. Ein Thin Client kann ohne festen Speicher konfiguriert werden und lädt bei jedem Einschalten sein kleines Betriebssystem. Dadurch wird sichergestellt, dass keine Daten auf dem Client gespeichert werden. IoT-Geräte können auch einen PXE-Server kontaktieren, um ihr Betriebssystem automatisch zu laden.

Die Verwendung von Diskless-Servern, die bei jedem Start ein Betriebssystem über PXE laden, ist bei Hochsicherheitsservern oder Hochleistungsrechner-Clustern (HPC) sehr beliebt. Ein Hochsicherheitsserver kann sensible Kundendaten verarbeiten, sich aber in einem öffentlichen Server-Colocation-Rechenzentrum befinden. Würde der Server entfernt oder beschlagnahmt, wären auf einem Diskless-Server keine Kundendaten gespeichert.

HPC-Cluster verfügen in der Regel über Hunderte oder Tausende identischer Rechenknotenserver, die zusammenarbeiten müssen. Durch die Verwendung von PXE zum Laden des Betriebssystem-Images beim Start wird sichergestellt, dass diese Server über genau die gleiche Softwarekonfiguration verfügen und im Falle eines Ausfalls schnell zurückgesetzt werden können.

Die Verwendung von PXE zum Bereitstellen eines Betriebssystem-Images wird von vielen Bereitstellungssystemen unterstützt. Dazu gehören die folgenden:

Vorteile von PXE

Der Einsatz von PXE bietet zahlreiche Vorteile, die sowohl technische Abläufe vereinfachen als auch organisatorische und wirtschaftliche Effizienz steigern. Dazu gehören die folgenden:

  • kein Bedarf an physischen Datenträgern wie USB-Sticks, DVDs oder externen Festplatten
  • zentrale Verwaltung der Images
  • Skalierbarkeit
  • mögliche Automatisierung durch Skripte oder Deployment-Tools wie Ansible
  • Unterstützung für Windows- und Linux-Systeme
  • weniger Fehlerquellen durch Standardisierung
  • schnelle Wiederherstellung
  • erleichterte Wartung und Troubleshooting
  • Kosteneinsparungen durch Diskless-Boot

PXE auf einen Blick

PXE (Preboot Execution Environment) ermöglicht es, Betriebssysteme über das Netzwerk zu laden, ohne physische Medien wie USB-Sticks oder CDs. Es nutzt DHCP und TFTP, um ein kleines Startprogramm (NBP) bereitzustellen, das anschließend das OS installiert. PXE wird in Unternehmen, Schulen, Rechenzentren und bei Thin Clients eingesetzt, um Installationen zu automatisieren, Systeme zentral zu verwalten und Diskless-Betrieb zu ermöglichen. Moderne Varianten wie iPXE erweitern die Funktionalität.

Erfahren Sie mehr über Data-Center-Betrieb