We had a problem with computers instantly rebooting after PXE-booting and loading WinPE.
Turns out that winpeshl.exe starts TSBootshell.exe before the network is ready and therefore it fails and reboots.
There is an easy fix (Credit to Mietek Rogala).
On your site sever, create a file – “<ConfigMgrInstallDir>\OSD\bin\x64\winpeshl.ini” and add the following:
[LaunchApps] %windir%\system32\wpeinit.exe %windir%\system32\wpeutil.exe, waitfornetwork %SYSTEMDRIVE%\sms\bin\x64\TsBootShell.exe
Then update the bootimage on your DP’s.
Mietek has a really good post about what happens during PE startup.
Adding this file will add it to all your bootimages when you update them and make sure it waits for network before launching.