I tried this at first with Virtualbox, but I was unable to get nested virtualization working even with the “magic command” to allow it. So, after some digging around on ChatGPT, I figured, why not try Hyper-V and eliminate software that doesn’t need to be installed in the first place except for a windows feature that is available on Windows 11 Professional. There’s a few tricks to get it working:
Basic fundamentals
- Use an external vSwitch
- Turn on nested virtualization from the Powershell administrator command line
- Turn on MAC Address spoofing from the Powershell administrator command line
- Do not use dynamic memory in the Proxmox instance since it won’t be supported
- Do not use EFI to boot Proxmox in Hyper-V
To turn on nested virtualization for a virtual machine named “Proxmox”. This step allows KVM acceleration in Proxmox greatly improving performance.
Set-VMProcessor -VMName "Proxmox" -ExposeVirtualizationExtensions $true
For a virtual machine named “Proxmox” do the following to enable MAC Spoofing. This step is important because Proxmox will pass through packets from guest VMs through its bridge but Hyper-V will see them and drop them without spoofing enabled.
Get-VMNetworkAdapter -VMName "Proxmox" | Set-VMNetworkAdapter -MacAddressSpoofing On
That’s all folks!