Back in ConfigMgr Technical Preview 1706, Microsoft introduced IPv6 PXE, a feature you could enable not only on distribution points running on Windows Server OS, but also on Windows Client OS. Effectively having a Windows client configured as a DP also acting as a PXE server. Microsoft MVP Ronni Pedersen (@ronnipedersen), have a blog post on that:
SCCM: Enable Desktop Clients as PXE Servers
Now, in ConfigMgr Technical Preview 1712, there is a new feature: Peer PXE, that doesn't require that you configure the client as a distribution point. Very cool.
Peer PXE – The Basics
As previously mentioned, the new Peer PXE feature in ConfigMgr Technical Preview 1712 is not connected to the distribution point role. Instead it's a client setting that you deploy to the machines you want to have as PXE servers (event though it's running a client operating system) in your remote sites.
In order to enable Peer PXE, you need to first enable the "Enable Configuration Manager client in full OS to share content option", and provide a certificate either by creating a self-signed certificate or by importing one. The other PXE options are pretty self explanatory.
Note: Yes, it means that you, at least in this preview, need to enable Peer Cache for this to work. To learn more about Peer Cache, check out this post:
Reducing Network Impact – One Guide to rule them all
Pre-cache boot images
To make sure the seven netboot files are being extracted into the C:WindowsCCMSMSBootx86 and C:WindowsCCMSMSBootx64 folders, create a task sequence that Pre-caches the boot images on the clients you want to have as PXE Servers. I recommend to distribute both a x86 and x64 boot image, even if you are deploying x64 systems only. The reason is that some hardware actually advertise themselves as x86, even when having x64 capability. You can see this process in the CAS.log file on the client, and there is a screen later in this post.
Here is a task sequence for Pre-caching boot images:
Behind the scene – Troubleshooting
Here are some quick tips for troubleshooting, first some common configuration issues.
If you get the below errors, you forgot to create (or import) a certificate:
Failed to create certificate store from encoded certificate..
An error occurred during encode or decode operation. (Error: 80092002; Source: Windows) SMSPXE
If you get the below errors, the http and https ports are not set correctly (typically 80/443)
socket 'connect' failed; 8007274d
sending with winhttp failed; 80072efd
PXE::MP::InitializeTransport failed; 80072efd
PXE::MP::IsKnownMachine failed; 80070490
Anyway, to get more details about the deployment, you can review the C:WindowsCCMLogsSMSPXE.log file. Don't be too worried about any red lines, this is after all a technical preview 🙂
You can also review the settings in the registry, and even though the Peer PXE clients are not DPs (like when using the IPv6 PXE feature for client DPs), the settings are still stored in HKLMSOFTWAREMicrosoftSMSDP. Please note the IsSuperPeerPXE setting.
As mentioned earlier, the CAS.log will show you what files got extracted from what boot image.
Written by Johan Arwidmark ( @jarwidmark)