Conversation
|
I just tried this and the IPv6 detection does not seem to correctly work for me. I have some link-locals IPv6 but not a routable IPv6, yet it appears to detect IPv6 support as Internet.
|
|
Here's the logs of the new version! |
|
Thanks! It looks like the last route checked as a destination docker run --rm alpine:3.20 ip -6 route show table allTo find out why the heck that |
|
Here's the results of Start of my Gateway is present but that's used to contact the host over IPv6, not sure if it's the network config that's problematic? Just to be safe, here's the result of |
|
Thank you for the detailed investigation 💯 docker run --rm alpine:3.20 ip a
docker run --rm alpine:3.20 ip -6 a(referencing my previous comment):
|
|
Sorry for the delay, here's the result of both commands: docker run --rm alpine:3.20 ip a docker run --rm alpine:3.20 ip -6 a IPv6 seems to show scope global too, unfortunately. |
|
Sorry for the delay getting back; so clearly after comparing everything, there is no way to discern your routes/links from someone with full IPv6 support. As a consequence, if a default IPv6 route is found, then a final check dialing an IPv6 address (configurable, for now cloudflare.com IPv6 address) would be done, with the firewall only allowing output traffic to that address. I'm working on it, should be done around tomorrow! |
|
@diamkil when you have the time, can you try repulling |
e3e6431 to
f666713
Compare
This comment was marked as off-topic.
This comment was marked as off-topic.
|
@Tuxie your comment is rather irrelevant, so I've hidden it. This PR is about finding the IPv6 support level with |
|
Hey @diamkil ... a bit of one year later, but I'm about to merge this... if you get a few minutes, feel free to try it 😉 |
|
Hey, I just came across this PR while trying to set up IPv6 with Gluetun & Synology host which unfortunately doesn't really allow Docker daemon.json modifications thus I can't set I suppose the new detection logic would be pretty helpful in that case as it would fallback to 'supported' and not query the IPv6 Server Endpoint during initial startup but still support IPv6 inside the tunnel. I'm wondering if you still plan to merge it or if it needs additional testing? If so I'm guessing this branch is based on an older gluetun codebase and not the latest? |
|
|
d0247a1 to
0eeee5c
Compare
2c06921 to
9a5995f
Compare
fc8ac5f to
30df034
Compare
|
@pchristod I've updated the branch! I actually get the same problem with Mullvad since they have IPv6 servers, my container supports IPv6 but I did not configure my isp etc to support IPv6, so it does cycle through addresses until it reaches an IPv4 endpoint. This PR resolves this for me. See the PR description above on how to test it. @diamkil feel free to re-test this if you have any comment on it, otherwise I'll merge it next week |
|
Hi @qdm12, I've tried to test this, frist time trying a PR, so image tag as well as: and I suppose these warnings are a result of running the container on a Synology (DS918+) host and missing implementations? |
Just that one The other errors you get, I will investigate! Do you get those same errors |
|
Hi @qdm12 I've reverted to latest to check again. No, those errors are new, I just receive this one you mentioned is expected.
Thanks for following up 👍 |
- 'supported' if one ipv6 route is found that is not loopback and not a default route - 'internet' if one default ipv6 route is found
- If a default IPv6 route is found, query the ip:port defined by `IPV6_CHECK_ADDRESS` to check for internet access
|
Try pulling that image tag again (not |
|
Hi @qdm12 no worries :)
It did connect to an IPv4 Endpoint immediately. You need to see any more Log Entries, I just copied the ones I thought would be enough? Thanks |
Run it using image tag
:pr-2523. You can configure the new optionIPV6_CHECK_ADDRESSESESif you want, it defaults to[2001:4860:4860::8888]:53,[2606:4700:4700::1111]:53. You might want to run withLOG_LEVEL=debugto see what's going on with regards to IPv6.there are 3 levels of ipv6 support:
not supported,supported, andinternet.Supported means your kernel supports IPv6, but it cannot reach the internet over IPv6.
The logic for now is:
Gluetun has a new firewall setup where a query to is temporarily allowed through the firewall at container start, only to the IPv6 address/port combination to check for IPv6 support.