Hi good day, can anybody please assist me to get PXE booting with
syslinux, and EFI systems. PXE EFI Architecture-7 (64bit)?
What I have tried:
1) Syslinux 6.03 -> Looks like a bug -> does not work because
syslinux.efi tries to download ldlinux.e64 but from the DHCP server, in
stead of the PXE boot server (the server that provided "option 60" and
the boot file "syslinux.efi").
2) Syslinux? 6.04-pre3 -> Works better but still I get stuck as follows...
2.1) The PXE client [VM #1 = A bridged network VM running on Host #1]
starts from boot. Does discovery.
2.2) The DHCP server [Host #2] provides an IP successfully. The PXE
client will accept it (Discover-Offer-Request-Ack successful using the
given IP afterward).
2.3) My PDHCP server (or PXE boot server if you will) [Host #3] provides
the boot file "efi64/syslinux.efi" with all required options like for
example "option 60=PXEClient" etc. The client accepts it and downloads
+
executes syslinux.efi.
2.4) syslinux.efi launches on the client (it displays a progress message
on screen), and it starts download of "efi64\ldlinux.e64".
2.5) Using wireshark on Host #1 (which will see all network traffic from
VM #1), the PXE client finishes the download successful, it gets and
Ack's the last TFTP block. But then it tries to download ldlinux.e64
again (from the boot server of course, which is correct in that regard)
- but from different directories in the following order...
[efi64//boot/isolinux/ldlinux.e64] -> TFTP response "file not
found".
[efi64//isolinux/ldlinux.e64] -> TFTP response "file not found".
[efi64//boot/syslinux/ldlinux.e64] -> TFTP response "file not
found".
[efi64//boot/syslinuxldlinux.e64] -> TFTP response "file not
found".
[efi64//ldlinux.e64] -> Success. It makes a complete download up to the
last TFTP block. And this is where the EFI bios then continues booting
the system next device. I.e. the PXE boot stops / aborts / does not
complete.
Notes: I am looking for a generic solution to boot any distribution I
may wish to, and hopefully one that works the same way pxelinux.0 (or
lpxelinux.0) does, by means of a MAC based default file. My legacy boot
works 100%, just not EFI yet.
Thanks in advance.
John.
(Feel free to go low level on me, I've been making PXE boot solutions
for a number of years, and the boot server code is my own)