Hyper-V was unable to find a virtual switch with name "DockerNAT"

I have Docker version - Version 17.09.0-ce-win33 (13620)

I am getting this error while starting docker
Hyper-V was unable to find a virtual switch with name “DockerNAT”.

I have my Hyper-V and Virtualization enabled.

But as per some forums, I see Hyper-V switch is not displayed in my Network adapters.

I tried factory reset, uninstall & install hyper-v but it didn’t solve the issue.

Please advise.

Hello !
In Hyper-V Manager, click on “Virtual Network Manager”. Is there the DockerNAT switch?

Hi, thanks for your response.

No, I do not see that.

Ok, try to change (or add) a virtual adaptater (like an external virtual switch for example) for MobyLinuxVM.
Restart Docker. I think Docker will create DockerNAT and change your new adapter to DockerNAT adapter.
If not, try to manually create DockerNAT adapter (of memory, it is an internal adapter). I am not currently facing Hyper-V, so I’m trying to remember

1 Like

creating virtual switch is failing ‘error applying virtual switch properties’ for both internal and external switch

Maybe try this ?
https://social.technet.microsoft.com/Forums/en-US/aaa81680-809d-4c8d-a186-3f319cae399a/virtual-switch-manager-anomaly-failed-while-adding-virtual-ethernet-switch-connections?forum=virtualmachingmgrhyperv

Ok, try to change (or add) a virtual adaptater (like an external virtual switch for example) for MobyLinuxVM.
Restart Docker. I think Docker will create DockerNAT and change your new adapter to DockerNAT adapter.
If not, try to manually create DockerNAT adapter (of memory, it is an internal adapter). I am not currently facing Hyper-V, so I’m trying to remember

This worked! Thanks! :slight_smile:

1 Like

I also had this same issue in windows 10 pro 64bit, however in my case the root cause is due to Trend Micro Officescan was running. This prevents Hyper-V to create DockerNAT virtual switch. I had to ask our administrator to disable Trend Micro (unload), then install docker.

sequence:
uninstall docker, uninstall hyper-v & containers, reboot pc, disable trend micro, install hyper-v & containers, reboot pc, disable trend micro, install docker for desktop

Hope this helps others who has similar issue.

Try running these commands and restart docker. This worked for me.

# Done from an admin shell 
net stop vmms
net start vmms