profanity icon indicating copy to clipboard operation
profanity copied to clipboard

Opportunistic IPv4/IPv6 connection

Open quite opened this issue 8 years ago • 6 comments

I had IPv6 connectivity loss on my server for a while, and noticed Profanity failing to connect at all. It would be great with some kind of googley eyes behaviour, probably for each and every one of the connections it tries to establish.

quite avatar Mar 06 '17 06:03 quite

The domain of my server is reachable via IPv4 and v6. However the xmpp service only listens on IPv4. Being configured like this i can not connect to my server with profanity. If connection through one method fails, the other should be tried as well. Other clients like mcabber and conversations had no problem.

My server admin was unaware about missing IPv6 connectivity and is going to fix it. On the other hand from 1000 clients nobody seemed to have an issue with that in 5 years :sweat_smile:

kaffeekanne avatar Apr 19 '19 05:04 kaffeekanne

@pasis can we do this?

jubalh avatar Oct 15 '19 07:10 jubalh

yes, this is libstrophe issue, please, open ticket there to check all possible addresses until one succeeds. Now, libstrophe checks them one by one until one only starts connecting successfully. But this is not enough if port is closed on the remote side for a particular address family.

pasis avatar Oct 15 '19 07:10 pasis

Does anyone know domain/address of such a server to check a solution? Where server runs only on IPv4, but address is resolved to both IPv4 and IPv6.

pasis avatar Oct 27 '19 20:10 pasis

Bad XMPP has a few intentionally misconfigured hosts for testing against, including IPv4+IPv6 where one will not connect. The tests are however currently only for server-to-server connections, tests for clients are planned but not there yet. For socket-level connectivity testing this might still work, if you can change the SRV service name to xmpp-server instead of xmpp-client while testing.

Zash avatar Jun 03 '20 11:06 Zash

@Zash This will help a lot, thanks!

pasis avatar Jun 03 '20 14:06 pasis

The feature has been added to libstrophe master (strophe/libstrophe#221). Use latest sources or wait for the next libstrophe release.

pasis avatar Jun 22 '23 13:06 pasis

For future reference: users will need libstrophe > 0.12.2 (we maybe dont hard require this)

jubalh avatar Jul 04 '23 14:07 jubalh

libstrophe 0.12.3 with the fix has been released. Profanity 0.14.0 will depend on it.

jubalh avatar Aug 02 '23 14:08 jubalh