This blog will show you how to configure Hyper-v to enable PXE boot for Guest virtual machines. It’s a short blog that will show you why you could be mistaken when you deploy a virtual machine and PXE doesn’t seem to work. I was busy deploying a Citrix golden image with Microsoft SCCM when I had a small issue getting PXE to work. Solved it fairly fast but thought I’d share it with you out there.
Deploying a Virtual machine
When you deploy a virtual machine to be deployed with Microsoft SCCM you create a virtual machine with a blank hard disk. You want the virtual machine to do a PXE boot and contact SCCM to get the image.
Walking through the wizard you see the processor count, the memory and the network card.
I changed the properties and finished the wizard, the virtual machine was ready.
Next step would be to enable the machine to boot via PXE to allow SCCM to do it’s job.
So I took a look at the properties of the virtual machine from the SCVMM console, I changed the properties from the boot order and made sure PXE boot is listed as the first option.
When I did a quick test I noticed the PXE boot didn’t work the process finished too soon and gave a no boot partition error. I didn’t realize that I had a network adapter connected so I thought the boot order was wrong somewhere.
Going to the host and opening Hyper-v manager showed the following boot order. It says “Legacy Network adapter” there, throwing me off-guard again. Why does Hyper-v show Legacy when the network adapter is not legacy.
Walking back to my desk and talking to some other we realized that perhaps the information shown in hyper-v manager might be incorrect. Perhaps the network adapter we have is not a legacy one.
So we powered down the machine and added a network adapter, this time a legacy network adapter.
After adding a legacy adapter, making sure the MAC address configuration is set to Static and adding the NIC to the correct VLAN PXE started to work.
I thought it might be handy to know that the information in Hyper-v manager and SCVMM doesn’t necessarily show the network adapter installed. Keep this in mind when installing 🙂