Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial IPv6 support #116

Closed
wants to merge 4 commits into from
Closed

Initial IPv6 support #116

wants to merge 4 commits into from

Conversation

kaechele
Copy link
Contributor

@kaechele kaechele commented Jan 2, 2020

This implements IPv6 support for both broker and client.
The broker implementation is very straightforward.
The client is a little more involved.

Initial testing showed mixed results. My initial testing suggests there may be an MTU issue with a particular ISP in our region when using IPv6. So further testing would be appreciated.

Depends on #115 and #110
Fixes #75

Add a link to useful information on this particular error which is most
likely triggered by a bug in the Kernel.
This should give users a way to identify if they are affected and give
them hints on how to rectify the situation.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
This reverts commit a461a11.
Also allow listening on multiple addresses to enable Dual Stack
operation.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
This adds IPv6 capabilities to the client. A fallback to IPv4 has been
implemented for DNS names that return both an A and AAAA record but
where the broker only replies to IPv4 requests.

This removes binding to local IPs or interfaces as we connect() the
socket which makes the Kernel choose the local endpoint automatically
based on the interface that was used for the outgoing request.

IPv6 Addresses can be passed to the client using the -b parameter like
this:

  tunneldigger [opts] -b [2001:db8::1]:8942

you can also specify the interface scope for IPv6 like this:

  tunneldigger [opts] -b [fe80::1%ens3]:8942

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
@kaechele
Copy link
Contributor Author

I will rework and resubmit this. This doesn't cleanly rebase or merge onto master by now anyway.

@kaechele kaechele closed this May 17, 2020
@RalfJung
Copy link
Member

@kaechele great! Indeed I think we can consider the other patches this is based on to be "battle-tested" by now and hence can move forward.

I wonder if we should have a release of some sort...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Get it working with IPv6
2 participants