This guide covers common causes of why PXE boot sometimes fails by examining client misconfigurations, network settings, and SCCM distribution point requirements.

For something that seems so simple, booting PXE devices to an SCCM 2012 server can be quite complicated! In this guide, we are going to cover the many different reasons that a PXE boot can fail and how you can fix these failures.

Before we start, you should open the SMSPXE log on your distribution point. This log shows any clients trying to network boot, and you can use the log as a starting point. If you see your client listed, you can probably ignore client configuration issues. If your client isn’t listed, start with client settings first.

Client settings required for PXE boot ^

Any device attempting to network boot will have to support PXE. With some older hardware and certain models (Dell, for example), you will have to make sure the following two items are in place:

  • The network card must be enabled as a bootable device.
  • The network card must have PXE support enabled. This setting is normally found in On-board Devices within the BIOS.

While you are checking these two settings, ensure that the computer has enough RAM to load Windows PE. In Windows PE 5.1, the minimum required is 512MB. Additional RAM is required as drivers and tools are added to your Windows PE image. To be safe, we required 1GB in our environment.

Although not directly related to PXE issues, ensure that the date and time in the BIOS are very close to the actual time. If not, Windows PE will load and immediately reboot. The SMBIOS GUID may be duplicated with another machine on your network. While the machine may PXE boot, it will fail to load a task sequence. Finally, ensure that devices connected to the network cable have an active link.

DHCP or IP helper for PXE across subnets ^

After you verify your hardware settings, you can move on to the next troubleshooting layer: networking. Start by network booting a machine in the same subnet and, preferably, the same switch as your distribution point. If this works, your issue lies in the PXE broadcast and the inability for clients to locate the distribution point across subnets.

When possible, avoid using DHCP options to connect clients to a distribution point. The trouble with setting DHCP options 66 and 67 is that they increase troubleshooting complexity. For example, clients may report “PXE-E53: No boot filename received” when attempting a network boot. A client will appear to successfully PXE boot but will actually be taking a slightly longer route to failure.

The current best practice for network boots across subnets is to use IP helper addresses configured at the top network device of each subnet. For example, you would start by connecting to your core switch (or the top switch at that subnet or VLAN). For an HP switch, you would use the following commands:

Config terminal
Vlan 1
IP helper-address <IPADDRESS_OF_DISTRIBUTIONPOINT>

If this switch had multiple VLANs configured, you would need to set the IP helper-address in each VLAN that you plan on network booting. The commands listed above (and shown in the screenshot below) are pretty universal to other switch models.

If your DHCP server is already listed as a helper address, just add your distribution point’s address after it. Each server will still respond to the appropriate requests.

Adding the IP address of the distribution point to VLAN 1.

Adding the IP address of the distribution point to VLAN 1

You should look at a few other things on this level. If you receive the error message “PXE-E51 No DHCP or proxy DHCP offers were received,” check your DHCP server. Ensure that addresses are available for lease and that the DHCP server is handing out addresses. If your DHCP server is virtual, ensure that the host is not blocking requests from getting to the DHCP server.

The DHCP guard setting in Hyper-V can cause PXE boot failures.

The DHCP guard setting in Hyper-V can cause PXE boot failures.

If you receive an error message such as PXE-E55, ensure that UDP port 4011 is open to your distribution point and is not blocked on devices between your client and server.

Is SCCM is configured for PXE support? ^

These last troubleshooting steps take place on your distribution point. The distribution point, your task sequence, and your boot media must be configured to allow PXE booting. These portions assume that the Windows Deployment Services Server service is started and running.

On the Configuration Manager console, navigate to Administration – Site Configuration – Servers and Site System Roles. Right-click the distribution point and select its properties. On the PXE tab, make sure that the Enable PXE support for clients check box is selected, along with the two check boxes that follow it.

Enabling PXE support on a distribution point.

Enabling PXE support on a distribution point

Next, check the deployment settings of your task sequence. The Make available to the following setting should include PXE.

This task sequence is only available to clients that boot off of media or PXE.

This task sequence is only available to clients that boot off of media or PXE.

Finally, open the properties of the boot image that your task sequence uses. On the Data Source tab, ensure that the Deploy this boot image from a PXE-enabled distribution point check box is selected. If not, select it; then, select the Content Locations tab and redistribute your boot image.

This boot image is PXE-enabled from the distribution point.

This boot image is PXE-enabled from the distribution point.

As you can see, troubleshooting PXE boot issues can be quite difficult. Many areas exist where the process can break down and cause problems. In this guide, we covered the major issues that I’ve encountered over the years. What PXE-related issues have you faced?

33 Comments
  1. Nadir 4 years ago

    Hi,

    Thanks for the reply.

    Our network department told us that they see the client talking to the server but nothing from the server back to the client. But as i said it works when we add the PXE policys in DHCP options. If something was blocked then that shouldnt work either? Or am i missing something?

    Thanks,
    Nadir

  2. Marko Mård 3 years ago

    Hi, SCCM 2012 and new Cisco (9300 series dnac/sdn?)routers, and pxe is not working.  Everything works with the old cisco routers with ip helpers and so on.

    SMSPXE.log shows that a machine connects to Pxe-enabled DP but the only thing that is missing is the "Looking for bootImage MPU00FE4" line in the log, when a computer from new networks is trying to pxe boot.

    Client lookup reply: <ClientIDReply><Identification Unknown="0" DuplicateSMBIOS="0" DuplicateMACAddress="0" ItemKey="16801928" ServerName=""><Machine><ClientID/><NetbiosName/></Machine></Identification></ClientIDReply>
    SMSPXE 14.12.2018 9:09:37 2204 (0x089C)

    18:60:24:A5:62:34, B29B74B3-3FEC-7268-2B86-DE5006050782: device is in the database. SMSPXE 14.12.2018 9:09:37 2204 (0x089C)

    Request using architecture 9. SMSPXE 14.12.2018 9:09:37 2204 (0x089C)

    Client boot action reply: <ClientIDReply><Identification Unknown="0" DuplicateSMBIOS="0" DuplicateMACAddress="0" ItemKey="16801928" ServerName=""><Machine><ClientID>GUID:94198A4C-491C-48B7-8E5D-DCA6CA8969FA</ClientID><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="MPU20285" OfferIDTime="15.11.2018 8:06:00" PkgID="MPU0118A" PackageVersion="" PackagePath="http://L-DP.pk.amk.root/SMS_DP_SMSPKG$/MPU00FE4" BootImageID="MPU00FE4" Mandatory="0"/></ClientIDReply>
    SMSPXE 14.12.2018 9:09:37 2204 (0x089C)

    18:60:24:A5:62:34, B29B74B3-3FEC-7268-2B86-DE5006050782: found optional advertisement MPU20285 SMSPXE 14.12.2018 9:09:37 2204 (0x089C)

    Request using architecture 9. SMSPXE 14.12.2018 9:09:40 2204 (0x089C)

    Client boot action reply: <ClientIDReply><Identification Unknown="0" DuplicateSMBIOS="0" DuplicateMACAddress="0" ItemKey="16801928" ServerName=""><Machine><ClientID>GUID:94198A4C-491C-48B7-8E5D-DCA6CA8969FA</ClientID><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="MPU20285" OfferIDTime="15.11.2018 8:06:00" PkgID="MPU0118A" PackageVersion="" PackagePath="http://L-DP.pk.amk.root/SMS_DP_SMSPKG$/MPU00FE4" BootImageID="MPU00FE4" Mandatory="0"/></ClientIDReply>
    SMSPXE 14.12.2018 9:09:41 2204 (0x089C)

    18:60:24:A5:62:34, B29B74B3-3FEC-7268-2B86-DE5006050782: found optional advertisement MPU20285 SMSPXE 14.12.2018 9:09:41 2204 (0x089C)
    Request using architecture 9. SMSPXE 14.12.2018 9:09:49 2204 (0x089C)
    Client boot action reply: <ClientIDReply><Identification Unknown="0" DuplicateSMBIOS="0" DuplicateMACAddress="0" ItemKey="16801928" ServerName=""><Machine><ClientID>GUID:94198A4C-491C-48B7-8E5D-DCA6CA8969FA</ClientID><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="MPU20285" OfferIDTime="15.11.2018 8:06:00" PkgID="MPU0118A" PackageVersion="" PackagePath="http://L-DP.pk.amk.root/SMS_DP_SMSPKG$/MPU00FE4" BootImageID="MPU00FE4" Mandatory="0"/></ClientIDReply>
    SMSPXE 14.12.2018 9:09:49 2204 (0x089C)

    18:60:24:A5:62:34, B29B74B3-3FEC-7268-2B86-DE5006050782: found optional advertisement MPU20285 SMSPXE 14.12.2018 9:09:49 2204 (0x089C)

    Request using architecture 9. SMSPXE 14.12.2018 9:10:05 2204 (0x089C)

    Client boot action reply: <ClientIDReply><Identification Unknown="0" DuplicateSMBIOS="0" DuplicateMACAddress="0" ItemKey="16801928" ServerName=""><Machine><ClientID>GUID:94198A4C-491C-48B7-8E5D-DCA6CA8969FA</ClientID><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="MPU20285" OfferIDTime="15.11.2018 8:06:00" PkgID="MPU0118A" PackageVersion="" PackagePath="http://L-DP.pk.amk.root/SMS_DP_SMSPKG$/MPU00FE4" BootImageID="MPU00FE4" Mandatory="0"/></ClientIDReply>
    SMSPXE 14.12.2018 9:10:05 2204 (0x089C)

    18:60:24:A5:62:34, B29B74B3-3FEC-7268-2B86-DE5006050782: found optional advertisement MPU20285 SMSPXE 14.12.2018 9:10:05 2204 (0x089C)

    That is all that comes from new networks.

     

  3. John Hanks 3 years ago

    It looks like you are showing receiving multiple copies of the same DHCP request.  We had a problem with that but I cannot remember if it was on the 6800s or 9300/9400s - and I cannot seem to find the emails about it.

    In any case, we had an issue where the router was sending multiple copies of the DHCP requests that was giving SCCM all sort of fits.  Once we got a patch for the router, it stopped and things went back to normal.

    You might look that up for your router and see if that is the issue.  If it is doign it, it will be both to your SCCM server and DHCP servers.

    John

  4. Tanmay Ghosh 3 years ago

    Hi, I am facing an issue while trying to do PXE build at one site. Rest of the sites are working fine with PXE. The PXE configuration are all same, already checked all the settings.

    The issue is happening when client try to build from PXE get the below error message.

    Press F1 key to retry boot.

    Press F2 to reboot into setup.

    Press F5 to run onboard diagnostics.

    My client, SCCM server and DHCP server all are in different VLAN.  IPhelper is configured already. In the smspxe.log I am getting the alert that client is requesting for a PXE build request and client mac address are showing there.

    But nothing happened the client is stuck with above mentioned error. Any help would be really appreciated.

    Thanks

     

    • Author

      Just to rule it out, you've tried multiple clients? If PXE configurations are the same, I would guess it would be something on the client side.

Leave a reply

Please enclose code in pre tags

Your email address will not be published. Required fields are marked *

*

© 4sysops 2006 - 2021

CONTACT US

Please ask IT administration questions in the forums. Any other messages are welcome.

Sending

Log in with your credentials

or    

Forgot your details?

Create Account