Live data from Hacker News

An open source, self-hosted implementation of the Tailscale control server

github.com

31–40 of 85 posts

Re: An open source, self-hosted implementation of the Tailscale control server

#31

Love headscale, we just took it to production and it’s been great

As in you rolled out an internal service for the whole company?!

As opposed to what? This seems pretty normal.

We considered it as well but there was a feature missing that meant we couldn’t use it for one of our main requirements. Had that not been the case, we’d have rolled it out.

Re: An open source, self-hosted implementation of the Tailscale control server

#32

How does headscale hold up when you're streaming video over jellyfin/plex?

I’ve used it extensively to stream video across continents. No issues as long as you can get a P2P connection going. If it needs to go through a DERP server, then it may suffer but in my experience that’s pretty rare.

Re: An open source, self-hosted implementation of the Tailscale control server

#33
If you're interested in self-hosting your orchestration server, you can look into Netbird. It's a very similar tool, but has the server open sourced as well. So you have a self-hosted control server with a nice GUI and all the features the paid version does.

https://netbird.io/knowledge-hub/tailscale-vs-netbird

Re: An open source, self-hosted implementation of the Tailscale control server

#34

Every few months I come back to this repo to check if they finally got Tailnet lock running or if someone security audited them in the meanwhile. Unfortunately neither of these things seem to make any progress and thus, I’ve grown uncertain in how much I can trust this as a core part of my infrastructure. The entire premise of Tailscale SaaS builds on creating tunnels around your firewalls, then enabling the user to…

tailnet lock seems way way less important for headscale than tailscale, given you personally control the headscale infra.

Re: An open source, self-hosted implementation of the Tailscale control server

#35
post #27

Earlier quoted context omitted.

arent most of the the tailscale clients open source aside from the gui portion of the non open source os's?

Yes they are, unless you're using a mainstream OS and/or want to use a GUI, which is probably the most common use case.

While the GUI is somewhat helpful, at the end of the day it's not the key piece, and it could easily be rebuilt.

Re: An open source, self-hosted implementation of the Tailscale control server

#36

Earlier quoted context omitted.

It's a mesh VPN, so peers communicate directly without additional delay. I opted for Netbird myself because Headscale's UI felt too basic for me back then. Has that improved over the years probably?

How is netbird? Is it more stable than tailscale/headscale? How is your performance while streaming a video?

They are both based on WireGuard (kernel-space and user-space `wireguard-go`), so I guess there's no significant difference in performance for typical usage.

In terms of stability, Netbird has been pretty good for me. I've been using Netbird as the backhaul network for my laptop, phone and inter-site k3s cluster for several years without major issues.

One major downside of Netbird is that its Android client can be quite a battery drainer [1]. (It keeps your fingers warm during winter, though!) As for Tailscale, it offers some neat features like Funnel, which is missing in Netbird, but in my case, covered by DNS and k8s Ingress.

[1]: https://github.com/netbirdio/netbird/pull/3379

Re: An open source, self-hosted implementation of the Tailscale control server

#37

If you're interested in self-hosting your orchestration server, you can look into Netbird. It's a very similar tool, but has the server open sourced as well. So you have a self-hosted control server with a nice GUI and all the features the paid version does. https://netbird.io/knowledge-hub/tailscale-vs-netbird

Does it do the fancy NAT-traversal Tailscale does?

Re: An open source, self-hosted implementation of the Tailscale control server

#38

Every few months I come back to this repo to check if they finally got Tailnet lock running or if someone security audited them in the meanwhile. Unfortunately neither of these things seem to make any progress and thus, I’ve grown uncertain in how much I can trust this as a core part of my infrastructure. The entire premise of Tailscale SaaS builds on creating tunnels around your firewalls, then enabling the user to…

tailnet lock seems way way less important for headscale than tailscale, given you personally control the headscale infra.

This is my thought as well, if you are in control then you also control which nodes go on your tailnet

Re: An open source, self-hosted implementation of the Tailscale control server

#39
post #12

Keep in mind that for many use cases (mobile access, GUI on macOS), this relies on the official Tailscale clients keeping the ability to set the control server. The moment the inevitable enshitification will start at Tailscale, this feature will go away. I’m saying this as a currently super happy Tailscale customer who was burned multiple times in the past by other companies being sold or running out of VC money

arent most of the the tailscale clients open source aside from the gui portion of the non open source os's?

I think the whole Windows client is closed. On macOS though you can use it from the command line just fine (apart from a couple quirks due to a completely different VPN implementation [1]).

[1]: they have three: https://tailscale.com/kb/1065/macos-variants

Re: An open source, self-hosted implementation of the Tailscale control server

#40
post #24
post #20

Earlier quoted context omitted.

I’d love to see a write-up on that. Especially in the unlikely event that you used Nix for the deployment.

I've done exactly that: headscale in production at work, a few hundred client devices, infrastructure mostly powered by nix. What would you want to hear about it?

* Does it work well? * Do you recommend it? * Do your users care? * Is it difficult? Do you have to maintain it or is it basically set it and forget it? * What was memorable about setting it up? * Why did you go for Headscale vs Tailscale or Netbird or some other solution?
Post reply on HN