This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
appnote:chainload_wds [2014/12/22 16:25] svenx Screenshots from RegEdit and Wireshark |
appnote:chainload_wds [2014/12/23 09:36] svenx Minor changes and formatting. |
||
---|---|---|---|
Line 17: | Line 17: | ||
''HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/WDSServer/Providers/WDSTFTP/ReadFilter'' | ''HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/WDSServer/Providers/WDSTFTP/ReadFilter'' | ||
that controls which TFTP paths are mapped to the directory containing | that controls which TFTP paths are mapped to the directory containing | ||
- | the various installation files. | + | the various installation files defined by the ''RootFolder'' registry key in the same location. |
{{ :appnote:regedit-wdstftp.png?400|RegEdit WDSTFTP}} | {{ :appnote:regedit-wdstftp.png?400|RegEdit WDSTFTP}} | ||
Line 44: | Line 44: | ||
Loading the initial WDS network boot program ''wdsnbp.com'' can be | Loading the initial WDS network boot program ''wdsnbp.com'' can be | ||
done either directly from the iPXE shell or via a menu entry. The only | done either directly from the iPXE shell or via a menu entry. The only | ||
- | thing that needs to be modified is the DHCP ''next-server'' setting, | + | thing that needs to be modified is the DHCP ''next-server'' parameter, |
which will let ''wdsnbp.com'' know which server to communicate with. | which will let ''wdsnbp.com'' know which server to communicate with. | ||
Due to how iPXE handles [[:settings#scopes|configuration setting | Due to how iPXE handles [[:settings#scopes|configuration setting | ||
Line 93: | Line 93: | ||
* filename: ''boot\x64\pxeboot.n12''. | * filename: ''boot\x64\pxeboot.n12''. | ||
* option 250: ''0b0101100400000001ff'' | * option 250: ''0b0101100400000001ff'' | ||
- | * option 252: \Tmp\x86x64{GUID}.bcd | + | * option 252: ''\Tmp\x86x64{GUID}.bcd'' |
- Client: ''wdsnbp.com'' requests TFTP ''/boot\x64\pxeboot.n12''. | - Client: ''wdsnbp.com'' requests TFTP ''/boot\x64\pxeboot.n12''. | ||
- Client: ''pxeboot'' requests TFTP ''/boot\x64\bootmgr.exe''. | - Client: ''pxeboot'' requests TFTP ''/boot\x64\bootmgr.exe''. | ||
Line 118: | Line 118: | ||
* TFTP error codes from the WDS server. | * TFTP error codes from the WDS server. | ||
* DHCP options in the client requests and server responses. | * DHCP options in the client requests and server responses. | ||
+ | * The WDS event log in Windows. | ||
==== TFTP download errors ==== | ==== TFTP download errors ==== | ||
Line 133: | Line 134: | ||
If either ''wdsnbp.com'' or ''pxeboot.n12'' gets stuck in a request | If either ''wdsnbp.com'' or ''pxeboot.n12'' gets stuck in a request | ||
loop, it is likely that the initial TFTP download worked, but | loop, it is likely that the initial TFTP download worked, but | ||
- | subsequent ones are failing. This happens because iPXE uses forward | + | subsequent ones are failing. This can happen because iPXE uses forward |
slashes in the TFTP file path, while the WDS boot programs are prone | slashes in the TFTP file path, while the WDS boot programs are prone | ||
to using a mix of forward and backward slashes. | to using a mix of forward and backward slashes. | ||
Line 156: | Line 157: | ||
that can take ages to download the files. | that can take ages to download the files. | ||
- | The iPXE author has developed [[:wimboot]], a boot loader that takes | + | A good alternative to the PXE mechanism of WDS is [[:wimboot]], a boot loader that takes |
over the roles of ''wdsnbp.com'' and ''pxeboot.n12''. It lets you | over the roles of ''wdsnbp.com'' and ''pxeboot.n12''. It lets you | ||
fetch all the relevant files over HTTP and hand over execution to | fetch all the relevant files over HTTP and hand over execution to |