Skip to content

Commit

Permalink
Document how IPv6-only works in Docker Desktop
Browse files Browse the repository at this point in the history
Signed-off-by: Albin Kerouanton <[email protected]>
  • Loading branch information
akerouanton committed Sep 27, 2024
1 parent 23f3fbd commit 5afd08c
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 0 deletions.
32 changes: 32 additions & 0 deletions content/manuals/desktop/networking.md
Original file line number Diff line number Diff line change
Expand Up @@ -184,3 +184,35 @@ to give the container direct access to the network stack of the host.

See the [run command](/reference/cli/docker/container/run.md) for more details on
publish options used with `docker run`.

### IPv4-only, Dual-stack and IPv6-only

{{% experimental title="Beta" %}}
This feature is currently in [Beta](../release-lifecycle.md#beta).

The exact semantics of all three options might change in future releases.

Note:

- IPv6 is not available for Docker Desktop on Linux.
- If using WSL 2 on Windows, the Linux kernel must have IPv6 configured and enabled.
{{% /experimental %}}

Starting with v4.35, Docker Desktop has new options to configure how the VM behaves and the default
settings applied to Docker networks. Dual-stack is the default mode.

In IPv4-only mode, the DNS resolver embedded in the VM only serves A (= IPv4) records and
suppresses any AAAA (= IPv6) records. This might be useful if some of your containerized software

Check warning on line 205 in content/manuals/desktop/networking.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.Acronyms] ' AAAA' has no definition. Raw Output: {"message": "[Docker.Acronyms] ' AAAA' has no definition.", "location": {"path": "content/manuals/desktop/networking.md", "range": {"start": {"line": 205, "column": 15}}}, "severity": "WARNING"}
tries to connect to IPv6 addresses but your host doesn't have proper IPv6 connectivity.

In Dual-stack mode, both A and AAAA records are served by the DNS resolver. Docker networks are

Check warning on line 208 in content/manuals/desktop/networking.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.Acronyms] ' AAAA' has no definition. Raw Output: {"message": "[Docker.Acronyms] ' AAAA' has no definition.", "location": {"path": "content/manuals/desktop/networking.md", "range": {"start": {"line": 208, "column": 31}}}, "severity": "WARNING"}
created with an IPv4 subnet assigned, but no IPv6 subnet. You must pass the `--ipv6` flag to
[`docker network create`](https://docs.docker.com/reference/cli/docker/network/create/#options),
or put [`enable_ipv6: true`](https://docs.docker.com/reference/compose-file/networks/#enable_ipv6)
in network declarations in Compose files.

In IPv6-only mode, the DNS resolver serves only AAAA records, and Docker Engine assigns IPv6

Check warning on line 214 in content/manuals/desktop/networking.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.Acronyms] ' AAAA' has no definition. Raw Output: {"message": "[Docker.Acronyms] ' AAAA' has no definition.", "location": {"path": "content/manuals/desktop/networking.md", "range": {"start": {"line": 214, "column": 48}}}, "severity": "WARNING"}
subnets by default to your networks. This might be useful if you run Docker Desktop in an
environment where IPv4 is getting phased out but has not been entirely shut down yet.

For more details about IPv6 in Docker Engine refer to [Use IPv6 networking](/manuals/engine/daemon/ipv6.md)
2 changes: 2 additions & 0 deletions data/redirects.yml
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@
- /docker-hub/api/latest/
"/reference/api/hub/dvp/":
- /docker-hub/api/dvp/
"/desktop/networking/#ipv4-only-dual-stack-and-ipv6-only":
- /go/desktop-ipv6-only/

# feedback
"https://docs.google.com/forms/d/e/1FAIpQLSenjK8KiBiOrwCpq06u_iVEZGv4tfTEpfmY_cQDmsqJrHL9Gw/viewform":
Expand Down

0 comments on commit 5afd08c

Please sign in to comment.