Dear,
I have to write a mail for help to this maillist, because i have failed
to register on site http://forum.ipxe.org/.
Firstly I copy the "Chainloading Windows Deployment Services" text
on http://ipxe.org/appnote/chainload_wds to below.
The WDS boot process
Once wdsnbp.com starts, it initiates a session with the WDS server that was
specified in the DHCP next-server parameter. The session protocol uses a
combination of DHCP requests and responses and TFTP to provide the client with
the appropriate boot loader (such as bootmgr.exe or bootmgfw.efi) and boot
configuration data (BCD).
The wdsnbp.com program performs client architecture detection and reports it
back to the server via the WDS session. This session protocol uses DHCP as an
RPC service endpoint, and the data passed back and forth (such as architecture
information) is encoded in DHCP option 250. Together with option 252 (used by
WDS to indicate BCD file name) and the DHCP file field (pointing the client to
the next network boot program), the DHCP+TFTP negotiation completes the WDS
session.
Example boot process
Client: iPXE requests TFTP /boot/x86/wdsnbp.com from ip.of.wds.server.
Client: wdsnbp.com uses a direct DHCP request to ip.of.wds.server, with no
option 250 nor 252 defined.
Server: DHCP response:
filename: boot\x86\wdsnbp.com
option 250: 0b0101100400000001ff
option 252: \Tmp\x86{<GUID>}.bcd
Client: wdsnbp.com uses a direct DHCP request to ip.of.wds.server:
option 250: 0d0208000e010001020006ff
Server: DHCP response:
filename: boot\x86\wdsnbp.com
option 250: 0b0101100400000001ff
option 252: \Tmp\x86x64{GUID}.bcd
Client: wdsnbp.com requests TFTP /boot\x86\wdsnbp.com from ip.of.wds.server.
Note the use of slashes.
Client: wdsnbp.com uses a direct DHCP request to ip.of.wds.server:
option 250: 0c01010d0208000e010001020006ff
Server: DHCP response:
filename: boot\x64\pxeboot.n12.
option 250: 0b0101100400000001ff
option 252: \Tmp\x86x64{GUID}.bcd
Client: wdsnbp.com requests TFTP /boot\x64\pxeboot.n12.
Client: pxeboot requests TFTP /boot\x64\bootmgr.exe.
Client: pxeboot requests TFTP \Tmp\x86x64{GUID}.bcd.
Client: bootmgr.exe executes and reads the BCD.
My situation is a DHCP on a server2012 and a WDS on another
server2012r2, and I'm booting a WinPE on a client computer.
The question is when I boot using gPXE(gpxe-1.0.1-gpxe.pxe), it works well,
exactly the same boot process copied above from step 1 to 12.
But when I boot using iPXE(undionly.kpxe, latest version), it stucks in a loop,
repeats loading wdsnbp.com again and again.
I had a look in wireshark and found that the problem is at the boot process
step 7, copied above.
When in gPXE, wdsnbp.com sends a DHCP request with option 250
0c01010d0208000e010001020006ff, and then the process goes to next process step
8.
But when in iPXE, wdsnbp.com sends a DHCP request with no option 250 nor 252
defined, just the same like at process step 2, so the process goes step 2 to
step 7 repeatly.
What should I do with this problem?
Thanks for your consiseration.
Looking forward to your answer.
_______________________________________________
ipxe-devel mailing list
[email protected]
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel