none
PXE Boot with UEFI. WDS not sending WinPE wim

    Question

  • I am trying to test PXE booting on devices that only have UEFI and no CSM support.
    We are running Windows Server 2008 R2 in our environment.

    On the DHCP server, we have option 66 and 67 set. If I change option 67 to SMSBoot\x86\wdsnbp.com and boot a traditional BIOS system (non UEFI) the SCCM server responds and gives me the option to hit F12 and PXE boot. This works without issue and can deploy images.

    I then change option 67 to SMSBoot\x64\wdsmgfw.efi and use a machine that is pure UEFI (meaning UEFI without any legacy support / CSM). The system appears to successfully download the wdsmgfw.efi and font file via TFTP as shown in the WDS logs. However, it then goes to the next sreen where it is trying to contact the WDS server. AFter retrying for a while it will error out with error 0x102 which I believe translates to ERROR_TIMEOUT

    The SMSPXE.log repeats the following:
    Client boot action reply: <ClientIDReply><Identification Unknown="0" ItemKey="2046820352" ServerName="" ServerRemoteName=""><Machine><ClientID>8908f9c4-c345-49ba-b137-af7b0b983584</ClientID><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="GAS20043" OfferIDTime="7/24/2013 3:12:00 PM" PkgID="GAS00037" PackageVersion="" PackagePath="<a href="http:///SMS_DP_SMSPKG$/GAS00038">http://<IVE REMOVED  THIS>/SMS_DP_SMSPKG$/GAS00038" BootImageID="GAS00038" Mandatory="0"/></ClientIDReply>
     SMSPXE 7/24/2013 7:14:58 PM 7724 (0x1E2C)
    00:50:56:01:00:82, DF6A0C42-F909-B518-7B44-3150B662200B: found optional advertisement GAS20043 SMSPXE 7/24/2013 7:14:58 PM 7724 (0x1E2C)
    Looking for bootImage GAS00038 SMSPXE 7/24/2013 7:14:58 PM 7724 (0x1E2C)

    Any idea what may be going on?

    Thursday, July 25, 2013 1:31 PM

All replies

  • Have you tried upgrading the UEFI on the system? UEFI at best has been flaky until very recently for many things including PXE booting.

    Jason | http://blog.configmgrftw.com

    Thursday, July 25, 2013 1:57 PM
  • Jason,

    Currently I am testing with a 64-bit VMWare system. WE are runnign ESX 5.1 and VM hardware version 9. I'm not sure if that is causing an issue, but I cannot upgrade the VM hardware as it is the latest out for production.

    Thursday, July 25, 2013 2:05 PM
  • Torsten,

    Yes actually, I have seen that site. WE are running CM 2012 SP1 CU2. When I check the RemoteInstall folder and go under SMSBoot there are the x86, x64 and fonts folders. Both the x86 and x64 folders have the bootmgfw.efi and wdsmgfw.efi files.

    Option 67 current points to SMSBoot\x64\wdsmgfw.efi

    The way I read the article you referenced was that you could do 64-bit (I assume this is x86-64/amd64 and not IA-64) with Server 2008 R2. If I wanted to do 32-bit I would need Server 2012 (even though it appears that the files are in place which is different than what the article shows).

    Thursday, July 25, 2013 2:09 PM
  • Is the boot image GAS00038 deployed to the PXE enabled DP?

    Torsten Meringer | http://www.mssccmfaq.de

    Thursday, July 25, 2013 2:22 PM
  • @Torsten YEs, I have PXE enabled on the WinPE image. Here is a screencap:

    • Edited by James Ihde Thursday, July 25, 2013 2:26 PM Added Image
    Thursday, July 25, 2013 2:25 PM
  • Here is what I am seeing after the VM downloads the .efi and font file:

    Thursday, July 25, 2013 2:28 PM
  • Here is UEFI PXE Booting on a Dell Latitude E6430 laptop. It is in pure UEFI mode with Legacy Option ROM disabled.

    It behaves the same way as the VM. I just wanted to get another data point to make sure I'm seeing the same behavior on more than one platform.

    Thursday, July 25, 2013 3:26 PM
  • I'm still working on this issue. If anyone has any input I'm happy to hear it.

    I currently have a case open with Premier Support on this issue. Latest update is I've sent a network trace capture to Microsoft for them to analyze.

    I cannot be the only one out there trying to do UEFI PXE booting for a 64-bit system against SCCM 2012 SP1 CU2 on Windows Server 2008 R2 SP1. Anyone else out there with a similar configuration?

    Tuesday, August 06, 2013 9:41 PM
  • Hi,

    I am having exactly the same issue here.
    Using Microsoft Surface Pro with Microsoft Surface Pro Network Adapter.
    Setting DHCP Option 66 to my distribution Point (I tested already with 2008 R2 SP1 and  2012 Server - exactly the same problem) and option 67 to SMSBoot\x64\wdsmgfw.efi.

    Surface gets the wdsmgfw.efi file and tries to contact the WDS Server after some time i get error 0x102.

    I already searched he internet for this issue but only thing i found was this thread.

    Are there some more suggestions?

    EDIT:
    Based on the hex error code 0x102 ^= 258 i found the following article.
    At the moment I am testing if this can bring us forward...
    http://technet.microsoft.com/en-us/library/dd353491%28v=ws.10%29.aspx



    • Edited by MK-Maddin Thursday, August 08, 2013 6:57 AM
    Wednesday, August 07, 2013 6:14 AM
  • okay...
    playing around with the settings above was not successfull, too.

    Just getting failure

    Windows Deployment services encountered an error:
    Error Code: 0X102

    Now I am waiting for an answer of Microsoft....

    Wednesday, August 07, 2013 9:13 AM
  • I've still got my case open. Nothing so far.

    I may have made a little progress in trying to figure this out though. I did the following:

    1. Created a Server 2012 VM, installed WDS and added an x86 and x64 WinPE media.
    2. Left option 67 as indicated and PXE booted a machine against it from another network. I got the 0x102.
    3. I then spun up another VM on the same network as the Server 2012 system and did the PXE boot and it worked. I actually got a little bit different screen as well before the normal WDS screen.
    4. I removed option 67 all together and it still booted up properly for the VM on the same network.
    5. Checking the VM on a different network it either got to the 0x102 error with option 67 set or a PXE-E18 error when I left option 67 off.

    not sure where to go from here. BIOS PXE booting works fine to this server regardless of whether the VM is on the same network or not. Possible limitation of UEFI PXE booting? I cannot find anything out there on this.

    Saturday, August 10, 2013 4:41 AM
  • Alright, I believe I've cracked this finally.

    I went into my DHCP options for the network that was on a different network than WDS server and set option 60 to PXEClient. After I did this, it was like magic started...

    Networks that were not the same as the WDS started showing a message similar to the one above.

    I went ahead and changed option 66 to point to my SCCM 2012 SP1 server running Windows Server 2008 R2 SP1 and the results were the same. The VM downloaded the WinPE file and booted into WinPE.

    What I don't understand is why all the regular BIOS PXE booting worked without having to specify option 60? Maybe something to do with UEFI systems specifically?

    In any case, I hope this thread helps others out there that are struggling with this issue.

    Saturday, August 10, 2013 5:56 AM
  • This does sound like something specific to your UEFI implementation.

    Do you have iphelpers in place to direct the PXE broadcasts?


    Jason | http://blog.configmgrftw.com

    Saturday, August 10, 2013 3:51 PM
  • Perfect...

    setting Option 60 worked for me, too.
    But while this is set all BIOS devices can't boot from WDS.

    Options set are:
    Option 60: PXEClient
    Option 66: IP of 2008R2SP1 WDS Server
    Option 67: SMSBoot\x86\wdsnbp.com

    Should i change option 67 to something else?

    Thank you for help

    Monday, August 12, 2013 9:31 AM
  • Same question, do you have iphelpers in place or were you relying on DHCP scope options? If DHCP scope options, why? Have you tired with just iphelpers?

    Jason | http://blog.configmgrftw.com

    Monday, August 12, 2013 12:58 PM
  • Jason,

    As far as I know we have IP Helpers in place. I say this because without them setting up the DHCP scope and options did nothing. I created the DHCP scope and then had the network team create the IP Helper for that network.

    So, let us say the DHCP server is on network 10.10.10.0/24 (VLAN10) and the PXE server is on 10.10.20.0/24 (VLAN 20) and my client is on 10.10.30.0/24 (VLAN 30).

    Let's say the DHCP server IP is 10.10.10.200 and PXE server is 10.10.20.150

    Then shouldn't the configuration be something like below for the IP Helper?

    interface Vlan30
       ip address 10.10.20.1 255.255.255.0
       ip helper-address 10.10.10.200          <-- DHCP Server

    On the DHCP server for the 10.10.30.0/24 network, the options would be:
    Option 003 Router: 10.10.30.1
    Option 006 DNS Servers: <IPs of DNS servers>
    Option 043 Vendor: <Vendor specific string>
    Option 066 Boot Server: <FQDN of your PXE server>
    Option 067 Bootfile Name: (BIOS) SMSBoot\x86\wdsnbp.com (UEFI x64) SMSBoot\x64\wdsmgfw.efi     (Obviously pick the correct one)

    That is more or less what we had and was not working. It was not till adding the Option 060 ClassID of PXEClient that UEFI started working. Do we need to add the IP Address of the PXE server to the ip helper list? Something like this?

    interface Vlan30
       ip address 10.10.20.1 255.255.255.0
       ip helper-address 10.10.10.200          <-- DHCP Server
       ip helper-address 10.10.20.150          <-- PXE/WDS/SCCM DP Server

    Monday, August 12, 2013 1:30 PM
  • DHCP scope options and iphelpers for PXE are mutually exclusive for PXE booting: you use one or the other for PXE boot. DHCP scope options will trump iphelpers though.

    So, that comes back to why you are using DHCP scope options at all? iphelpers are the Microsoft supported method since they do not rely on the NIC to do the correct thing.

    Note that I don't know the perfect/correct answer here, just trying to gather and provide more info to help you walk through the possibilities.


    Jason | http://blog.configmgrftw.com


    Monday, August 12, 2013 1:35 PM
  • Jason,

    I'm working with what has been in place for years and has been working. However, if there is a correct or better way to accomplish this then I am all ears. Is this the configuration you are suggesting?

    On Windows DHCP Server, configuration options 66 and 67 as appropriate.

    On network switch/router set the ip helper-address like I've listed above.

    Or are you saying that we should not need to even set options 66 and 67??? or getting ride of ALL the options that are set? When you say overwrite, does it overwrite only the ones that you are setting?


    • Edited by James Ihde Monday, August 12, 2013 1:47 PM Expanded Questions.
    Monday, August 12, 2013 1:44 PM
  • If you use DHCP scope options, your iphelpers are never used (at least not on the systems that receive those options). There's no reason for them to as the DHCP scope options tell the NIC where to find the PXE server.

    This is problematic for multiple reason though and is why strictly iphelpers are recommended; i.e., no PXE DHCP scope options configuraded at all.


    Jason | http://blog.configmgrftw.com

    Monday, August 12, 2013 1:49 PM
  • I'm doing some more digging, but it appears that we are leveraging a Nexus device now. The options and configuration before differently as well.

    Here is an article explaining the differences for DHCP: https://supportforums.cisco.com/docs/DOC-14753

    This is a thread in regards to PXE Boot issues on Nexus: https://supportforums.cisco.com/message/3478297#3478297

    It sounds like you need to add the PXE server as another DHCP relay:   ip dhcp relay address <ip address>

    I'm going to get with our network team to see if they can add the PXE server to the list.

    Monday, August 12, 2013 2:42 PM
  • Hey,

    I am having the following situation:
    DP1 = Windows Server 2008 R2 SP1 (Standalone Primary Site Server SCCM 2012 SP1 CU2)
    DP2 = Windows Server 2012

    UEFI Client: Microsoft Surface Pro (with Microsoft Surface Network Adapter)
    BIOS Client: HyperV Virtual machine with Legacy network adapert

    DP1; DP2 and DHCPServer all in Subnet1.
    (IP Helper is set for DHCPServer for DHCP and for DP1 & DP2 for DHCP and BootP - I checked serveral times if everything is right here)
    UEFI Client and BIOS Client in Subnet2.

    Situation1 -- Using no DHCP Options and both DPs(DP1 and DP2) WDS running:
    UEFI Client - Boots perfectly (contacting Server DP2)
    BIOS Client - Boots perfectly (contacting Server DP2)

    Situaion2 -- Using no DHCP Options and WDS just running on DP1:
    UEFI Client - Does not boot (no error information is provided)
    BIOS Client - Does not boot (no Bootfilename recieved)

    Situation3 -- Using DHCP Options(Option 66="IP of DP1" Option 67="SMSBoot\x86\wdsnbp.com") and WDS just running on DP1:
    UEFI Client - Does not boot (no error information is provided)
    BIOS Client - Boots perfectly (contacting Server DP1)

    Situation4 -- Using DHCP Options(Option 60="PXEClient" Option 66="IP of DP1" Option 67="SMSBoot\x86\wdsnbp.com") and WDS just running on DP1:
    UEFI Client - Boots perfectly (contacting Server DP1)
    BIOS Client - Does not boot (taking hours to recieve dhcp options..)

    My problem is i am having a lot of location with 2008 R2 SP1 server only (this is why situation 1 is not enough for me :-( ).
    Based on this article:
    http://ccmexec.com/2013/05/configmgr-2012-uefi-and-pxe-boot-support/
    x64 UEFI Devices should work with Server 2008 R2 SP1 (not only Server 2012).
    Interesting is I am having ALL files on Server 2008 R2 SP1 like they are on Server 2012 (in SMSBoot\x86 folder, too!)??

    Some more ideas?

    Thank you for help


    • Edited by MK-Maddin Tuesday, August 13, 2013 2:20 PM
    Tuesday, August 13, 2013 2:20 PM
  • Okay I found a solution to my problem with the Server 2008 R2 SP1 WDS.
    It is working for X64 UEFI devices, too.
    I had to remove PXE Role in SCCM and add it again after some time.
    Seems there was a missconfiguration with WDS at the DP1.

    As solution to be able to use UEFI and BIOS(legacy boot) based devices I would say:
    If your DHCP and WDS server are in the same subnet and your client in another one, you need to enable bootP forward to WDS and DHCP forward to DHCP server with IPhelper. Do NOT use any DHCP options (60, 66 & 67)  in DHCP. This makes the Client decide on their own which bootfile they need.

    Kind regards

    MK-Maddin
    • Proposed as answer by MK-Maddin Tuesday, November 19, 2013 6:40 PM
    Friday, August 30, 2013 5:32 AM