Different bios files for different network cards
-
Hi, i have a problem here that some computers boot only with undionly.kpxe and don’t boot with ipxe.kpxe. But there other computers that boot only with ipxe.kpxe. To solve the boot problem I have to keep manually changing the bios file in dhcp. How can I solve this? Is there a universally compatible bios file? Can I have multiple bios files for different hardware or have some kind of failover?
Thanks.
-
Kind of?
It really depends and is not a “universally solvable problem.”
The issue is BIOS manufacturers create their version of the software and that’s that piece that matters…
“Their method” is better, or “faster” or “less buggy” but in reality it causes more issues in the long run.
The good news is you seem to be dealing with Standard Legacy PXE.
undionly.kpxe should’ve worked for most cases, but isn’t 100%. In that case, I suggest trying undionly.kkpxe.
This is for buggy firmwares.
The ipxe.kpxe variant is not using the highly standardized undi drivers and instead attempts to use ipxe’s own custom built versions of the more common ethernet card drivers.
When undionly.kpxe works for most but not all, I’d suggest trying undionly.kkpxe which should work on buggier implementations of the undidrivers from a BIOS manufacturer.
-
@Tom-Elliott thanks for the quick reply, I will try undionly.kkpxe and see if we have fewer issues at least. And what about having some kind of failover, is it possible?
Would be possible to auto detect the hardware and serve the right file accordingly?Thanks
-
@rodrigoantunes Unfortunately if there was, FOG wouldn’t be just a FOSS project anymore lol
-
@Tom-Elliott but wouldn’t it be a dhcp server functionality rather than fog’s?
-
@rodrigoantunes said in Different bios files for different network cards:
wouldn’t it be a dhcp server functionality rather than fog
FOG could do it with some programming, but its probably easier to do it on the dhcp server side. Its not super simple to do, but basically you would setup dhcp reservations or uniqueness based on the mac address of the target computer. When the dhcp server sees a known mac address then it sends out the alternate pxe boot loader. You would make the default pxe boot loader (like undionly.kpxe) be the default and then override it with reservation settings for the troubled computers. It can be done.
I find its strange that the undi driver doesn’t work on some computers but does on others. The undi specification has been around for 30 years. Most firmware has had time to work out the bugs.