FOG BIOS And EFI Coexistence
-
I use my router’s dnsmasq now, but this is my old working FOG dhcpd.conf that should do the trick.
Change the IP’s/bootfiles to suite your needs.
[CODE]# DHCP Server Configuration file.
see /usr/share/doc/dhcp*/dhcpd.conf.sample
This file was created by FOG
use-host-decl-names on;
ddns-update-style interim;
ignore client-updates;
next-server 10.0.0.5;
option arch code 93 = unsigned integer 16;if option arch = 00:07 {
filename “snp.efi”;
}else if option arch = 00:06 {
filename “ipxe.efi”;
}else {
filename “undionly.kpxe”;
}subnet 10.0.0.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
range dynamic-bootp 10.0.0.200 10.0.0.254;
default-lease-time 21600;
max-lease-time 43200;
option domain-name-servers 10.0.0.1;
option routers 10.0.0.1;
}
[/CODE] -
[quote=“Wayne Workman, post: 46763, member: 28155”]That’d be a negative… for both BIOS and UEFI… used two different machines to test.
I’ve attached my WORKING ltsp.conf file, and the one I got from here (which I ripped the comments out of, and changed IP, and repaced .kpxe and .efi with .0)
I also ensured I had the .0 files, too.[/quote]
Give this a try under [B]tftp-root=/tftpboot[/B] (replace FOG with your FOG server’s hostname):
[CODE]dhcp-boot=undionly.kpxe,FOG,10.0.0.3
dhcp-match=set:efi-ia32,option:client-arch,6
dhcp-boot=tag:efi-ia32,ipxe.efi,FOG,10.0.0.3
dhcp-match=set:efi-x86_64,option:client-arch,7
dhcp-boot=tag:efi-x86_64,snp.efi,FOG,10.0.0.3
dhcp-range=10.0.0.3,proxy,255.255.255.0
[/CODE] -
[quote=“Wayne Workman, post: 46755, member: 28155”]Are you using a dongle to Ethernet adapter, or WiFi ?[/quote]
using the microsoft USB dongle. my legacy machines are working like they always have, uefi machines are loading ipxe.efi
-
[quote=“Junkhacker, post: 46782, member: 21583”]using the microsoft USB dongle. my legacy machines are working like they always have, uefi machines are loading ipxe.efi[/quote]
Do share how you did it.
-
[quote=“Junkhacker, post: 46782, member: 21583”]using the microsoft USB dongle. my legacy machines are working like they always have, uefi machines are loading ipxe.efi[/quote]
Do I need to bribe you?
-
for windows server 2012 DHCP, it was as simple as the link Wayne Workman posted.
[url]http://www.syslinux.org/archives/2014-January/021404.html[/url] create vendor class that matches uefi systems ([I][COLOR=#000000]PXEClient:Arch:00007[/COLOR][/I]) and give those that match a different bootfile (in my case, ipxe.efi) -
I see… interesting. This may be the direction that things have to go. DnsMasq seems in sufficient for EFI PXE and some older PXE clients. I’m still going to try a few things with it, but otherwise we might just have to make good documentation on the changes to make to a Windows 2012+ DHCP and a Linux DHCP to achieve coexistence. I will work on the Windows 2012 DHCP configs eventually (assuming DnsMasq fails me), but I will need to spin up a new 2012 server and integrate it to our domain first.
-
This is the thread:
[url]http://fogproject.org/forum/threads/undionly-kpxe-and-ipxe-efi.12607/[/url]
-
Has anyone tried either of my configs I posted? Both of them properly serve legacy/efi bootfiles.
-
I will tonight. I had other things going on last night when you posted those.
-
I will see what I can do as well… light staffing here today so I’m a bit busy.
-
No worries, just wanted to make sure nobody overlooked them.
-
[quote=“d4rk3, post: 46768, member: 23583”]Give this a try under [B]tftp-root=/tftpboot[/B] (replace FOG with your FOG server’s hostname):
[CODE]dhcp-boot=undionly.kpxe,FOG,10.0.0.3
dhcp-match=set:efi-ia32,option:client-arch,6
dhcp-boot=tag:efi-ia32,ipxe.efi,FOG,10.0.0.3
dhcp-match=set:efi-x86_64,option:client-arch,7
dhcp-boot=tag:efi-x86_64,snp.efi,FOG,10.0.0.3
dhcp-range=10.0.0.3,proxy,255.255.255.0
[/CODE][/quote]I don’t know what parts you want me to take out, though…
-
Who’s already got this working?
-
[quote=“Wayne Workman, post: 47037, member: 28155”]I don’t know what parts you want me to take out, though…[/quote]
None. Just replace [B]FOG[/B] with your FOG server’s hostname and replace [B]10.0.0.3[/B] with your FOG server’s IP.
I goofed on the last line, it should read [I][FONT=Consolas]dhcp-range=[/FONT][/I][B][I][FONT=Consolas]10.0.0.0[/FONT][/I][/B][I][FONT=Consolas],proxy,255.255.255.0[/FONT][/I]
For that, replace [B]10.0.0.0[/B] with your network’s address.
And if you want to change any of the bootfiles to different ones have at it.
-
Well, 10.0.0.3 IS my home FOG server’s IP address. It’s a private address, not public, and it’s home so I don’t care about sharing here.
And my network’s address is 10.0.0.0 I set my house up like that for simplicity… it’s easier to type than that dumb 192.168.1 BS that most home DHCP is configured with.
-
The dhcp-range line, I recommend, being set to your fog server. It will automatically work on the network your fogserver is on. If you’re actually trying to use a range of IP’s for Proxy to hand out then you would have something like:
[code]dhcp-range=10.0.0.0,10.0.0.255,proxy,255.255.255.0[/code]However this is more than overkill. I think it highly unlikely you will be handing more than the network allowed (253 – e.g. gateway, network, broadcast) of your fog server’s possibilities.
If you know you’ll be hitting more than that at any time, just open the subnet to a higher range. Whatever the IP is set will be the same network the proxy hands out within.
-
[quote=“Junkhacker, post: 46793, member: 21583”]for windows server 2012 DHCP, it was as simple as the link Wayne Workman posted.
[url]http://www.syslinux.org/archives/2014-January/021404.html[/url] create vendor class that matches uefi systems ([I][COLOR=#000000]PXEClient:Arch:00007[/COLOR][/I]) and give those that match a different bootfile (in my case, ipxe.efi)[/quote]Did you got this up and running?
I created the Vendor Class, created the policy, downloaded ipxe.efi and updated the DHCP server settings in 2012R2Legacy Boot + undionly.kpxe ~ working
UEFI boot + ipxe.efi ~ [B]not working[/B][B]edit:[/B] typo ([I]ipxe.kpxe[/I] should have been[I] ipxe.efi[/I])
-
[quote=“Jeroen Brussich, post: 47054, member: 23215”]Did you got this up and running?
I created the Vendor Class, created the policy, downloaded ipxe.efi and updated the DHCP server settings in 2012R2Legacy Boot + undionly.kpxe ~ working
UEFI boot + ipxe.kpxe ~ [B]not working[/B][/quote]ipxe network boot is working for me. i set my uefi boot to ipxe.efi
uefi imaging isn’t working perfectly for me, but that has nothing to do with the network
i can schedule tasks, access the boot menu (without graphics), and load the fog kernel -
I did configure both bootfiles on the same tftpserver.
Maybe that’s what I did wrong?This is what i see on my boot screen:
[CODE]tftp://MY.IP/default.ipxe… ok
http://MY.IP/fog/service/ipxe/boot.php… ok
http://MY.IP/fog/service/ipxe/bg.png… okCould not use picture: Exec format error (htt://ipxe.org/2e008081)
Could not boot: Exec format error (htt://ipxe.org/2e008081)
Could not boot: Exec format error (htt://ipxe.org/2e008081)Failed to get IP, Booting back to bios
[/CODE]I downloaded ipxe.efi from [url]https://svn.code.sf.net/p/freeghost/code/trunk/packages/tftp/[/url]
[B]edit:[/B] even if I don’t use the policy and make ipxe.efi the default BootFile Name of that scope, I get the same error. Maybe my ipxe.efi file is corrupt?