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

Reply via email to