Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.
-
AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
Tailscale being merely a wrapper around Wireguard, which is pretty close to optimally efficient, I don't think there's much of an improvement to be expected by rolling your own or hopping over your VPS. You should probably start with investigating what's causing the tailscale connection instability (is it your ISP? Is it the network on the side of the NAS?). If you are not bound to Borg, perhaps you can give a shot at Kopia, I found it to be much more performant for my use-cases, and it has a http "repository server" which you might be able to use with less protocols overhead than through your current setup.
So Tailscale connection instability is not common? I don't like debugging this, since the NAS is remote and I don't have much time going to the family member again and again for this. It definitely is something on the remote site, since the tailscale connections at my home are stable.
I will definitely have a look at Kopia. I was in search of a good open source backup solution, since borg also has its flaws. I will check it out, when I setup the remote NAS again (as I also want to put bigger disks in it)
Yes it is uncommon, as people have mentioned it is a Wireguard wrapper. Try just using Wireguard and troubleshoot from there. I would want to know what that 'simple' solution is failing. Your workaround could have similar issues.
Troubleshooting wireguard is a pain in the ass, it using UDP and all that.
Why would UDP be any more difficult than TCP (or anything else) for troubleshooting? If nothing else, it should be easier because there are no stateful connections and every packet is "fire and forget". Now, as a tunneling technology, WG might be more difficult than a simple client/server socket-driven application, but that just means some routing tables need to be inspected and you have to understand IP subnets. In any case, you'd still want to obtain packet traces from both ends of the WG tunnel.
With TCP there are built in listeners on OSs which you can use to test. Also TCP will work before UDP. For whatever reason firewalls and such do weird things with UDP traffic. I always use a cli tool that I can't remember the name of for testing.
What are these "built in listeners" that you speak of, and which OS's can I find this on?
This doesn't really explain why troubleshooting is more difficult, but rather that firewalls often cause trouble for UDP. My question was "why would diagnosing a UDP problem be harder than anything else?", not "why is UDP more problematic?". I'm fully aware that some firewalls are configured with absurd parameters, like blocking ICMP, QUIC, or even TLS in some bizarre situations. But my tools for debugging network troubles have always been the same: tcpdump for passive tracing, nc to coerce an active response, and icmp/icmp6 ping for basic connectivity and MTU verification.
Whether it's UDP or anything other protocol, those tools have proven sufficient for me. Do you use something else?
For built in listeners use ncat, but nmap package is not always included. If you are on Windows find some listener Poweshell script, it will be under 10 lines, with Test-Connection. When I was a SysAdmin one repeated problem was UDP traffic was not working. When you tested the TCP port it would work, verifying that the connection is there, but UDP for a variety of reasons is problematic.