Tailscale
I want to share about an awesome piece of technology that I started using recently: Tailscale. It's a sort of VPN, meaning it sets up a private network for you, but only between your devices, without a central server.
It does so without you having to open any ports on your router or configure firewalls. It's pretty much powered by JustWorks™️ technology. Each device you register gets an IP address of the form 100.x.y.z. Using this address than you can connect to that device from anywhere in the world, as long as both are connected to the Internet, because Tailscale automatically performs NAT traversal.
My use case for Tailscale is to connect my various devices (desktop, laptop, NAS, Raspberry PI and Android phone) and be able to access them, regardless of where I am.
For my NAS I had setup a DynDNS system, but occasionally it would still glitch and I would lose connectivity. With Tailscale, now I have connection pretty much always. I still keep the DNS address, because I have everything set up for it, but I know that debugging stuff will be much easier.
Similarly, the Raspberry Pi at my parents place is behind a crappy router which sometimes doesn't do the port forwarding properly. Now I can login via Tailscale and fix the issue.
There is a bit of overhead with using Tailscale. When I set up the initial backup to the RPI, I tried going through it, but the bandwith was only 3MB/s, while if I connected directly, it would be 10 MB/s. Because borg
encrypts the data, I don't need the additional security provided by Tailscale.
All in all: I can strongly recommend Tailscale. It's a great product if you have any sort of home servers. It's developed by some great guys, including Avery Pennarun, David Crawshaw and Brad Fitzpatrick. I wish more startups did cool stuff like this, which work so well.