Updater does not work on IPv6

I have a problem that Turris 1.1 does not update itself when i have IPv6 enabled.
IPv6 works fine on my provider network. If you have tests to try, let me know.

Below XXXX means https (i can’t put links in my post for some reason)

This is with IPv6 enabled. It tries the IPv6 address and gets stuck there. It does not jump to IPv4.
root@turris:~# wget https://repo.turris.cz/omnia/lists/base.lua
–2020-07-26 22:45:14-- XXXX://repo.turris.cz/omnia/lists/base.lua
Resolving repo.turris.cz… 2001:1488:ac15:ff80::69, 217.31.192.69
Connecting to repo.turris.cz|2001:1488:ac15:ff80::69|:443… ^C

Now i disabled IPv6 in the Turris administration. Suddenly the updater was able to get the base file.

root@turris:~# wget https://repo.turris.cz/omnia/lists/base.lua
–2020-07-26 22:46:44-- XXXX://repo.turris.cz/omnia/lists/base.lua
Resolving repo.turris.cz… 2001:1488:ac15:ff80::69, 217.31.192.69
Connecting to repo.turris.cz|2001:1488:ac15:ff80::69|:443… failed: Permission denied.
Connecting to repo.turris.cz|217.31.192.69|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 9250 (9.0K)
Saving to: ‘base.lua’

base.lua 100%[=================================================>] 9.03K --.-KB/s in 0s

Please fix the updater so it tries IPv4 when IPv6 does not work.

The same experientace.

works fine for me on IPv6 (Turris Omnia, 5.0.4 OS). My output is somewhat different?

root@turris:~# wget https://repo.turris.cz/omnia/lists/base.lua
Downloading 'https://repo.turris.cz/omnia/lists/base.lua'
Connecting to 2001:1488:ac15:ff80::69:443
Writing to 'base.lua'
base.lua             100% |*******************************|  9250   0:00:00 ETA

This looks like the connectivity between your Turris (ISP) and the CZ.NIC repository is not working.

wget soes not support Happy Eyeballs, therefore it takes ages to fall back to IPv4. curl does support it and would therefore be a better choice for the updater, as it would cover the brokenness of the IPv6 network.

The better choice is to ask your ISP to fix the connectivity issue. :slight_smile:

EDIT: @Rubep @crowndip: what are your ISPs? Could you run a traceroute to repo.turris.cz?
I have initiated a quick worldwide RIPE Atlas measurement towards repo.turris.cz and with some ISPs, the service is indeed unreachable (implying routing issues): https://atlas.ripe.net/measurements/26461600/#!probes

1 Like

I agree my ISP is having most likely an IPv6 problem. I sent them a ticket last night, waiting for reply. Still it does not explain why the updater did not fall back to IPv4.

The problem is that the updater never fell back to IPv4. My router was stuck because of that on 3.11.3
After i disabled IPv6 on my router, it correctly updated to 3.11.18

1 Like

Also my ISP has comfirmed he has an IPv6 problem.
I also had to turn off ipv6 on Turris manually.

Updater uses curl.

Since Turris OS 3.11.17, which we released at the beginning of June, there is curl 7.70.0, which included cleanup for Happy Eyeballs and fixed some related bugs. It is possible that you were encountering them even though you should receive notifications every 4 hours that the router is not able to update itself, and some improvements were included in 7.71.0, which was released recently and I will try to update it in upcoming releases of Turris OS 3.11.x.

In the meantime, as it was suggested to you, you should have reached your ISP to look at the IPv6 issues, which you experienced, and also, you might want to disable IPv6 until you update to the latest version of Turris OS.

3 Likes

OK and thank you.

I really appreciate the work of the Turris dev team.