Error initializing network controller: hnsCall failed in Win32: No such interface supported (0x80004002)

So this is an issue that I believe lies with Windows, but it is affecting my ability to use Docker with Windows Containers.
I am able to run Docker with Linux Containers and they work fine, but when I try to switch to Windows Containers, it fails with the HNS error.
I have already opened Issue #4028 on github where you can find all my logs and information.

I will post the output of Debug-ContainerHost.ps1, found here :

Checking for common problems
Container Host OS Product Name: Windows 10 Enterprise
Container Host OS Build Label: 17763.1.amd64fre.rs5_release.180914-1434
Describing Windows Version and Prerequisites
 [+] Is Windows 10 Anniversary Update or Windows Server 2016 772ms
 [+] Has KB3192366, KB3194496, or later installed if running Windows build 14393 117ms
 [+] Is not a build with blocking issues 29ms
 [+] Has 'Containers' feature installed 48.6s
Describing Docker is installed
 [+] A Docker service is installed - 'Docker' or 'com.Docker.Service'  79ms
 [+] Service is running 27ms
 [+] Docker.exe is in path 5.16s
 [+] Docker is registered in the EventLog service 114ms
Describing User has permissions to use Docker daemon
 [+] docker.exe should not return access denied 39ms
Describing Windows container settings are correct
 [+] Do not have DisableVSmbOplock set to 1 30ms
 [+] Do not have zz values set 63ms
 [+] Do not have FDVDenyWriteAccess set to 1 42ms
Describing The right container base images are installed
WARNING: No mcr.microsoft.com/* base images found. Checking for deprecated images.
 [-] At least one of 'mcr.microsoft.com/windows/servercore', 'mcr.microsoft.com/windows/nanoserver', 'mcr.microsoft.com/windows' or deprecated microsoft/windowsservercore, microsoft/nanoserver should be installed 279ms
   ValidationMetadataException: The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
   ParameterBindingValidationException: Cannot validate argument on parameter 'Property'. The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
   at <ScriptBlock>, <No file>: line 126
Describing Container network is created
 [+] At least one local container network is available 2.09s
 [-] At least one NAT, Transparent, or L2Bridge Network exists 82ms
   Expected {0} to be greater than {0}
   218:       $totalnets | Should BeGreaterThan 0
   at <ScriptBlock>, <No file>: line 218
 [-] NAT Network's vSwitch is internal 55ms
   Expected: {Internal}
   But was:  {}
   223:       $switchType | Should Be "Internal"
   at <ScriptBlock>, <No file>: line 223
 [+] A Windows NAT is configured if a Docker NAT network exists 105ms
 [-] Specified Network Gateway IP for NAT network is assigned to Host vNIC 41ms
   Expected: value to not be empty
   237:       $natGatewayIP | Should Not BeNullOrEmpty
   at <ScriptBlock>, <No file>: line 237
 [-] NAT Network's internal prefix does not overlap with external IP' 32ms
   Expected {0} to be greater than {0}
   264:         $hostips.Count | Should BeGreaterThan 0
   at <ScriptBlock>, <No file>: line 264
Showing output from: docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 18.09.2
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.125-linuxkit
Operating System: Docker for Windows
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.934GiB
Name: linuxkit-00155d2a1105
ID: TN4W:HEJC:XG4H:Y3OO:HH4H:O74N:VQ7T:RANE:EXDO:RFYB:J52O:HJ5V
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 23
 Goroutines: 47
 System Time: 2019-06-04T19:44:34.7900475Z
 EventsListeners: 1
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine


Showing output from: docker version
Client: Docker Engine - Community
 Version:           18.09.2
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        6247962
 Built:             Sun Feb 10 04:12:31 2019
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.2
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.6
  Git commit:       6247962
  Built:            Sun Feb 10 04:13:06 2019
  OS/Arch:          linux/amd64
  Experimental:     false

Showing output from: docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
993be1af2081        bridge              bridge              local
8fd11cbb3d35        host                host                local
2057fe057ad3        none                null                local

Getting Warnings & errors in the Windows event logs from the last 24 hours
Logs saved to C:\Users\19030430\OneDrive - Carestream Dental\Downloads\logs_20190604-154444.csv


Getting Docker for Windows daemon logs from the last execution
    Note: More logs may be available at C:\Users\19030430\AppData\Local\Docker. Only showing the latest 100 lines.

The README.md does not provide information for how to fix the errors that I am specifically seeing from this script.

Searching for the two main HNS errors I am receiving (“No such Interface supported” and “The object invoked has disconnected from it’s clients”) do not produce any relevant search results.

I have tried many things to resolve this, and have found nothing to work. I need to have Docker working with Windows Containers for my day job. It’s not really an option to just give up on getting Docker to work.

Let me know if I need to provide anymore details. Thank you in advanced for any help given.

1 Like

Did you get this working? I’m seeing the same problem…