none
Hyper-V build 1703 generation 2 PXE has faulty ARP implementation

    คำถาม

  • Since build 1703 came out for Windows 10 Enterprise x64, with Hyper-v enabled, the ARP protocol does not work correctly in a Gen2 vm during a PXE boot. The result is that the DHCP protocol does not work in a gen2 vm, and thus, pxe booting is broken in a gen2 vm on the 1703 build.

    Host and guest are on subnet: 10.1.29.x /24
    DHCP server IP: 10.1.1.3
    PXE server IP: 10.1.1.3

    Here is correct ARP behavior, on a gen1 vm, notice arp for default gateway mac address, and subsequent successful DHCP, then successful download from the WDS server at 10.1.1.3.

    gen1-vmguest-1703host-ARP-correct

    Here is the faulty arp behavior as found in a Gen2 vm on the same host as above. Notice the ARP protocol trying to get the mac address of a remote subnet IP. Anyone that understands the ARP protocol recognizes immediately that this can never work.

    gen2-vmguest-1703host-ARP-failure

    Somewhere during the 1703 dev cycle this ARP regression was introduced. This needs to be investigated by the developers as there is no way to "configure" how hyper-v's gen2 embedded PXE code implements the ARP protocol.

    Please don't comment regarding "how to pxe boot in hyper-v" this PXE infrastructure is perfect. UEFI and BIOS based physical PCs on the 10.1.29.x subnet can PXE boot just fine from 10.1.1.3. Additionally, reverting the host hyper-v OS back to 1607 build, gen2 vms can successfully PXE boot. The ARP traffic change is the smoking gun for this regression.

    This ARP bug is only present in build 1703, with a generation 2 vm.

    Hope this is useful to help get this critical regression bug fixed.

    -Ben

    23 มิถุนายน 2560 19:24

ตอบทั้งหมด