DHCP server to allow clients to boot via TFTP / PXE
-
@radjunior Ok so this error can be caused by having an old version of ipxe, a broken uefi bios, or default spanning tree enabled on your building switch, where RSTP or portfast should be enabled.
So I would ensure your target computer has the latest firmware installed,
I would also test by installing a cheap unmanaged switch between pxe booting computer and building network switch. The idea that a cheap ($20USD) network switch will not support spanning tree and will keep the building switch network link up. If you can pxe boot here, then you will need to look into the stp mode on your building switch.
-
@george1421 I managed to solve it by changing from
ipxe.efi
tosnponly.efi
considering that my machines are all HP and support only UEFI boot.
I managed to enter the FOG interface but I was unable to register the device to upload the image, I get the following error:I performed tests with the notebook connected directly to my server, I disabled the option if boot security, and even then there seems to be no solution.
-
@radjunior When it drops you to the iPXE shell please run the command
imgstat
there, take a picture and post here.As well please run the following commands on your FOG server console and post output here:
file /var/www/html/fog/service/ipxe/bzImage* md5sum /var/www/html/fog/service/ipxe/bzImage*
Edit: Now that I look at it again I wonder if there is still some kind of security chip enabled in the UEFI firmware. Please double check to make sure this kind of stuff is disabled. On the other hand I’d think that secure boot would even prevent iPXE from being loaded.
-
@Sebastian-Roth
I ran theimgstat
andifstat
:
My FOG server is also my DHCP server, both operate together on Debian: 192.168.1.22
I’m new to this area, How do I open the Fog console on it?
I tried to execute the command in the Debian terminal and got no results -
@radjunior said in DHCP server to allow clients to boot via TFTP / PXE:
I’m new to this area, How do I open the Fog console on it?
I tried to execute the command in the Debian terminal and got no resultsThe normal Linux terminal/console is exactly what I meant. What do you mean by “no results”. It would either return with output or an error message (command or file not found…).
As we see
bzImage : 6057 bytes
in the picture I guess that something is really wrong with that kernel file. It’s way too small. On the other hand you say that legacy BIOS machines boot correctly, right?Run the following (modified) commands on the Debian terminal and post output here:
ls -al /var/www/{html,}/fog/service/ipxe/bzImage* file /var/www/{html,}/fog/service/ipxe/bzImage* md5sum /var/www/{html,}/fog/service/ipxe/bzImage*
-
@sebastian-roth Yes, it works perfectly in legacy BIOS mode.
Commands on the console:
Edit- I accessed via SSH and took a print, to improve the quality
-
@radjunior Ok, the files look fine. Although this seems to be a dev-branch kernel that we don’t have online anymore. Not an issue but I can’t verify the checksums.
Do you have other machines (different models) in UEFI mode that you can try PXE booting on?
-
@sebastian-roth I managed to solve by separating the servers in separate machines and installing the FOG again. I changed the Ip, I was successful, I managed to pass the registration of the machine but in the capture
ERROR:Could not mount '/dev/nvme0n1p3' ( remove page file) Args Passed: '/dev/nvme0n1pe' Reason: The disk contains an unclean file system (0,0) Metadata kept in Windows Cache, refused mount. Failed to Mount '/dev/nvme0n1p3' The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting)or mount the volume read-only with the 'ro' mount option
Edit:
FOG Server:
Version: 1.5.6
Ubuntu 10.40.0.157DHCP server = Windows Server 10.40.0.151
-
@radjunior Not sure I understand what you mean by separate the servers to solve the problem but good to hear it works now.
For the new issue please open another topic so we don’t mix things up. Helps other users to easier learn from these findings.
-
@sebastian-roth Previously I had installed Debian and installed the isc-dhcp-server package and fog in it, configured both with the same IP, a dynamic scope for boot, all according to Example 1
From that I started to find errors as presented in this topic, It was then that I had the idea of separating a VM for each one and I opted for the windows server as a DHCP server, I only changed option 66 and 67, filename = snponly.efi to boot UEFI and it worked.Edit: You can mark this topic as resolved
-
@radjunior Can’t believe that switching to Windows DHCP server would solve a kernel download issue. But hey, what do I know. Great you got this solved!