newsnowlabs / docker-ingress-routing-daemon

Docker swarm daemon that modifies ingress mesh routing to expose true client IPs to service containers
MIT License
161 stars 31 forks source link

Support ipv6 #18

Closed munrad closed 2 years ago

munrad commented 2 years ago

Hello. is it possible to add support for ipv6 addresses?

struanb commented 2 years ago

Hi @munrad. Thanks for trying DIND. I don't see why not. Can you explain your use case more? Are you using IPv6 for the swarm ingress network or in some other way?

munrad commented 2 years ago

For us, the question arose of supporting users with ipv6 addresses. All the services listed below are in the same swarm network. We are now using your solution for ipv4, front nginx accepts requests and proxy to python backend. It is important for us to know the real IP of the user (for geolocation)

struanb commented 2 years ago

Hi @munrad. A little digging suggests that Docker Swarm support for IPv6 is still not very good.

Although it would be necessary to configure Docker to support IPv6, I suspect this is not sufficient: it must also be possible to configure the Docker Swarm ingress network to use IPv6 before the DIND approach would become feasible. This is because for a container to see the IPv6 address of the client, all routes along the path from the client to the load balancer node, and from the load balancer node to the service node, must support IPv6.

For this reason, I am afraid it is not possible for DIND to support IPv6 at this time, and I will therefore close this issue.