Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
iPXE chaining to PXELINUX.0
2011-07-22, 17:55 (This post was last modified: 2011-07-22 18:00 by bwiese.)
Post: #1
iPXE chaining to PXELINUX.0
I have an iPXE setup that is serving shared iSCSI boot images to legacy PC's. I am using Microsoft DHCP, Microsoft iSCSI Software Target, and Microsoft WDS all on the same Windows Server 2008 R2.

DHCP serves out thin\undionly.kpxe (downloaded from ipxe.org) first, and then thin\boot (an iPXE script) on user class iPXE to break the chain loop. The script is very simple --

#!ipxe
dhcp
clear net0.dhcp/gateway:ipv4
set root-path iscsi:${next-server}::::iqn.1991-05.com.microsoft:thin-${net0/mac:hexhyp}-target
set keep-san 1
sanboot ${root-path} ||
chain \boot\x86\wdsnbp.com ||

This works great, and allows me to boot automatically from an iSCSI target that is named based on the client's MAC address, or drop into WinRE when no such target exists (or when the target exists but has no bootable OS, which also supports Windows installation directly to the iSCSI target via WDS).

However, I periodically need to run memtest or do a BIOS flash and would like to use the network to accomplish this (have to, actually, as the machines have no hard, CD/DVD, or floppy drives).

The idea was to put PXELINUX.0 and MEMDISK in the same directory (tftproot of thin\), create a pxelinux.cfg directory with a single file named "default" providing me with a prompt and some .iso and .img initrd choices, and use ctrl-B from iPXE to chain "as needed" into this maintenance setup.

If I change DHCP to serve up PXELINUX.0 directly, this works excellent and I can drop into MEMTEST86 or whatever.

However, if I ctrl-B from iPXE and type

DHCP
CHAIN thin\pxelinux.0

I see my prompt, and when I select memtest (or anything else), I get

Loading memdisk..
Loading img\memtest86-4.0.iso....ready.
iPXE>

I am returned to the iPXE script prompt.

I know very little about Linux (only what I have learned in making all of this work so far).

What am I doing wrong getting undionly.kpxe to chain into pxelinux.0 properly?

Thanks in advance!

EDIT: All of my legacy PC's have the Intel Boot Agent 4.x and I'm not interested in flashing those ROM's if it can at all be avoided.
Find all posts by this user
Quote this message in a reply
2011-07-22, 18:22
Post: #2
RE: iPXE chaining to PXELINUX.0
(2011-07-22 17:55)bwiese Wrote:  DHCP
CHAIN thin\pxelinux.0

I see my prompt, and when I select memtest (or anything else), I get

Loading memdisk..
Loading img\memtest86-4.0.iso....ready.
iPXE>

What you've done looks right to me. Have you tried testing your pxelinux setup without booting into iPXE first, to check that pxelinux is known-working?

Michael
Visit this user's website Find all posts by this user
Quote this message in a reply
2011-07-22, 18:41
Post: #3
RE: iPXE chaining to PXELINUX.0
(2011-07-22 18:22)mcb30 Wrote:  
(2011-07-22 17:55)bwiese Wrote:  DHCP
CHAIN thin\pxelinux.0

I see my prompt, and when I select memtest (or anything else), I get

Loading memdisk..
Loading img\memtest86-4.0.iso....ready.
iPXE>

What you've done looks right to me. Have you tried testing your pxelinux setup without booting into iPXE first, to check that pxelinux is known-working?

Michael

Yes, that's what I meant to indicate when I said "If I change DHCP to serve up PXELINUX.0 directly". If I change option 67 userclass None from thin\undionly.kpxe to thin\pxelinux.0 so the clients boot directly to PXELINUX, then iPXE is skipped, I see the prompt, and memdisk loads, my memtest.iso (or another image) loads, and then executes. This would seem to indicate to me that the pxelinux.0 setup is OK.

In my research I have come across references to undionly.kkpxe. I also see there's an ipxelinux.0 available (though this seems to be a pxelinux.0 replacement that incorporates the additional features of HTTP, AoE, FCoE, etc. directly into PXELINUX).

Any ideas? Is there a "keep pxe" setting I'm missing?

I've tried it from a VMware virtual machine to eliminate potential hardware/NIC issues, and it's easily reproduced there.
Find all posts by this user
Quote this message in a reply
2011-07-23, 11:41
Post: #4
RE: iPXE chaining to PXELINUX.0
(2011-07-22 18:41)bwiese Wrote:  
(2011-07-22 18:22)mcb30 Wrote:  What you've done looks right to me. Have you tried testing your pxelinux setup without booting into iPXE first, to check that pxelinux is known-working?

Yes, that's what I meant to indicate when I said "If I change DHCP to serve up PXELINUX.0 directly".

Sorry; I missed that.

I am able to reproduce your problem. I will look into it.

Michael
Visit this user's website Find all posts by this user
Quote this message in a reply
2011-07-23, 16:02 (This post was last modified: 2011-07-23 16:02 by bwiese.)
Post: #5
RE: iPXE chaining to PXELINUX.0
(2011-07-23 11:41)mcb30 Wrote:  I am able to reproduce your problem. I will look into it.

Michael

Thanks!
Find all posts by this user
Quote this message in a reply
2011-07-28, 19:29 (This post was last modified: 2011-07-28 19:29 by bwiese.)
Post: #6
RE: iPXE chaining to PXELINUX.0
Were you able to determine the underlying issue for the lack of chaining from iPXE to PXELINUX?

Just wondering..
Find all posts by this user
Quote this message in a reply
2011-12-30, 19:14
Post: #7
RE: iPXE chaining to PXELINUX.0
(2011-07-28 19:29)bwiese Wrote:  Were you able to determine the underlying issue for the lack of chaining from iPXE to PXELINUX?

Just wondering..

This issue should be fixed as of commit 9a93db3.

Michael
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 




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