UEFI won boot tools via fog menu.
-
@dureal99d I found this https://davidmnoriega.wordpress.com/2015/07/27/linksys-e4200-and-dd-wrt/
Which seems to indicate you need to replace tag with #
So eg
dhcp-match=set:bios,60,PXEClient:Arch:00000 dhcp-boot=#:bios,undionly.kpxe,x.x.x.x,x.x.x.x
Might not be all you need, though.
-
@dureal99d The x.x.x.x simply refers to where your TFTP resides. The IP address of your FOG server most likely, unless you set it up elsewhere.
-
@Quazz said in UEFI won boot tools via fog menu.:
@dureal99d The x.x.x.x simply refers to where your TFTP resides. The IP address of your FOG server most likely, unless you set it up elsewhere.
@Quazz so does that mean i should put my tftp ip and where it says fog serve ip put the fog ip?
-
@dureal99d Yes
-
@Quazz tried this
dhcp-match=set:bios,60,PXEClient:Arch:00000 dhcp-boot=#:bios,undionly.kpxe,192.168.1.109 # 192.168.1.109 = TFTP/192.168.1.109
did’nt work, im pretty ure its somthing im doing wrong
-
The tftp at that point is coming from your fog server .
For me, I use dd-wrt at home as well, and while I don’t have any UEFI machines to test I’m fairly sure you still need to tag the boot file line so it knows which match to use when.
It may be a light version of Dnsmasq, but it is still Dnsmasq.
-
In my tutorial for installing dnsmasq on Centos this is what I have for the dhcp-boot line:
dhcp-boot=undionly.kpxe,,<fog_server_IP>
Also you need to ensure that you are running dnsmasq 2.76 with has reportedly added the required code for pxe-uefi booting alongside legacy (bios) code.
I have not tried this with dd-wrt either but this extension should work with dnsmasq
dhcp-match=set:efi-x86_64,option:client-arch,7 dhcp-boot=tag:efi-x86_64,ipxe.efi
which sets up a flag if the client matches arch 7 (x86_64 uefi) and then sends ipxe.efi instead of undionly.kpxe. You may need additional arch added for IA32 uefi systems too. Wayne has added the info to the FOG wiki page https://wiki.fogproject.org/wiki/index.php?title=BIOS_and_UEFI_Co-Existence#General
Look at the top for the isc dhcp server to an idea of what is going on. -
@george1421 said in UEFI won boot tools via fog menu.:
Wayne has added the info to the FOG wiki page
@Sebastian-Roth did the dnsmasq section I’m pretty sure lol. Seems he’s always a few steps ahead of us.
-
@george1421 I have plugged in the information to the dnsmasq inclusive to the default
dhcp-boot=undionly.kpxe,,<fog_server_IP>
& the boot process was not disrupted as with previous configs I’ve tried.I must now make sure i understand what you did here.
dhcp-match=set:efi-x86_64,option:client-arch,7 dhcp-boot=tag:efi-x86_64,ipxe.efi
as it differs from the wiki of the dnsmasq setting. also it when booting uefi it see the tftp as my router ip. What would i do to re-route this to my fogserver ip?
-
@dureal99d If I understand it correctly your {next-server} value should come from your dhcp server (understand I’m guessing here a bit since I have not worked with uefi and dnsmasq as of now). But in my docs I also ahve this line:
dhcp-range=<fog_server_ip>,proxy
That defines the range.
Actually I still have my FOG-Pi server that I can boot back up. That has dnsmasq running on it. Let me see if I can get a working config.
-
@dureal99d From your image below its working. Well an iPXE kernel is getting loaded. So that should removed dnsmasq from the issues. Is your fog server at 192.168.1.1?
-
@george1421 NO, its at 192.168.1.109
-
@dureal99d Interesting because in the picture its thinks your fog server is 192.168.1.1 because that is where its trying to load the default.ipxe file from. I can’t remember off the top of my head where that setting comes from, its either from FOG or the next-server value from dhcp.
-
@george1421 at current my config looks like this
dhcp-match=set:efi-x86_64,option:client-arch,7 dhcp-boot=tag:efi-x86_64,ipxe.efi dhcp-boot=undionly.kpxe,,192.168.1.109``` in the dnsmasq setting of ddwrt.
-
@dureal99d I started another thread where I’ve been documenting my travels with dnsmasq and uefi here: https://forums.fogproject.org/topic/8677/dnsmasq-bios-and-uefi
My config is pretty close. I can pxe boot a uefi system. Right now its hanging on the iPXE kernel initializing devices… But I did have to compile the latest dnsmasq program because the one for my distribution did not work even with the updated config file.
Looking at your config file I would have to say you need to update this line:
dhcp-boot=tag:efi-x86_64,ipxe.efi
to this:
dhcp-boot=tag:efi-x86_64,ipxe.efi,,192.168.1.109
Just like you did for the bios undionly line.
-
FYI to everyone, the sourcecode for dnsmasq can always be found on Simon Kelley’s website, here:
http://www.thekelleys.org.uk/dnsmasq/And general info can be found here:
http://www.thekelleys.org.uk/dnsmasq/doc.htmlThere’s a mailing list as well, where you can ask a question, and he will respond - all emails are archived on his site forever - he needs to make a book out of them IMHO. I’ve been on his mailing list for about a year, he is very active and I normally get an email once a day with all the questions and replies from the previous day.
-
@george1421 Perhaps we should give instructions in the BIOS/UEFI coexistence article for getting the right dnsmasq source and compiling it, and configuring?
I know this won’t be a permanent problem as eventually all distros will have the working version, but that could be years.
-
@Wayne-Workman With the libraries mentioned I can get really close to the distro had, except for one module that didn’t seem to impact ipxe booting. But your idea of updating the wiki pages for dnsmasq is not a bad idea. I sure would like to get a solid boot before updating anything, but the key was to use dnsmasq 2.76 and the updated config to get it to boot anyway.
-
@george1421 said in UEFI won boot tools via fog menu.:
@dureal99d I started another thread where I’ve been documenting my travels with dnsmasq and uefi here: https://forums.fogproject.org/topic/8677/dnsmasq-bios-and-uefi
My config is pretty close. I can pxe boot a uefi system. Right now its hanging on the iPXE kernel initializing devices… But I did have to compile the latest dnsmasq program because the one for my distribution did not work even with the updated config file.
Looking at your config file I would have to say you need to update this line:
dhcp-boot=tag:efi-x86_64,ipxe.efi
to this:
dhcp-boot=tag:efi-x86_64,ipxe.efi,,192.168.1.109
Just like you did for the bios undionly line.
I will try that config and report back.
-
@dureal99d I might be able to help you with understanding how the TFTP URL (in your case tftp://192.168.1.1/default.ipxe) is build. You need to check out the embedded script that comes compiled into the binaries we provide - find the code here: https://github.com/FOGProject/fogproject/blob/dev-branch/src/ipxe/src-efi/ipxescript