Hi, now that I’ve almost done with other part I’m looking back into this connectivity problem. I mentioned the idea of messaging over IRC, however after thinking a bit more on that approach, seems that IRC has no reliability guarantee and I’ll have to implement tcp-over-irc.el … that already seems like much more work than expected. ICE/STUN looks like the usual way to do the NAT traversal, however I didn’t find any tcp tunnel over ICE/STUN that I can use directly in Emacs. Does any one know any? There’s libnice but it’s a C library, we’ll either have to write more Emacs C code to use it or wrap it in a cli tool providing tcp tunneling... > On Sep 29, 2020, at 12:29 PM, Stefan Monnier wrote: > >>> 1) On one hand such services require some servers (to work like google >>> spreadsheet) and need to be provided somehow... something difficult as I >>> don't think gnu or fsf have resources to maintain a service like that >>> and provide it. >> CRDT should do it. > > I think CRDT make no difference to the problem referred to here, which > is that two machines, each behind its own firewall will have difficulty > talking to each other unless they go through some external server (at > least to set up the initial connection). There are *partial* solutions in > the form of ICE/STUN. > > > Stefan >