Problems With PXE OVER IPVA4
-
Hello,
I am facing a problem with PXE Boot on my network. A client machine is trying to boot via PXE, but when booting from the FOG server, it displays the message “PXE over IPv4” and fails to load the image.
Environment Information:
FOG Server: Ubuntu 20.04 LTS, FOG version 1.5.x (it was working fine until recently).
Client Machines: DELL (the same machine that was working before).
Router: EdgeRouter (configured with options 66 and 67 for the FOG server).
Machine BIOS Settings: Secure Boot disabled, Fast Boot disabled, UEFI boot enabled.
Network: The client machine is on the same network/subnet as the FOG server, and there are no network changes, such as VLAN changes. -
@nicolas-moraes We have to be careful some Soho routersthe don’t behave well with pxe booting. Some will put its IP address as the boot server even if you have dhcp option 66 configured. I don’t know the edgerouter, but if there is a bootp option make sure that is turned on too.
The edgerouter is based on vyos so it should behave correctly. Make sure when you define dhcp option 66 its the IP address of the fog server and for dhcp option 67 the boot file name needs to be all lower case. Make sure you don’t have a leading or trailing white space in the name.
If you have double checked everything then get a witness computer and load wireshark on it. Make sure you setup a capture filter of
port 67 or port 68
start the scanning then pxe boot the computer until you get the error message then stop scanning.What you are looking for is the DORA sequence
Discover (sent by target computer, akin to hello world, please configure me)
Offer (sent by one or more dhcp server, I would there to be only one of these and from your edgerouter).
Request (sent by the target computer)
Ack/Nack (sent by the dhcp server)The interesting packet will be the OFFER.
Look at the packet, there should be an ethernet header section with the following fields.
Next-Server: this should be the IP address of your fog server (this is the bootp part)
Boot-FIle: this should be the name of the ipxe file to load.If either of those are blank some pxe clients will not boot if they look at the bootp fields.
In the dhcp options section you should see option 66 and 67 that should mirror the values in the bootp part.