PXE-T01: File Not Found Error
-
Server: 1.5.7
OS: Ubuntu 18.4.2Client:
OS: Windows 7 HomeHi, team. I installed fog server in a computer with Ubuntu 18 and after installation I want to image another computer with Windows 7 Home but when I configured all the host information and I installed the fog client in Windows 7, when rebooting, I got the error saying:
PXE-T01: File Not Found Error
PXE-E3B: TFTP Error - File Not Found
But I could see that the server IP and the client IP is correct.I could not get control of the DHCP configuration, so I did what it said it the website said. Using FOG with an unmodifiable DHCP server/ Using FOG with no DHCP server
The version of Dnsmasq is 2.79.
-
@weidongyan OK before we go too deep into debugging I want you to use my dnsmasq configuration exactly.
# Don't function as a DNS server: port=0 # Log lots of extra information about DHCP transactions. log-dhcp # Set the root directory for files available via FTP. tftp-root=/tftpboot # The boot filename, Server name, Server Ip Address dhcp-boot=undionly.kpxe,,<fog_server_IP> # Disable re-use of the DHCP servername and filename fields as extra # option space. That's to avoid confusing some old or broken DHCP clients. dhcp-no-override # inspect the vendor class string and match the text to set the tag dhcp-vendorclass=BIOS,PXEClient:Arch:00000 dhcp-vendorclass=UEFI32,PXEClient:Arch:00006 dhcp-vendorclass=UEFI,PXEClient:Arch:00007 dhcp-vendorclass=UEFI64,PXEClient:Arch:00009 # Set the boot file name based on the matching tag from the vendor class (above) dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI,ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI64,ipxe.efi,,<fog_server_IP> # PXE menu. The first part is the text displayed to the user. The second is the timeout, in seconds. pxe-prompt="Booting FOG Client", 1 # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86, # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI # This option is first and will be the default if there is no input from the user. pxe-service=X86PC, "Boot to FOG", undionly.kpxe pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi dhcp-range=<fog_server_ip>,proxy
Make sure you replace
<fog_server_ip>
(exactly) with the ip address of your fog server. Then restart the dnsmasq service.If that change doesn’t fix the issue, then lets go ahead and grab a pcap of the conversations between the dhcp server, dnsmasq service and the pxe booting client using the tutorial link I provided.
ref: https://forums.fogproject.org/topic/8725/compiling-dnsmasq-2-76-if-you-need-uefi-support
-
I did know that I need to configure the option 66 67. But is there any other method I could apply with? Because for some reason I could not configure the DHCP setting. And I tried to image the computer with CentOS 7 and when booting I got the same error.
-
You have a couple of different paths you can go for a solution. You need to pick one and we will work through what is not working.
-
Use your existing dhcp server to supply pxe boot information to the target computer. This method works the best and is (should be) the easiest to setup. If your existing dhcp server is linux based or windows 2012 or newer dhcp server they can be configued to dynamically switch the boot file name based on the type of pxe booting computer. There is instructions on the FOG Wiki page on how to do this.
-
If your dhcp server doesn’t have the capabilities to send out pxe boot information or you can’t edit your dhcp server for some reason you can use dnsmasq on your FOG server to send out pxe boot information only. In this configuration the dnsmaq server will only provide pxe boot info via the ProxyDHCP process, your main dhcp server will still provide IP address allocation. The only down side to this approach is when your pxe booting target computers are on a different subnet than your fog (dnsmasq) server. In this case you will need to update the dhcp-relay/dhcp-helper service on your subnet router to have the dnsmasq server listed as the very last server in the dhcp-helper service server list.
Please pick a path and we can then work on fixing the troubles.
-
-
Do note that if your main DHCP server is already sending out PXE boot options then it will still cause issues as far as I’m aware.
-
@george1421 Hi George, I found that my computer did find the fog server IP, so right now I think there is something wrong with THTP functions. The client computer did not find any booting file from fog server. How could I solve this problem.
-
@weidongyan Is your FOG server and target computer on the same IP subnet?
-
@Quazz Hi Quazz, I think you are right. Because I have set up the ProxyDHCP and when booting the client computer could find the fog server IP. So right now I think it is the THTP that has some issues. Look like the client computer could not find the booting file in fog server IP. How could I solve this problem.
-
@george1421 I am using my company’s network, and two computers are using the lans near by. So I think they should be in the same IP subnet.
-
@weidongyan Physical location doesn’t necessarily imply same IP subnet.
I’ll need to know which of the methods you want to have setup (either 1 or 2), because the debugging steps are slightly different.
Either way, follow the outline in this document to capture a pcap file of the pxe booting process. Then upload the file to a file share site (i.e. google drive, dropbox, etc). Post the link here in the forum and I will take a look at it. Make the link security shareable to who ever has the link. Once the file has been reviewed you can remove the file from your file share site.
https://forums.fogproject.org/topic/9673/when-dhcp-pxe-booting-process-goes-bad-and-you-have-no-clue
-
@george1421 I used method 2 to set the DHCP. The link is the picture taken when booting.
https://drive.google.com/file/d/14OLcAnl0gqqjGk6AWl8fstnL7fiSpiH3/view?usp=drivesdk -
@weidongyan OK before we go too deep into debugging I want you to use my dnsmasq configuration exactly.
# Don't function as a DNS server: port=0 # Log lots of extra information about DHCP transactions. log-dhcp # Set the root directory for files available via FTP. tftp-root=/tftpboot # The boot filename, Server name, Server Ip Address dhcp-boot=undionly.kpxe,,<fog_server_IP> # Disable re-use of the DHCP servername and filename fields as extra # option space. That's to avoid confusing some old or broken DHCP clients. dhcp-no-override # inspect the vendor class string and match the text to set the tag dhcp-vendorclass=BIOS,PXEClient:Arch:00000 dhcp-vendorclass=UEFI32,PXEClient:Arch:00006 dhcp-vendorclass=UEFI,PXEClient:Arch:00007 dhcp-vendorclass=UEFI64,PXEClient:Arch:00009 # Set the boot file name based on the matching tag from the vendor class (above) dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI,ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI64,ipxe.efi,,<fog_server_IP> # PXE menu. The first part is the text displayed to the user. The second is the timeout, in seconds. pxe-prompt="Booting FOG Client", 1 # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86, # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI # This option is first and will be the default if there is no input from the user. pxe-service=X86PC, "Boot to FOG", undionly.kpxe pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi dhcp-range=<fog_server_ip>,proxy
Make sure you replace
<fog_server_ip>
(exactly) with the ip address of your fog server. Then restart the dnsmasq service.If that change doesn’t fix the issue, then lets go ahead and grab a pcap of the conversations between the dhcp server, dnsmasq service and the pxe booting client using the tutorial link I provided.
ref: https://forums.fogproject.org/topic/8725/compiling-dnsmasq-2-76-if-you-need-uefi-support
-
@george1421 it is working now !!! I think I did this before like what it says in the fog server wiki. But this time after editing with your same configuration, my windows 7 began to image. Thank you so much for helping me solving this problem. Thank you!!!
-
@weidongyan That’s great.
We probably should get the wiki page updated with my configuration file since we know it works well every time. The one on the wiki pages has a few missing commands.
-
@george1421 Exactly the config you posted below is mentioned here: https://wiki.fogproject.org/wiki/index.php?title=ProxyDHCP_with_dnsmasq#Install_dnsmasq_on_CentOS_7
Should we update this wiki article as well? https://wiki.fogproject.org/wiki/index.php?title=Using_FOG_with_an_unmodifiable_DHCP_server/_Using_FOG_with_no_DHCP_server (although it mentions it’s old and points to the newer one?!)
-
@Sebastian-Roth Yeah, for an old guy like me, it needs to stand out a bit more. All of them words just confuse me. I need bright colors and pictures.
There may be some value in replacing at least the config file. BUT we need to make sure its clear that the config file only works on dnsmasq 2.75 and later because of the new syntax change introduced with v2.75 (i.e. not having to call every file <something>.0)
-
@george1421 Hmmm, I kind of like to have the old and new config in the two different wiki articles. Shall I just make the Note more clear?
-
@Sebastian-Roth Yes please do.
-
@george1421 Done, hope that’s more obvious now.