The focus of this blog is to detail solutions to common and unique issues involving ConfigMgr OSD that we see within CSS. We will also be sharing best practices and lessons learned from handling support cases involving OSD.
One of the issues we troubleshoot the most in CSS are ConfigMgr PXE Service Point installs. This article is based on 4 years of experience troubleshooting hundreds of PXE Service Point installs. The end result is what we have found causes the majority of issues on PXE Service Points and what works on most (if not all) configurations. The article assumes that you are not trying to co-host the ConfigMgr PXE Service Point with stand-alone WDS on the same server. That is a topic for a completely different article…
A previous version of this article appeared over at The Configuration Manager Support Team Blog site. That article was actually a major revision of the original article titled ConfigMgr 2007: Troubleshooting PXE Service Point Issues and WDS service not starting. The below is an updated version of the article and can be considered version 3 of the article. Besides some minor updates in syntax and formatting, it mainly contains one major new section covering co-hosting DHCP and WDS on the same server WITHOUT having to configure WDS. It also contains additional checks when R2 or R3 are installed.
UPDATES
2012-02-07
This is a general guide on properly setting up and troubleshooting the ConfigMgr 2007 PXE Service Point.
Common errors that are seen at the PXE boot screen when the PXE Service Point is either not configured properly or experiencing problems are the following:
PXE-E53: No boot filename received PXE-T01: The specified file was not found. PXE-T01: File not found PXE-E3B: TFTP Error - File not Found PXE-E55 Proxy DHCP Service did not reply to request on port 4011 PXE-T04: Access Violation PXE-E36: Error Received from TFTP Server PXE-M0F Exiting PXE RomPXE-E78: Could not locate boot server
However the error messages can vary depending on the PXE implementation on the client PC.
Another commons symptom is that the Windows Deployment Services Server (WDS) service will not start.
This guide is broken down to the following sections:
The guide is written in chronological order of the actions that need to be taken to properly configure a working and operational ConfigMgr 2007 PXE Service Point. Refer to the appropriate sections as needed.
Reviewing KB Articles of Known Issues
Before beginning any troubleshooting on the PXE Service Point, review the following KB articles to see if any of the issues described in the following KB articles could be causing problems:
No Assigned Task Sequence when initiating deployments caused by duplicate SMBIOS GUIDs (System UUIDs) in System Center Configuration Manager 2007http://support.microsoft.com/kb/2591483
Operating system deployment fails in a System Center Configuration Manager 2007 SP1 environment if you deploy a different operating system to a client within one hour of a previous deploymenthttp://support.microsoft.com/kb/969113Client machines may fail to boot into PXE if System Center Configuration Manager Service Pack 2 has been appliedhttp://support.microsoft.com/kb/2019640The Windows Deployment Service cannot be started on a computer that has more than 20 logical processors and that is running Windows Server 2008 R2 or Windows Server 2008http://support.microsoft.com/kb/2121690
The DNS Server service binds to all ports in the Windows Deployment Services port range on a server that is running Windows Server 2008 R2 or Windows Server 2008http://support.microsoft.com/kb/977512The Windows Deployment Service stops responding when you use a PXE service point on a computer that is running a System Center Configuration Manager 2007 SP1 or SP2 site serverhttp://support.microsoft.com/kb/976073
PXE service point role does not work if a DHCP server uses DHCP option 43 in a System Center Configuration Manager 2007 SP2 environmenthttp://support.microsoft.com/kb/2578865
Error message when Windows Deployment Service clients cannot obtain the boot image from a Windows Server 2008 R2-based WDS server: "PXE-E78: Could not locate boot server"http://support.microsoft.com/kb/979720
Setting Up IP Helpers
If the DHCP server, the client PC, and the ConfigMgr 2007 server running Windows Deployment Services (WDS) and the PXE Service Point are all on the same subnet or vlan, please proceed to the section "How To Properly Install and Set Up The PXE Service Point".
Otherwise, if either the DHCP server, the client PC, or the ConfigMgr 2007 server running WDS and the PXE Service Point are on separate subnets or vlans, which is usually the case in most environments, the first step to take before trying to install and configure the PXE Service Point and WDS is to set up IP Helpers on the routers. How to do this varies depending on the router hardware manufacturer, but the general overview is outlined at the below TechNet article:
Configuring Your Router to Forward Broadcastshttp://technet.microsoft.com/en-us/library/cc732351(WS.10).aspx#Updating
For further information on how to properly configure IP Helpers on the routers, please contact the hardware manufacturer of the router.
IP Helpers are necessary because the PXE request generated by the client PC is a broadcast that does not travel outside of the local subnet or vlan. It only stays within the local subnet or vlan. If the DHCP server and/or the WDS/PXE Service Point server are not on the same subnet or vlan as the client PC, they will not see or hear the PXE request broadcast from the client PC. The servers will therefore not respond to the PXE request. To have the PXE request broadcast transverse between subnets or vlans, the PXE request broadcast needs to be forwarded by the router to the DHCP and WDS/PXE Service Point servers so that they can properly respond to the client PC's PXE request.
An alternative to using IP Helpers is setting DHCP Options on the DHCP server, specifically DHCP Options 60 (PXE Client), 66 (Boot Server Host Name), and 67 (Bootfile Name). However, DHCP Options can be problematic and may not work reliably or consistently. Furthermore the use of DHCP Options to control PXE requests is not supported by Microsoft. Therefore the recommended and supported method of PXE booting client PCs that are on a different subnet than the DHCP or WDS/PXE Service Point servers is the use of IP Helpers.
For additional information regarding DHCP Options not being recommended or supported please see the below articles:
Using DHCP Options 60, 66, and 67 http://technet.microsoft.com/en-us/library/cc732351(WS.10).aspx#Using PXE clients computers do not start when you configure the Dynamic Host Configuration Protocol server to use options 60, 66, 67 http://support.microsoft.com/kb/259670
Using DHCP Options 60, 66, and 67 http://technet.microsoft.com/en-us/library/cc732351(WS.10).aspx#Using
PXE clients computers do not start when you configure the Dynamic Host Configuration Protocol server to use options 60, 66, 67 http://support.microsoft.com/kb/259670
The only exception where a DHCP Option needs to be used is when DHCP and WDS reside on the same server. In this instance, DHCP Option 60, and only DHCP Option 60, needs to be set. DHCP Options 66 and 67 should still NOT be set in this scenario. For more information, please see the below section "Co-hosting DHCP and WDS On The Same Server".
It is IMPERATIVE that before continuing that it has been verified that the routers have IP Helpers configured AND that the DHCP server does NOT have DHCP Options 60, 66, or 67 configured. Not meeting both of these criteria will cause the PXE Service Point not to work correctly. When checking DHCP options, make sure to check options at both the server and scope levels.
In certain instances, configuring DHCP Options 60, 66, and 67 may make it appear that the PXE boot process is proceeding further along than before these options were configured, but in most cases it proceeds further down an incorrect path and ends up failing.
Co-hosting DHCP and WDS On The Same Server
One consideration when setting up a ConfigMgr PXE Service Point is if WDS and DHCP are going to reside on the same or different servers. Best practice is to host the WDS and DHCP services on two separate servers, but there should be no issues in hosting both services on one server. If WDS and DHCP are being hosted on different servers, no further action is needed so please proceed to the section "How To Properly Install And Set Up A New Instance Of WDS And A PXE Service Point".
However when WDS and DHCP are co-hosted on the same server, WDS needs a special configuration to listen on a specific port. This configuration is outlined in the following TechNet article under the section Windows Deployment Services (WDS) and DHCP --> PXE Service Point Configuration Item --> DHCP considerations.
Planning for PXE Initiated Operating System Deployments http://technet.microsoft.com/en-us/library/bb680753.aspx
According to the above article, the following two actions need to take place when WDS and DHCP are co-hosted on the same server:
The one problem with the above recommendations is that in order to run the WDSUTIL command, WDS has to be first configured. This goes against the best practice of NOT configuring WDS when installing a ConfigMgr PXE Service Point. However, the two options being specified via the WDSUTIL command, UseDHCPPorts and DHCPOption60, can be configured using alternate methods that do not require the WDSUTIL command, and therefore do not require WDS to be configured:
If DHCP is ever moved to another server and removed from the server hosting WDS, the above actions need to be reversed. To reverse the above actions take the following two actions on the WDS server:
How To Properly Install And Set Up A New Instance Of WDS And A PXE Service Point
The following section lists the steps to ensure that WDS and the PXE Service Point are installed properly on a server where WDS and the PXE Service Point have never been installed or where WDS and the PXE Service Point have been properly uninstalled based on the section "Reinstalling WDS And The PXE Service Point". If WDS and/or the PXE Service Point is currently installed OR has been previously installed on the server, please follow the instructions under the section "Reinstalling WDS And The PXE Service Point" first:
32bit servers<drive_where_ConfigMgr_is_installed>\Program Files\Microsoft Configuration Manger
64bit servers<drive_where_ConfigMgr_is_installed>\Program Files (x86)\Microsoft Configuration Manger\Logs
32bit or 64bit servers<drive_where_ConfigMgr_is_installed>\SMS
Once the log directory has been located in Step 16, open the log file PXESetup.log using SMS Trace/Trace32.exe. Monitor this log and verify that the PXE Service Point installed correctly. It may take a few minutes for the installation to start and finish successfully. If this is the first time the PXE Service Point is being installed on the server, it may take a few minutes for the PXESetup.log to appear and be created.Once installed correctly, the last lines in the log should be "pxe.msi exited with return code: 0" and "Installation was successful." Verify that the line is for the current date and time frame.In some circumstances, the last lines will read "pxe.msi exited with return code: 3010" and "Installation was successful, but a reboot is required." If this is the case, make sure to reboot the server before continuing.Do NOT proceed until confirmation has been received in the PXESetup.log that installation has been successful.
In the ConfigMgr 2007 Admin Console, navigate to "Computer Management" --> "Operating System Deployment" --> "Boot Images".
If BOTH the x64 and x86 Boot Images are not already on any standard Distribution Point (DP), make sure to put both Boot Images on at least one standard DP. Monitor the "Package Status" node and ensure that both the x64 and x86 Boot Images properly install on the standard DP.
Place BOTH the x64 and x86 Boot Images on the SMSPXEIMAGES$ DP on the server where the PXE Service Point was created. Monitor the "Package Status" node and ensure that both the x64 and x86 Boot Images properly install on the SMSPXEIMAGES$ DP.
Once the Boot Images have installed on the SMSPXEIMAGES$ DP, open the Services console on the PXE Service Point server and ensure that the Windows Deployment Services Server service has started. Additionally make sure that the RemoteInstall folder has been created on the root level of the one of the drives of the server (usually the same drive where ConfigMgr is installed).
In the ConfigMgr 2007 Admin Console, navigate to "Computer Management" --> "Operating System Deployment" --> "Task Sequences". Right click on each Task Sequence that will be deployed via PXE and choose "Properties". Click on the "Advanced" tab and ensure that the option "Use a boot image:" is checked and that an appropriate boot image for that Task Sequence is selected.
In the ConfigMgr 2007 Admin Console, navigate to "Computer Management" --> "Software Distribution --> "Advertisements". Right click on each Advertisement for Task Sequences that will be deployed via PXE and choose "Properties". Under the "General" tab make sure that the option "Make this task sequence available to boot media and PXE" is checked.
Notes:
Reinstalling WDS And The PXE Service Point
In certain scenarios, especially ones where WDS and the PXE Service Point were installed or configured incorrectly, the best course of action is to uninstall the PXE Service Point and WDS, delete all previous configurations, and then reinstall. If WDS and the PXE Service Point have already been uninstalled, read through the below steps and actions to ensure that ALL of the steps have been followed to properly uninstall both components:
On the server where the PXE Service Point is being uninstalled, navigate to the ConfigMgr 2007 site server log location using Windows Explorer. Usually the log location will be under one of the following paths:
32bit servers <drive_where_ConfigMgr_is_installed>\Program Files\Microsoft Configuration Manger
64bit servers <drive_where_ConfigMgr_is_installed>\Program Files (x86)\Microsoft Configuration Manger\Logs
32bit or 64bit servers <drive_where_ConfigMgr_is_installed>\SMS
If the deinstall of the PXE Service Point never kicks off, check the sitecomp.log on the parent site server to determine why it was not able to start the deinstall. In most cases it is due to file in use issues, which usually can be resolved by stopping the WDS service (Step 5). A reboot of the server may also help resolve the issue.
Do NOT proceed until confirmation has been received in the PXESetup.log that deinstallation has been successful.
Testing The PXE Service Point
Once WDS and the PXE Service Point have been installed and configured, test the PXE Service point to see if it is working. Take the following measures to ensure the best testing environment:
Monitoring And Troubleshooting The PXE Boot
The single greatest troubleshooting tool in figuring out why a PXE boot is not working on a client PC is monitoring the SMSPXE.log. The log should be monitored live with SMS Trace/Trace32.exe while a PXE boot is attempted on the client PC. When monitoring the SMSPXE.log, the log should show in real time exactly what is occurring.
Frank RojasSupport Escalation Engineer