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 🙂