DNS issue with latest build (was: Windows 10 Creator's update breaks Docker for Windows?)

I’ve just updated two different Windows 10 PCs to the new Creator’s Update (i.e. version 1703), and both machines Docker for Windows is broken afterwards. Issues observed so far:

  • Hyper-V Console cannot connect to MobyLinuxVM anymore

  • Network access (to Docker Hub) fails–a simple docker run -it---rm busybox yields
    Unable to find image 'busybox:latest' locally latest: Pulling from library/busybox 7520415ce762: Pulling fs layer C:\Program Files\Docker\Docker\Resources\bin\docker.exe: error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/00/00f017a8c2a6e1fe2ffd05c281f27d069d2a99323a8cd514dd35f228ba26d2ff/data?Expires=1492678866&Signature=IwxI5zqQCGYIYxaUz-NM2K8VzDlxv038gxmrnWqfYLHESkX1PUw-liuHfjEWZlXBUbtNnTp4rDIkFp8iBqzsfnEb9~nB0Ub2OOlxZMXVbEMbl19i0nUk1EqOwR~3xN6Cd4L9g6Fg9R4R6PL2chziKOZ0q6ivJN84VSrD8NYSu1Q_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: dial tcp: lookup dseasb33srnrn.cloudfront.net on 192.168.65.1:53: read udp 192.168.65.2:32882->192.168.65.1:53: i/o timeout.
    Similar errors occur whenever access to Docker Hub is required.

I’m pretty sure this is not an issue with my machines. One is my home machine running Win 10 Pro, the other a Surface Book running Win 10 Enterprise used for work.

Docker for Windows details:
Version 17.03.1-ce-win5 (10743)
Channel: stable

Update
It seems the fact that both machines were updated more or less on the same day was misleading me here. After looking into the logs, I’ve seen that the VpnKit component fails to run DNS queries against my WLAN router’s built-in DNS server. When configuring an external DNS server (e.g. Google DNS, or my ISP’s DNS), Docker works again as expected.

I’ve also updated one of the PCs to run Docker for Windows Edge build, which shows the same behavior.

UPDATE 2

Here’s the interesting part that fails when trying to use automatic DNS config.

[15:46:56.428][VpnKit ][Info ] Raised at file “pervasives.ml”, line 33, characters 25-45
[15:46:56.428][VpnKit ][Info ] Called from file “lib/name.ml”, line 67, characters 8-31
[15:46:56.428][VpnKit ][Info ] Called from file “lib/name.ml”, line 85, characters 10-30
[15:46:56.428][VpnKit ][Info ] Called from file “lib/name.ml”, line 112, characters 24-42
[15:46:56.428][VpnKit ][Info ] Called from file “lib/packet.ml”, line 1036, characters 30-55
[15:46:56.428][VpnKit ][Info ] Called from file “lib/packet.ml”, line 1289, characters 10-62
[15:46:56.428][VpnKit ][Info ] Called from file “lib/packet.ml”, line 1469, characters 32-48
[15:46:56.428][VpnKit ][Info ] Called from file “lib/packet.ml”, line 1486, characters 32-71
[15:46:56.428][VpnKit ][Info ] Called from file “lib/protocol.ml”, line 61, characters 9-15
[15:46:56.428][VpnKit ][Info ] dns parse exn: (Invalid_argument
[15:46:56.428][VpnKit ][Info ] “invalid bounds in Cstruct.get_uint8 50,0 off=0 len=1”)

Thanks for looking into this!

Could you also open an issue with diagnostics on the issue tracker? https://github.com/docker/for-win/issues/new

I’ll check in our company network if the same issue shows up tomorrow, and will open a new issue afterwards if the issue persists.