Every Windows 10 build upgrade breaks network access in VMWare Workstation Virtual machines.
This is fixed by ensuring all VMs are suspended/shutdown then clicking Edit | Virtual Network Editor…
Selecting Change Settings
Then Restore Defaults
But why is it breaking?
This restore defaults reconfigures a number of registry & file locations, including:
- HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap
- HKLM\SOFTWARE\Wow6432Node\VMware, Inc.\VMnetLib\VMnetConfig
- HKLM\System\CurrentControlSet\Services\VMnetDHCP
- HKLM\System\CurrentControlSet\Services\EventLog\System\VMnetDHCP
- HKLM\System\CurrentControlSet\Enum\ROOT\VMWARE
- %ProgramData%\VMware\vmnetdhcp.conf
- %ProgramData%\VMWare\vmnetdhcp.leases
- %ProgramData%\VMWare\netmap.conf
After a new Windows 10 build has been installed via Windows Update these keys are missing:
- HKLM\SYSTEM\CurrentControlSet\Services\VMnetDHCP
- HKLM\SYSTEM\CurrentControlSet\Services\VMware NAT Service
The VMWare DHCP and NAT services have disappeared. To fix it automatically we can just need to restore the services, and the related registry settings:
In my case I used had exported these settings from when VMWare was working in file called settings.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMware NAT Service] "Type"=dword:00000010 "Start"=dword:00000002 "ErrorControl"=dword:00000001 "ImagePath"=hex(2):43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,00,\ 5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,76,00,6d,00,6e,\ 00,61,00,74,00,2e,00,65,00,78,00,65,00,00,00 "DisplayName"="VMware NAT Service" "DependOnService"=hex(7):56,00,4d,00,6e,00,65,00,74,00,75,00,73,00,65,00,72,00,\ 69,00,66,00,00,00,00,00 "WOW64"=dword:00000001 "ObjectName"="LocalSystem" "Description"="Network address translation for virtual networks." "FailureActions"=hex:58,02,00,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\ 00,01,00,00,00,e8,03,00,00,01,00,00,00,e8,03,00,00,00,00,00,00,04,00,00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMware NAT Service\Parameters] "ConfigPath"=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\ 00,44,00,61,00,74,00,61,00,5c,00,56,00,4d,00,77,00,61,00,72,00,65,00,5c,00,\ 00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetDHCP] "Type"=dword:00000010 "Start"=dword:00000002 "ErrorControl"=dword:00000001 "ImagePath"=hex(2):43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,00,\ 5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,76,00,6d,00,6e,\ 00,65,00,74,00,64,00,68,00,63,00,70,00,2e,00,65,00,78,00,65,00,00,00 "DisplayName"="VMWare DHCP Service" "DependOnService"=hex(7):56,00,4d,00,6e,00,65,00,74,00,75,00,73,00,65,00,72,00,\ 69,00,66,00,00,00,00,00 "ObjectName"="LocalSystem" "WOW64"=dword:00000001 "Description"="DHCP service for virtual networks." "DeleteFlag"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetDHCP\Parameters] "ConfFile"=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,\ 44,00,61,00,74,00,61,00,5c,00,56,00,4d,00,77,00,61,00,72,00,65,00,5c,00,76,\ 00,6d,00,6e,00,65,00,74,00,64,00,68,00,63,00,70,00,2e,00,63,00,6f,00,6e,00,\ 66,00,00,00 "LeaseFile"=hex(2):43,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,\ 44,00,61,00,74,00,61,00,5c,00,56,00,4d,00,77,00,61,00,72,00,65,00,5c,00,76,\ 00,6d,00,6e,00,65,00,74,00,64,00,68,00,63,00,70,00,2e,00,6c,00,65,00,61,00,\ 73,00,65,00,73,00,00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetDHCP\Parameters\VirtualEthernetSegments] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetDHCP\Parameters\VirtualEthernetSegments\1] "ListenTo"=dword:00000001 "HostIpAddress"=dword:01f8a8c0 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VMnetDHCP\Parameters\VirtualEthernetSegments\8] "ListenTo"=dword:00000001 "HostIpAddress"=dword:0199a8c0
Then ran the following commands:
sc create VMnetDHCP type= own start= auto binPath= C:\WINDOWS\system32\vmnetdhcp.exe DisplayName= "VMWare DHCP Service" depend= VMnetuserif sc create "VMWare NAT Service" type= own start= auto binPath= C:\WINDOWS\system32\vmnat.exe DisplayName= "VMWare NAT Service" depend= VMnetuserif reg import settings.reg net start VMnetDHCP net start "VMWare DHCP Service"
The services may fail to start if registry settings are not correct.
If when you try to start these services you get error 2: File Not Found, then copy vmnetdhcp.exe and vmnat.exe from C:\Program Files (x86)\VMware\VMware Workstation to C:\Windows\System32
When the next Windows 10 build comes down I will look into why these keys get removed, if the issue is not fixed by then.
thanks man! works 100%
Any thoughts on how to do the same fix using VMware Fusion 8.x Professional. I’m experiencing the same issues.
The only way to fix this as of this message is to uninstall/reinstall Fusion.
This worked for me as well, the ONLY fix that worked
I owe you a latte! Thought I’d have to reinstall VMWare. But your quick, easy fix solved the problem instantly. Many thanks!
This fix is still required for the Windows Home 10 August 2017 update
This workaround not working for me :( i need to upgrade with SCCM Windows 10 1607 to 1709, VMware Workstation had this issue but when i restore the registry keys and serevices not working again! Please help me
The registry keys that you saved, would it work with VNWare workstation any version? Also, if my installation of VMWare Workstation is not in default location (C Drive), would it still work, or would it require any tweaking? Thanks for the reply in advance.