Docker Swarm stacks do not allow IPV6 with an overlay network. I want to disable the ipv6 tcp6 bind on every Swarm node in the cluster to allow an IPV6->IPV4 proxy.
So how can I prevent Docker-proxy from binding on TCP6 sockets? I have net.ipv6.bindv6only=0 set, and ipv6 disabled within the daemon.json. I only have a single public IPV6 IP available, and I want to provide IPV6 to the HTTPD router container for inbound requests on every Docker Swarm node.
You can proxy IPV6 to IPV4 easily with many tools, and I am have been able to use this method for Docker outside of a Swarm configuration. It has worked great for me in the past with Docker. However, Swarm binds everything to 0.0.0.0 which takes the ipv6 socket ports. Below is a sample proxy I am trying to run.
socat TCP6-LISTEN:80,bind=[2001:XXXX:X:X:104::95],su=nobody,fork TCP:XX.XX.XX.XX:80