Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
IPXE Version
2013-08-19, 21:51
Post: #1
IPXE Version
Hi,

I'm need to detect also the version of iPXE with 'avoid loop'. If the version is to old, call undionly.kpxe as another pxe rom.

if exists user-class and option user-class = "iPXE" {
filename "http://my.web.server/real_boot_script.php";
} else {
filename "undionly.kpxe";
}

Thanks for helps,
Regards,
Yannick
Find all posts by this user
Quote this message in a reply
2013-08-20, 16:53
Post: #2
IPXE Version
Hi all,

I'm using network cards that contains an old IPXE Version (command menu is not supported). If I manage the DHCP by user-class detection, it's not working for this network card.

Is it possible to detect the IPXE Version in the if statement (ISC-DHCP) ?

Thanks for help,
Yannick
Find all posts by this user
Quote this message in a reply
2013-08-22, 09:28
Post: #3
RE: IPXE Version
You can use feature detection to make this work. You can see how I've done it with ISC dhcpd here: https://gist.github.com/robinsmidsrod/4008017
Visit this user's website Find all posts by this user
Quote this message in a reply
2013-08-22, 09:53
Post: #4
RE: IPXE Version
So, just test if the PXE module is available ? that right's ?
Find all posts by this user
Quote this message in a reply
2013-08-22, 10:03
Post: #5
RE: IPXE Version
Lines 10-13 of ipxe-green.conf contain the feature detection parts, and if you include a feature there that your burned-in ipxe version do not support (like menu) then it should chainload the proper version. This is like an extended version of the typical "break the eternal loop" chainloading example on the wiki.
Visit this user's website Find all posts by this user
Quote this message in a reply
2013-08-22, 16:51
Post: #6
RE: IPXE Version
ok.
I see that IPXE options contain ipxe.version, so I can do a test on this option to determine the current version of the IPXE ROM.
But IPXE Version string is like "1.0.0+ (ca319)" so I could not determine if this version is older than "1.0.0+ (6d72b4)". I could only determine if string are not equal (not like a simple number : upper or greater)

In my project, Debian 7.10 netboot failed during boot with an old IPXE ROM, but not with the "on-line" version (http://boot.ipxe.org/undionly.kpxe) it's working as fine. So my goal is to determine if the IPXE Rom is not so older to boot some OS.
Find all posts by this user
Quote this message in a reply
2013-08-23, 13:40
Post: #7
RE: IPXE Version
iPXE scripting doesn't have a command to test for bigger/lower number, only existance and equality. The version variable is also quite recent, so older versions won't have it. Your best bet is to use feature detection or forcibly load a new version of ipxe for all clients, including the ones that have a recent iPXE ROM burned in.
Visit this user's website Find all posts by this user
Quote this message in a reply
2013-08-23, 13:42
Post: #8
RE: IPXE Version
ok. Thanks for help.
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 2 Guest(s)