Guide: How to get PXE boot to work in Hyper-V

posted in: Blog, Hyper-V | 19

Today, I wanted to virtualize a client that I’ve previously had as a seperate machine. So, I thought that I would just do a clean installation of the system via PXE-boot.

I didn’t quite get this to work at first, but after a little bit of reading I found out how to do it, and it’s not as straight forward as you might think it would be.

Note: This guide assumes that you have a working PXE boot environment set up.

Here’s how to do it:

1. First you need to create a virtual switch. This is needed for the Virtual Machine to be able to communicate with the network. If you already have created a virtual machine for your network, you can skip this step. Start by right-clicking the Hyper-V host in Hyper-V Manager and selecting “Virtual Switch Manager”.

Configure Virtual Switch

2. Create a new Virtual Switch. Select “External”, which is similar to “Bridged” if you’re used to other virtualization software.

Configure Virtual Switch Step 2

3. Give the new Virtual Switch a name. I named mine “Bridged”.

Configure Virtual Switch

4.  By default, there is only a “Standard Network Adapter” installed on the Virtual Machine, but for PXE functionality you will need to add a “Legacy Network Adapter”.


Add Legacy Adapter Step 1

 5. Go to the “Legacy Network Adapter” that you just added and specify that it should use the Virtual Switch that you just created.

Add Legacy Adapter Step 2

 6. Last but not least, you should change the BIOS boot priority to make sure that the Virtual Machine always tries to boot first using the “Legacy Network Adapter”. Just select the “Legacy Network Adapter” and move it to the top using the buttons.

Configure BIOS boot priority

7. Start your Virtual Machine and now PXE boot should work 🙂


19 Responses

  1. WallaceTX

    Thank you for the Help!

    It works fine 🙂

  2. sasitharan ramanathan

    thanks a lot. it helped me a lot to get my pxe boot setup.

  3. votedustinno1

    Thanks Daniel,

    I was unsure where my PXE setup in Hyper-V was failing, so ended up setting up VM in VMWare first. When it worked, i knew the issue was with Hyper-V rather than the PXE config.

    Thanks a lot

  4. gm_pentaxfan

    Thanks Daniel.

    We don’t use “Enable unknown computer support” in our Config Manager setup, so the PXE boot would not get an IP address.

    Enable a static MAC on the VM and then import that information into Config Manager and add that computer to our “Imaging” device collection. System PXE booted and started imaging the system.

  5. Chris Perkins

    Thanks! This worked so well. I recently migrated to Windows 8.1 and am responsible for creating and maintaining our MDT deployments. PXE in Hyper-V should greatly simplify this task.


  6. john montes

    Thanks for the tip sheet, I had missed the step of adding the Legacy network adaptor and linking it to the bridged virtual switch, looking good now 🙂

    I’m PXE booting some Linux VM’s that are running on hyper-v, some are running on KVM, and a few bare metal servers

  7. Fernando

    Hi, my hyper-v don’t have “Legacy Network Adapter”, what I need to do? I have “SCSI Controller”, “Network Adapter” and “Fibre chamnel Adapter”…thanks

  8. Frank

    Hi Fernando,

    You must have created a Gen 2 Hyper-V machine. The legacy Adapter does not show in Gen 2.

  9. Mario

    Hi Daniel,

    Could you be so kind and explain me how can i connect from a physical workstation to a VM running on a standalone Hyper-V Server. Could the problem be that i have no DHCP Server running in my network ?
    One addional question: Is it possible to assign a physical workstation to a VM ?

    Thanks in advance


  10. Witchdoc

    Hey there;
    I have a working pxe environment that I’ve used for years to boot a ghost environment. It works great on physical machines but it doesn’t work with my hyper-v vm’s. My test vm gets an IP address ok and downloads the WDSNBP then I get the ‘Press F12 for network service boot’ but then I get ‘Windows Deployment Services: PXE Boot Aborted’. Any thoughts as to what might be going on?


  11. Witchdoc

    Don’t worry about it. I figured it out on my own.


  12. Robert Chapman

    Whew. Thank you! Posts like this are so refreshing. Legacy Network Adapter did the trick!

Leave a Reply