WDS Server - How does DHCP scope option 67 work?
Solution 1
PXE and options 66,67 is not a Microsoft only technology, those same options can be used to boot a Linux machine.
That 67 option tells the client a path to a file from a tftp server (option 66) that will be retrieved and used to boot. That file needs to be a basic boot loader that will do any other required work.
Solution 2
Option 66 holds the TFTP address, while option 67 holds the path and name of a NBP (Network Boot Program) to be retrieved from the TFTP server, loaded in memory and run.
The clients inform its pre-os runtime on their DHCP transaction using DHCP option 93
DHCP Option 93 Client's pre-OS runtime
0 BIOS
6 EFI32
7 EFI64
9 EFI64
This way the DHCP server can provide specific NBPs depending on the client's pre-OS runtime.
Once the NBP is running there's is a sequence of chainloading
(retrieving by TFTP and running) of other components like i.e. pxeboot.n12 and then bootmgr.exe
(for BIOS clients) or just bootmgfw.efi
(for UEFI clients).
bootmgr.exe/bootmgfw.efi will retrieve a bcd that contains (among other things) a "menu" with all the WIM images available for booting, when the user selects an entry the bootmgr.exe/bootmgfw.efi will TFTP transfer, load in memory, and pass control to the corresponding WIM image. This is how PXE (WDS/MDT/SCCM) works on MS platforms.
Related videos on Youtube
user1330287
Updated on September 18, 2022Comments
-
user1330287 over 1 year
What is the purpose of DHCP option 67? I thought the PXE client will look for a boot.wim file. Does the boot file located in 67 (like boot\x64\wdsnbp.com) go out and search for the boot.wim?
What does DHCP scope option 67 actually do and why do we need it? Thanks.
-
user1330287 over 7 yearsOkay, it's starting to make sense now. So in general, the C:\RemoteInstall\Boot folder just contains a bunch of different bootloaders that will look for different actual boot images (in the case above, boot.wim) for the appropriate architecture. Am I on the right track? And how we do support multiple boot loaders to support mulitple boot images? Right now I'm working with just one, "boot\x64\wdsnbp.com", to load up a 64bit boot.wim, but what if I need to load up more than one bootloader boot image combos? Thank you.