Tools that work with (or limited Internet), a thread.

Start with @syncthing Share files among your devices or with your friends. Syncs across multiple hops, over local wifi, with or without Internet. 1/

Tools that work with .

Next, @briar . is instant messaging with a twist: it can use a mesh of Bluetooth devices. Or . Or, heck, SD cards to carry your IMs. When Internet is available, it uses . 2/

Tools that work with

Few people know about ad-hoc wifi mode. Ad-hoc lets devices in range talk to each other without an access point. You just all set your devices to the same network name and password and there you go. Sometimes DHCP and such can be a challenge; more on that in the next item. 3/

Tools that work with

is a self-healing, fully end-to-end network. It can work among local devices or on the global Internet. It has network services that can egress onto things like Tor, I2P, and public Internet. Makes a perfect companion to ad-hoc wifi as it has auto peer discovery on the local network. 4/

Tools that work with

Moving now to more advanced tools, is lets you assemble a network of peers that can communicate asynchronously using , drives, radios, CD-Rs, Internet, , , , , , you name it. Supports multi-hop file transfer and remote execution. Fully end-to-end encrypted. It's the offline version of . 5/

Tools that work with

Finally among Open Source tools, uses radios to build a long-distance, low-power, encrypted IM system. It requires specialized hardware, about $30, but also assembles a mesh network. and 6/

Tools that work with

You can get portable satellite communicators that can send SMS from anywhere on earth with a clear view of the sky. and are two credible options. These have subscriptions ranging from about $10 to $40/mo depending on how heavily they're used, and also have SOS features. 7/

Tools that work with

I have written about most of these on my blog, and my website, . Search there, or ask me here, for more.

What others would you recommend?


Tools that work with

I was thinking of when I started this thread as communications infrastructure has been targeted there. But these ideas apply to anyone, anywhere.

One final parting comment: FRS/GMRS radios are cheap and effective for short-range voice communications. Don't forget simple things!

All the best to our Ukrainian friends. May there be days of peace and joy in your future.


An addendum - if you have a phone line and , can get through just about anything. too. These older protocols lack modern security themselves, but will deal with slow and noisy links well. SX radios provide a serial link they can use.

I have a new post on my blog: Tools for Communicating and in Difficult Circumstances. It condenses ideas discussed in this thread.

@jgoerzen This is great. Thanks for compiling this list.

@jgoerzen It's a pity that Briar, Meshtastic, Scuttlebutt & co bundle together a protocol, a UI and a fixed set of use-cases. I feel we need an ecosystem of similar tools but with shared protocols and libraries.

Cool post, thanks!
As someone living in a relatively rural area with iffy connectivity/cell service, I've wondered about some of these things.
Syncthing + NNCP looks promising, I'd been thinking along UUCP lines from my modem days.


One other suggestion for people in Ukraine might be to have offline backups and some read only recovery & install media on hand.

Looking through the CISA documentation some of the Russian malware has been wiping the master boot records and pointing to a ransomware screen.

It seems like a recovery disk might come in handy.

Though Debian doesn't make them these days it looks like it's still possible to write the current archive to DVDs using jigdo.

@alienghic @jgoerzen
Tails is certainly the best operating system when you can't trust your environment

@jgoerzen in a war zone, I'd recommend the most boring of tech possible (CB radio) and assume you are being listened to. Anything else makes you a target.

@jpaul @LovesTha Interesting; how does this differ from Scuttlebutt proper? Is this another client for it, or something different?

@jgoerzen From an instance that your admin doesn't want you to hear from.

@Hyolobrika So several responses to this. 1) I lack knowledge of how Russian works, so I am unqualified to talk about getting past the Great Firewall of Russia. 2) There is a great deal of state-sponsored Russian trolling on the Internet, which has no place on Mastodon. 3) I am completely well aware that this action was taken by the rich and powerful of Russia, and one of the great hopes for ending this bloodshed is for regular Russians to rise up, and we need to support this.

@Hyolobrika continued/ 4) I don't know what instance that was from, but I can tell you that in the past day, I observed racist misinformation from supporters of Putin, which I reported as such. That the admin of this instance chooses not to federate with instances full of racist genocide deniers is a feature.

Anyone can run a Mastodon instance, and anyone can choose who to federate with. This is not censorship; it is choice. People can say what they want, and choose who to interact with.

@Hyolobrika 5) I choose to use an instance with a strong code of conduct. It has resulted in a very positive Mastodon experience for me.

Again, since I know nothing about what instance it was from, or why that instance was blocked by, I can't comment. I can just say, I stand with anybody that stands for liberty and peace for , including both Ukrainians and Russians.

@jgoerzen I understand and respect your choice to avoid hate speech. I wouldn't have relayed that message if it was hateful.

@jgoerzen I never know whether users have given informed consent to be moderated or whether they simply stumbled upon Mastodon without knowing that there are other instances that aren't so ban-happy (the official server list has a restricted selection IIRC).


You don't know?
You let out a really long line with baited hooks in tow astern of the boat... For a while.

And then you reel all the fish in!

Silly rabbit, kix are for trids! 🤘💀🤘


@tallship @jgoerzen Anyway, I think that's trawling. I was talking about trolling.

@Hyolobrika @jgoerzen

Well dang! My bad...

Yeah everybody just hates those Internet Trawlers ;)

@jgoerzen #SSB also fits in with this. This is a social network based on p2p.

The nodes of the network can also synchronize without the Internet via LAN / WLAN or Bluetooth.

#nncp sounds interesting, but even as a techie I can't easily make sense of their documentation...

@FiXato @fuzzylynx I know! It's both an unfamiliar concept and unfamiliar writing. I have been trying to help on this. In fact, I just published this page which should really help out. (Please let me know!) I have also collected resources at which also has links to explanatory pages. Let me know if this helps, and feel free to ask me questions! cc @kensanata

@jgoerzen Would you say Yggdrasil is comparable to Tor, or to Wireguard, or neither?

@jvalleroy It has a few things in common with each of those, but is pretty distinct. is more similar to and the VPN project. Compared with , strong anonymity is not a design goal of Yggdrasil, while performance and compatibility with existing software is. Yggdrasil may have some anonymity-enhancing properties over "mainnet", but not to the extent of Tor. However, they both share strong end-to-end encryption. 1/

@jvalleroy Compared to , is alike in that it provides a regular network interface on a system, which any existing app can use. It also provides encryption between endpoints. The differences are where it gets interesting. Yggdrasil nodes' IP addresses are derived from their public keys, rather than assigned by the sysadmin. Yggdrasil nodes form an auto-routing mesh, so it is not necessary to explicitly configure every participant. 2/

@jvalleroy Expand those concepts out, and you get a system that can and does operate at a global scale, with opportunistic and resilient methods of finding routes between nodes. If you sort of go, "Imagine if 3000 people want to cooperate and have a big, secure between them" and set out to design that, then you sort of arrive at . 3/

@jvalleroy I have a post "Make the Internet Yours Again with an Instant Mesh Network" that explores what this enables in more detail. It also has significant benefits for portable devices and such. The homepage is and also talks about this. end/

@jvalleroy I keep thinking of more things to say after I write "/end" 🙂 So also works on a hyperlocal scale. Take 5 laptops and connect them to an ad-hoc wifi network, and with , they'll auto-discover each other and communicate - even if they don't even have IPs assigned! If just one of those nodes can also reach the Internet, then all of a sudden all of them can talk to global Yggdrasil also, because they automatically discover the route. Very cool. /end

@jgoerzen thank you for nncp mention! seems like a whole new world for me. :)

@fuzzylynx I've had a lot of fun with and done some useful things with it too. Feel free to ask if you have questions!

@jgoerzen I’ve just read some of your posts on topic. info you provide there is rather clear and easy to understand. using bundle syncthing+nncp seems very useful and quite straightforward to setup, so I’ll give it a try first. and probably some questions really will pop up, :) when it will come to practical implementation.

@fuzzylynx OK! This post may give you a couple of pointers down the Syncthing+NNCP direction: You will probably be using nncp-xfer with it. bundle can also work, but in this case, nncp-xfer is probably more closely suited. Good luck, and feel free to ask here, or the mailing list, or the Matrix channel at with any questions!

Sign in to participate in the conversation

For people who care about, support, or build Free, Libre, and Open Source Software (FLOSS).