[Eisfair] Probleme mit PXE

Manfred Witzkor mansewitz at freenet.de
Mo Sep 14 23:17:04 CEST 2015


Am 14.09.2015 um 23:01 schrieb Manfred Witzkor:
> Also mal ein paar einfache Dinge als Grundlage.
>
> Wenn du einen Client im Bios auf "Boot from LAN" stellst passiert
> folgendes.
>
> 1. Er versucht einen DHCP Server zu finden
> 2. Er versucht einen tftp-Server zu finden
> 3. Er versucht ein Bootfile zu finden
>
>
> Der Eisfair stellt also zunächst mal DHCP zur Verfügung. Über das Paket
> tftpd (welches nur aktiviert werden muß) exisitert ein tftpd Server.
> Wenn das ein anderer Server sein sollte, müßte die dhcpd-Konfig einen
> Eintrag für "next-server" haben.
>
> Nun wird zunächst vom Client aus versucht ein bootfile zu laden
> (pxelinux.0). Implizit wird dann geschaut, ob es ein File "default" im
> Ordner pxelinux.cfg gibt. Wenn ja, bootet er das, ansonsten wird
> geschaut, ob ein File mit der MAC-Adresse vorhanden ist.
>
> In diesem File stehen dann die anderne Dinge, z.b. was er booten soll,
> oder aber wo er das File für sein menü findet. Die ganze Menügeschichte
> verläuft implizit über z.B. vesamenu.c32 aus dem Paket syslinux (google).
>
> Also im Prinzip ganz einfach.
>
> Zum testen müsstest du also nur den TFTPd starten, den DHCP starten und
> einen client ins lan booten zu lassen und so kannst du alles ausprobieren.


Mein Halbwissen nochmal etwas präzisiert:

Also mal ein paar einfache Dinge als Grundlage.

Wenn du einen Client im Bios auf "Boot from LAN" stellst passiert folgendes.

1. Er versucht einen DHCP Server zu finden
2. Er versucht einen tftp-Server zu finden
3. Er durchsucht den tftpd-Order (Standard: /tftpboot) und versucht ein 
Bootfile zu finden (pxelinux.0)


Der Eisfair stellt also zunächst mal DHCP zur Verfügung. Über das Paket 
tftpd (welches nur aktiviert werden muß) exisitert ein tftpd Server. 
Wenn das ein anderer Server sein sollte, müßte die dhcpd-Konfig einen 
Eintrag für "next-server" haben, den er soweit ich weis nicht zur 
Verfügung stellt, d.h. er kann zumindest selbst als tftpd-Server fungieren.

Nun wird zunächst vom Client aus versucht ein bootfile aus /tftpboot 
(gemäß Konfig) zu laden (pxelinux.0). Implizit wird dann geschaut, ob es 
ein File "default" im Ordner pxelinux.cfg gibt. Wenn ja, bootet er das, 
ansonsten wird geschaut, ob ein File mit der MAC-Adresse vorhanden ist.

In diesem File stehen dann (im Klartext) die anderen Dinge, z.b. was er 
booten soll, oder aber wo er das File für sein menü findet. Die ganze 
Menügeschichte verläuft implizit über z.B. vesamenu.c32 aus dem Paket 
syslinux (google).

Also im Prinzip ganz einfach.

Zum testen müsstest du also nur den TFTPd starten, den DHCP starten und 
einen client ins lan booten zu lassen und so kannst du alles ausprobieren.


Mehr Informationen über die Mailingliste Eisfair