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

IPv6 support #88

Closed
matisszilard opened this issue May 12, 2016 · 4 comments
Closed

IPv6 support #88

matisszilard opened this issue May 12, 2016 · 4 comments

Comments

@matisszilard
Copy link

Hi All,

I am working on a cross platform project which is using the libstrophe library.
The Apple just announced that starting from June 1 only apps that support IPv6 will be allowed to upload to the store. (https://developer.apple.com/news/?id=05042016a)
You can read more information here: https://developer.apple.com/library/mac/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html#//apple_ref/doc/uid/TP40010220-CH213-SW1
I followed the DNS64/NAT64 workflow and I created an only IPv6 network.
Using this network I tried to connect to a server with the strophe, but the connection failed.
Strophe log messages:

Libstrophe Log - [xmpp], msg [Connecting via altdomain.]
Libstrophe Log - [xmpp], msg [sock_connect to <server_address> returned 6]
Libstrophe Log - [xmpp], msg [attempting to connect to <server_address>]

Strophe can't create/open the socket and the connection went to timeout.
In a normal IPv4 network everything works fine :)

I have the following questions:

  1. Does the libstrophe support IPv6?
  2. Do you have any proposal or solution how to patch the strophe to handle this situation?

I am open for suggestions.
Thanks in advance.
Szilard

@ui-patrick-chen
Copy link
Contributor

libstrophe support IPv6, I committed some patch to sock.c
b2a98fb

I verified the IPv6 connection works on OpenWRT environment at that time, but I do not have the same environment now. Do you have any packet capture to show the IP/DNS connection?

@pasis
Copy link
Member

pasis commented May 12, 2016

Hi,

Could you tell what libstrophe version you have? Libstrophe with IPv6 support is not released yet, so you need to build libstrophe from latest sources or wait for version 0.9.

What I see from the logs is that libstrophe opened socket successfully and called connect() on the non-blocking socket.

What next logs you receive from libstrophe? I expect this is connection timeout.

If you already have the latest libstrophe and it doesn't work I can make a patch that will print more debug info about connection process. And as the next stage you can capture and analyse network traffic as @changeway suggested.

@matisszilard
Copy link
Author

Hi changeway and pasis,

First of all thank you for your efforts :) I am really happy to get a feedback in this short time.
I used the 0.8.8 version. I am going to check it with the latest version form the master branch, and give you a feedback.

@pasis Yes, it is a connection timeout. I got the following log message too:

Libstrophe Log - [xmpp], msg [Connection attempt timed out.]

@matisszilard
Copy link
Author

Checked with the latest master branch. Working fine.
Thank you for the hints.
Sz.

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

No branches or pull requests

3 participants