Skip to content

IPv6 options refinement: --ipv6 behaving better out of the box (concerns both options and default behavior regarding IPv6 in custom networks) #41754

Description

@ell1e

As discussed in #41622 there might be some followup changes that could help to make IPv6 even more intuitive and alike to docker's IPv4 handling, now that IPv6 NAT is merged.

There are two topics that I possibly see as related to making IPv6 intuitive out of the box:

  1. how should the command line options handle things out of the box (since right now --ip6tables for example doesn't set --fixed-cidr-ipv6 to a private subnet which would be what most people would want, and --ipv6 doesn't set the new --ip6tables either which is probably also what most people would want)

  2. how should IPv6 work with custom networks, for example should the default bridge network have IPv6 enabled by default, and should other networks for which it wasn't explicitly named when IP6NAT mode is on have it enabled, etc.

I propose to discuss both of these things in this ticket.

Here is a detailed proposal by @tomalok for an options overhaul that I think would be one of the best ways to go about it regarding the options question:

--ipv6 [--ipv6-nat] - turn on IPv6 support, default non-routable IPv6 CIDR, use NAT/ip6tables
[--ipv6] --fixed-cidr-v6 - turn on IPv6 support, using specified IPv6 CIDR, do not use NAT/ip6tables
[--ipv6] --fixed-cidr-v6 --ip6-nat - turn on IPv6 support, use specified IPv6 CIDR, use NAT/ip6tables

(I think --ipv6-nat here is just a different name for the current option name --ip6tables, but hopefully @tomalok can jump in to clarify)

I am just an outsider and not really a code contributor to docker/moby myself, so I just hope to get the discussion going. Basically I'm saying, just take my suggestions as a vague input but I shouldn't be the person to make any of the final calls or even be regarded as an important opinion, in the end I'm just an end-user as many others. Hopefully, this ticket will help the right people to come to useful conclusions!

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/networkingNetworkingarea/networking/ipv6Networkingkind/enhancementEnhancements are not bugs or new features but can improve usability or performance.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions