pxe booting using dhcp from home router
-
Greetings,
I spent several hours d.d.going/googling for an answer and now I’m posting here. I just installed the latest version of fog via git running under proxmox 8.x. I set it up to use my Verizon home router G3100 as the dhcp server.
I am able to get an ip for a client. The dhcpd logs on the G3100 say as much. But that is all the pxe boot screen of my lenovo w540 just times-out and returns to the boot menu. I tried running wireshark (I either have not set up a proper condition or I am misapplying wireshark here) on one of my hosts to see if traffic was occurring between the dhcp server and fog w/o any success. I tried booting an ipxe iso via ventoy and got some data (ip address of the client, but no info regarding the pxe server.
I need some suggestions regarding troubleshooting. I am not sure if my home router requires modification or what. I have experience using the linux command line but my knownledge of pxe and dhcp is incompleted.
TIA
-
-
@Mr_____T I agree with Tom. Many soho routers will put thier IP address as the {next-server} value instead of the FOG server’s IP address even if there is a spot to configure the {next-server} / dhcp option 66 value.
With wireshark you should be able to capture the DORA (discover, offer, request, ack/nak) process since its transmitted with broadcast messages. So any computer connected to the same subnet as the target computer should be able to detect this messaging. In wireshark you can set a capture filter of
port 67 or port 68
or use a display filter ofbootp
. Once wireshark is setup and you have the filter applied you should see at least 4 packets that align with the DORA communications. Look at the OFFER packet coming from your authorized dhcp server. (hopefully there is only one offer packet, or you might have a rouge dhcp server breaking the process). In the offer packet, look at the dhcp header fields there should be two if interest {next-server} and {boot-file}, if they exists and are correct look in the dhcp options section for options 66 (boot-server) and dhcp options 67 (boot-file). Both sets of fields need to be properly filled out.If your dhcp server is setting itself there and you can’t change the values then as Tom suggested we use dnsmasq to configure a proxy-dhcp configuration to override what the client is being told from your main dhcp server in regards to boot file and boot server.
-
Thanks for your suggestions. I will get at it tonight.
-
Thanks for your reply. I searched through my home router (Verizon G3100) and was unable to find where I would set the ‘next server’. However, following @Tom-Elliott 's instructions, I got a client started. It failed on the second partition. I don’t have the particulars, but this is much further along that I could’ve imaged last week. I am off the bed for now ( I have a fog server at work running on proxmox as well that may need my attention tomorrow). Not solved but close.
Tx again
-
@Mr_____T I would also agree with @Tom-Elliott that the proxy dhcp with dnsmasq is the way to go. Especially with a router from your isp like that, it’s unlikely you’d be able to set those settings. I have seen the needed DHCP options on my Asus router at home but haven’t played with that just yet.
If you get us the particulars on that failure (error message, deploy or capture, os being deployed/captured, etc) we will gladly help with that too.
-
@Mr_____T If you have a router that can’t be managed or doesn’t support pxe booting, then dnsmasq is the best answer.
-
@george1421 Every time I think I’m a nerd, I see George break down a setting in a 3 paragraphs, dissecting it in the craziest detail.
You guys rock. That level of detail is seriously helpful. Allowing us to learn other things in the process to help us later. When I see that effort to help someone, I just like to call it out !
I’m the kind of guy that needs to take everything apart to see how it all works. You guys definitely help to paint the picture.