INTRODUCTION

A Hyper-V Generation 2 machine can be compared to a running UEFI workstation. The UEFI workstation would not be able to communicate with legacy PXE, but only with UEFI. This is the same for Hyper-V Generation 2 machines. This guide explains how to start PXE over IPv4 on Generation 2 Hyper-V VMs.

If your network is configured to deploy boot images using legacy methods, you will need to configure the hardware of the virtual machine.

This blog post describes how to accomplish this.

SOLUTION

CREATE VIRTUAL SWITCH

First you need to create a virtual switch. This is required 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.

start pxe over ipv4 hyper-v Configure Virtual Switch

Create a new Virtual Switch. Select External. External is similar to “Bridged” if you are using other virtualization platforms.

start pxe over ipv4 hyper-v - Configure Virtual Switch Step 2

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

start pxe over ipv4 hyper-v - Configure Virtual Switch

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

start pxe over ipv4 hyper-v - Configure Legacy Adapter Hyper-V

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.

start pxe over ipv4 hyper-v - Configure BIOS boot priority

START VIRTUAL MACHINE

Start your Virtual Machine and now PXE boot should work 🙂

REFERENCES

RELATED POSTS