PXE-Boot vom Netgate Pfsense SG-3100

Zuletzt verändert am 24. Juli 2026 • 3 Min. Lesezeit • 445 Wörter
Um Linux ohne CD, DVD oder USB-Stick zu installieren, nutze ich mittlerweile das PXE-Booten („Pixie“-Booten) in unserem lokalen Heimnetzwerk.
PXE-Boot vom Netgate Pfsense SG-3100
Bild von Michael Jeltsch

Um Linux ohne CD, DVD oder USB-Stick zu installieren, nutze ich mittlerweile das PXE-Booten („Pixie“-Booten) in unserem lokalen Heimnetzwerk. Ich konnte keine guten Anleitungen finden und musste ein wenig herumprobieren, bis es funktionierte, aber der Vorgang an sich ist recht einfach. Hier sind die Schritte:

  1. Installiere den TFTP-Server über „System > Paketmanager“
  2. Passe den DHCP-Server an („Dienste > DHCP-Server“): TFTP-Server: 192.168.1.1 (interne Netzwerkadresse des pfSense-Routers) Aktivieren Sie „Netzwerk-Boot aktivieren“ Nächster Server: 192.168.1.1 Standard-BIOS-Dateiname, UEFI-32-Bit-Dateiname und UEFI-64-Bit-Dateiname: pxelinux.0
  3. Nun können Sie den Inhalt von http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/  in das Verzeichnis /tftpboot hochladen (beachten Sie, dass Sie sich bei Verwendung von scp nicht als „admin“ anmelden können, sondern müssen stattdessen „root“ als Anmeldenamen verwenden; dieses unlogische Verhalten kostet weltweit wahrscheinlich viele hundert Stunden verschwendete Administratorzeit).
  4. Wie erwartet funktionierte es nicht auf Anhieb. Der Client erhält die Boot-Anweisungen, kann aber keine Verbindung zum TFTP-Server herstellen:[…]CLIENT-IP: 192.168.1.86 MASKE: 255.255.255.0 DHCP-IP: 192.168.1.1 GATEWAY-IP: 192.168.1.1 PXE-E32. TFTP-Zeitüberschreitung beim Öffnen PXE-M0F: Intel Boot Agent wird beendet Zunächst dachte ich, dass eine Firewall den Zugriff auf Port 69 blockiert, aber das war nicht der Fall. Es war jedoch schwierig, diese Dinge zu klären, da pfsense beim Scannen des Ports lediglich „port filtered“ meldet:nmap -p 69 192.168.1.1Starting Nmap 7.60 ( https://nmap.org  ) am 02.11.2019 um 10:39 Uhr EET Nmap-Scanbericht für pfsense.localdomain (192.168.1.1) Host ist erreichbar (Latenz 0,00033 s).PORT ZUSTAND DIENST 69/tcp gefiltert tftp Nmap abgeschlossen: 1 IP-Adresse (1 Host aktiv) in 0,26 Sekunden gescannt
  5. Aus irgendeinem seltsamen Grund wurde das Netzwerk-Booten durch Klicken auf „Netzwerk-Booten aktivieren“ nicht aktiviert. Vor allem wird der TFTP-Server nicht gestartet! Daher müssen Sie zu „Dienste > TFTP-Server“ gehen, das Kontrollkästchen „Aktivieren Sie den TFTP-Dienst“ aktivieren und 192.168.1.1 in das Feld „TFTP-Server-Bind-IP“ eingeben. pfsense ist eine tolle Sache, aber die Benutzeroberfläche ist überhaupt nicht einheitlich: Manchmal werden Dinge im Hintergrund für Sie erledigt, ohne dass Sie darüber informiert werden (z. B. bei der NAT-Konfiguration), aber manchmal lässt es Sie im Unklaren darüber, ob es eine notwendige Autokonfiguration durchführt, wie in diesem Fall …
  6. Das nächste Problem war, dass die erforderlichen Dateien nicht gefunden werden konnten: […] „Failed to load ldlinux.c32“ „Boot failed: press a key to retry, or wait for reset“ … Dies scheint ein Fehler im Zusammenhang mit dem Speicherort der Datei in der Verzeichnisstruktur des Ubuntu-Netzwerk-Bootvorgangs zu sein. Man muss lediglich die Datei „ldlinux.c32“ von /tftpboot/ubuntu-installer/amd64/boot-screens/ldlinux.c32 nach /tftpboot/ldlinux.c32 kopieren
  7. Das nächste Problem hatte ich mir selbst zuzuschreiben. Ich hatte das Verzeichnis „ubuntu-netboot“ mit dem rekursiven Befehl „wget“ heruntergeladen, und aus irgendeinem Grund hatte „wget“ alle Dateinamen im Verzeichnis „boot-screens“ auf 8 Zeichen gekürzt, und ich hatte das Verzeichnis hochgeladen, ohne dies zu überprüfen.Fehler beim Laden der COM32-Datei „ubuntu-installer/amd64/boot-screens/vesamenu.c32“. Nachdem ich diesen Fehler behoben hatte, konnte ich endlich den Netzwerk-Installer starten.