TMakarios,

I like XMPP, and I also like things. So why not both at once?

Yggdrasil gives you a stable IP address, and it turns out that the domain part of an XMPP address can be just a [bracketed] IPv6 address, meaning you can have a stable XMPP address, without buying DNS entries, regardless of whether or how often you change how you're connected to the internet.

As an experiment, I tried setting up to run on such an address, on my desktop and on my phone. And it worked!

All I needed to change in the default configuration file was the VirtualHost line and the s2s_secure_auth line (setting it to false, so that they would accept each others' self-signed certificates, which is ok, because yggdrasil takes care of the end-to-end authentication and encryption). I also had to persuade each operating system that its own self-signed certificate was legit, so that on the same machine would be willing to accept it, to sign me in.

And with that, I could send myself peer-to-peer XMPP messages, and it carried on working seamlessly even when I switched my phone's WiFi off, leaving it to connect via its mobile data connection, which is a IPv4 address.

Having seen try and not yet succeed in CGNAT holepunching, I'm really impressed by how easy it was to get yggdrasil to make the CGNAT barrier effectively disappear.

Cc: @neilalexander, @prosodyim @dino

TMakarios,

Apparently those hashtags in the content warning didn't work. See above if you're interested in over .

I might write more about this next week.

TMakarios,

On the other hand, I might write more about it today. (The weekend wasn't as close as I thought when I wrote that.)

The best systems allow ordinary people to use them without having to rely on a system administrator, or be one themself. What I described above clearly isn't that kind of system.

But it is a proof-of-concept demonstration, and I'm sure it would be possible to bundle an server with its own internal component, like @neilalexander's does for email.

There's something to be said for the way yggmail lets you use your favourite email client, and that could be one way to go for peer-to-peer XMPP, but another alternative would be to bundle the relevant parts of an XMPP client in there, too (so it doesn't need to worry about client-to-server communication), resulting in an an all-in-one app that anyone could use.

Next time, I might talk about interoperability with the existing federated XMPP network.

TMakarios,

An network could be hard to get off the ground without any significant network effect at the start. But what if XMP2P users could easily join multi-user chats in the existing network, and talk to users of existing XMPP servers?

How much work would it take to get a federated XMPP server to accept server-to-server connections from XMP2P apps?

Not much, it turns out:

  1. In order to talk to an address, a federated XMPP server would need to be running Yggdrasil, in order to have its own Yggdrasil address. (It could use a 300::/8 address delegated from a router running Yggdrasil, instead of running Yggdrasil itself, but this would lose the end-to-endness of Yggdrasil's encryption.)

  2. In order to accept identity assertions from XMP2P apps, a federated XMPP server would need to accept self-signed certificates, at least from Yggdrasil addresses (or accept non-TLS connections from them, since Yggdrasil has built-in end-to-end encryption).

And that's all!

In particular, the federated XMPP server does not need to put its Yggdrasil address in any of its DNS entries. As long as an XMP2P app can access the internet outside Yggdrasil, it can make outbound connections to the XMPP server's normal address that it advertises to the rest of the world. And the XMP2P app can, at the same time, accept inbound connections on its stable Yggdrasil address, regardless of whether it's behind CGNAT or whatever. The dialback protocol (often used to verify an XMPP server's identity when TLS identity verification isn't being used) already assumes that outbound and inbound connections might use different IP addresses, or even be on different machines.

I tested the above and confirmed it works in @prosodyim 0.12.3; I also tried it with the federated server end being on 0.11.9, and it failed, though I'm not certain why.

fuat2mb,
@fuat2mb@theres.life avatar

@TMakarios @prosodyim but I mean, XMPP/Jabber never had any sort of market relevancy in and of itself, save the time that Google and FAcebook where using it as the backbone of their messaging systems until they build their own

TMakarios,

@fuat2mb
Well, I don't know about "market" relevance, but for me, is how I chat with friends and family. @prosodyim's suite of "invites" modules has been hugely helpful in getting people signed up with accounts, even those with old phones and no special technical skills.

But an all-in-one app might make it even easier to get people using it, and wouldn't require anyone to be a server administrator.

I guess, in cases like mine, the network effect hasn't been particularly relevant, except within my circles of family and friends. But I do occasionally participate in public channels, or chat with people I've never met.

jabberati,
@jabberati@social.anoxinon.de avatar

deleted_by_author

  • Loading...
  • fuat2mb,
    @fuat2mb@theres.life avatar

    @jabberati @TMakarios @prosodyim maybe you've had a better experience introducing free and federated serveries to your friends and family, but the most common response I get is "I'm not downloading another app just to talk to you" It is just expected that everyone does SMS and Facebook Messenger, and to say that I don't is more likely to result in not getting relevant information than anything else.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • DreamBathrooms
  • magazineikmin
  • thenastyranch
  • modclub
  • everett
  • rosin
  • Youngstown
  • slotface
  • ethstaker
  • mdbf
  • kavyap
  • osvaldo12
  • InstantRegret
  • Durango
  • megavids
  • ngwrru68w68
  • tester
  • khanakhh
  • love
  • tacticalgear
  • cubers
  • GTA5RPClips
  • Leos
  • normalnudes
  • provamag3
  • cisconetworking
  • anitta
  • JUstTest
  • All magazines