Bug 2672 - Support IPv6
: Support IPv6
Status: NEW
: ThinLinc
: trunk
: PC Unknown
: P2 Enhancement
: ProductCouncil
Assigned To:
: 3999 5360 5755 7131
  Show dependency treegraph
Reported: 2008-01-30 08:28 by
Modified: 2018-04-03 12:44 (History)
Acceptance Criteria:



You need to log in before you can comment on or make changes to this bug.

Description From cendio 2008-01-30 08:28:35
Sooner or later, probably later.
------- Comment #1 From cendio 2010-10-25 09:58:22 -------
Apparently we already have some rudimentary support as the OpenSSH we ship
supports IPv6. I was successfully running ThinLinc via IPv6 against my ThinLinc
server at home this weekend.
------- Comment #2 From cendio 2014-04-04 14:37:57 -------
I think the biggest challenge with IPv6 is supporting RFC 3484[1].
Administrators should be able to configure agent_hostname with IP addresses,
which means they will need to specify at least two in order to support both
IPv4 and IPv6. To properly follow IPv6 behaviour we should allow any number of
addresses though.

The problem is that normally the magic to select between addresses is handled
by getaddrinfo(). But that only works if we have a single hostname. So we will
most likely need to duplicate the logic in there.

Lastly we need to change our SSH interaction so we can attempt a connection at
each of those candidate addresses. Either we change ssh so we can give it
multiple addresses, or we let tlclient handle connection errors and starts ssh
multiple times until we get a connection.

Might want to look at bug 2810 at the same time if we're doing a lot of work on
name resolution.

[1] http://www.ietf.org/rfc/rfc3484.txt
------- Comment #3 From cendio 2014-05-27 10:49:01 -------
Remember to test with IPv6 disabled after this is done.
------- Comment #4 From cendio 2014-11-19 14:11:01 -------
Note that Windows got most of it's IPv6 support after XP, so we might need to
drop that platform to support IPv6 on Windows.
------- Comment #5 From cendio 2015-04-28 17:11:06 -------
Information about how glibc does getaddrinfo():

------- Comment #6 From cendio 2015-12-01 11:14:37 -------
We should also consider implementing "Happy Eyeballs", i.e. RFC 6555.