A sovereign mesh VPN for distributed sites? WZ-IT builds remote-management platforms on self-hosted NetBird, Headscale and WireGuard. See our remote-management platforms
Plain WireGuard, Tailscale, Headscale and NetBird all solve the same problem - encrypted connectivity between distributed devices - but at four very different layers. WireGuard is the lean, fast data plane with no coordination at all. Tailscale adds an exceptionally simple but proprietary control plane delivered as a cloud service. Headscale reimplements that exact control server as open source for self-hosting. NetBird is the fully open-source, all-in-one platform with its own control plane, IdP integration and granular ACLs. If you want maximum simplicity, pick Tailscale; if you want to keep the control plane, keys and audit data sovereign in your own infrastructure, choose NetBird or Headscale. This decision guide maps all four along the axes open source, self-hosting, control plane, IdP, ACLs, license and NAT traversal.
Table of contents
- Short answer: which solution fits whom?
- The four approaches at a glance
- Comparison table: NetBird vs. Tailscale vs. Headscale vs. WireGuard
- Open source, license and sovereignty
- Control plane, IdP and ACLs
- NAT traversal: how the connection is established
- Which one when? A decision guide
- Sovereignty and how we use these at WZ-IT
- Further guides
Short answer: which solution fits whom?
- Plain WireGuard: a few stable sites or point-to-point tunnels, full control, no control plane wanted. Maximum leanness, manual operation.
- Tailscale: fastest to deploy, minimal effort, cloud acceptable. Proprietary control plane, not self-hostable.
- Headscale: you want to keep the Tailscale clients but self-host the control server. Lean, no official UI, with ACL limitations.
- NetBird: a sovereign all-in-one platform - self-hosted, open source, with IdP/SSO, granular ACLs and a dashboard. Our default for distributed infrastructure and remote maintenance.
The four approaches at a glance
Plain WireGuard is a VPN protocol baked into the Linux kernel (mainline since Linux 5.6, around 4,000 lines of code) with modern cryptography. It provides the data plane only: each peer has a key pair, you define routes via AllowedIPs, and traffic runs over UDP. There is no control plane - key distribution, peer discovery and access control are all manual or scripted yourself. Details in the WireGuard for site connectivity guide and in our WireGuard expertise.
Tailscale layers a mature, very easy-to-use control plane on top of WireGuard. It distributes keys, coordinates peers and enforces ACLs. This control plane is proprietary and run exclusively as a SaaS on the vendor's own infrastructure; key exchange and ACL enforcement therefore sit with the vendor, and it cannot officially be self-hosted.
Headscale is the open-source reimplementation of exactly that coordination server (BSD-3, currently v0.29.4 from 23 September 2026, headscale.net). It uses the official Tailscale clients, runs self-hosted, but has no official web UI (community projects such as headscale-ui/Headplane fill the gap) and a reduced feature set. More in What is Headscale? and our Headscale expertise.
NetBird is a fully open-source, all-in-one platform on top of WireGuard: its own clients, a self-hostable control plane (management, signal, relay), a web dashboard, OIDC IdP integration and granular policies (docs.netbird.io). As of October 2026 it is at version 0.80 (releases), maintained by a European vendor (Berlin). Fundamentals in What is NetBird? and our NetBird expertise.
Comparison table: NetBird vs. Tailscale vs. Headscale vs. WireGuard
| Criterion | Plain WireGuard | Tailscale | Headscale | NetBird |
|---|---|---|---|---|
| Open source | yes (data plane) | clients yes, server no | yes | yes |
| Self-hostable | yes (manual) | no (control plane SaaS) | yes | yes |
| Control plane | none | proprietary, cloud-only | self-hosted (Tailscale reimpl.) | self-hosted, open source |
| IdP/SSO | no | yes | OIDC (groups not in ACLs) | yes (OIDC + built-in) |
| ACLs/policies | manual (AllowedIPs) | yes | HuJSON ACLs (limited) | yes (default-deny) |
| Simplicity | low | very high | medium | high |
| License | GPLv2 | clients BSD-3, server proprietary | BSD-3 | clients BSD-3, server AGPLv3 |
| NAT traversal | manual / keepalive | DERP + ICE | DERP (your own relays) | ICE/STUN + relay |
The decisive difference is the control plane - it determines sovereignty, licensing model and feature set. The data plane is WireGuard in all four.
Open source, license and sovereignty
Licensing is the sharpest dividing line. WireGuard (the Linux kernel module) is GPLv2; the userspace tools and cross-platform apps are MIT/ISC. Tailscale publishes its clients under BSD-3-Clause but keeps the coordination server proprietary and runs it only itself - the sensitive part for sovereignty, because key exchange and ACL enforcement sit with the vendor. Headscale is fully BSD-3 and therefore freely self-hostable.
NetBird moved its server components (management/, signal/, relay/) to AGPLv3 with version 0.53.0 (August 2025), while the clients remain BSD-3. In practice the AGPLv3 only affects parties who modify NetBird and offer it as a public service; self-hosting, internal use and MSP operation stay unrestricted and free. For sovereignty what matters is this: with NetBird and Headscale, the control plane, keys and audit data live in your own infrastructure in the EU - also relevant for regulation such as the NIS2 directive. This article is general information, not legal advice.
Control plane, IdP and ACLs
The control plane is what turns WireGuard into a manageable network. Tailscale and NetBird offer the most convenience here: central key distribution, SSO login and policy-based access. NetBird connects to any OIDC identity provider - Keycloak, Authentik, Microsoft Entra ID, Google or Okta - and since version 0.62 ships a built-in identity for self-hosting, so an external IdP is no longer mandatory. Access control follows default-deny: nothing is reachable until a policy allows it, optionally restricted to protocols and ports.
Headscale supports OIDC and HuJSON ACLs but has a known limitation: OIDC groups cannot be used directly in ACLs, still the case in v0.29.4 (Headscale docs, OIDC limitations) - you map fine-grained group RBAC via tags instead. Plain WireGuard has neither IdP nor policies; you steer access purely through AllowedIPs and firewall rules. If you need identity-based access with an audit trail, you cannot avoid a control plane with an IdP.
NAT traversal: how the connection is established
All four must connect peers behind NAT and firewalls without any inbound port being open at the site. Plain WireGuard does this with outbound-initiated tunnels plus PersistentKeepalive, which keeps the NAT mapping open - a direct peer-to-peer connection, but with no automatic brokering.
Tailscale and Headscale use DERP relays (Designated Encrypted Relay for Packets, tailscale.com/kb): they exchange discovery messages over DERP, negotiate a direct connection and only fall back when no direct route is possible. Because traffic stays end-to-end WireGuard-encrypted, the relays never see plaintext. NetBird uses ICE/STUN (Pion) for direct negotiation and its own relay service as a TURN-like fallback. Functionally, Tailscale, Headscale and NetBird are very similar here; the difference is who runs the relays - with Headscale and NetBird, your own.
Which one when? A decision guide
- Few static tunnels, no overhead wanted: plain WireGuard. Point-to-point or hub-and-spoke between a handful of sites that rarely change.
- Fastest start, cloud acceptable: Tailscale. Ideal for small teams with no sovereignty requirement who want a mesh in minutes.
- Tailscale convenience, but self-host the control server: Headscale. A fit if you already run Tailscale clients and only want to drop the cloud dependency - with trade-offs on UI and ACLs.
- A sovereign all-in-one solution with IdP, ACLs and dashboard: NetBird. The right choice for distributed infrastructure, remote maintenance and multi-site operations with audit requirements and EU data residency.
- Maximum compliance and auditability: NetBird or Headscale self-hosted, combined with a browser gateway as an auditable access layer.
For most distributed-infrastructure scenarios with a sovereignty requirement, our recommendation is NetBird - with Headscale as the lean alternative for pure Tailscale compatibility.
Sovereignty and how we use these at WZ-IT
At WZ-IT we operate in the sovereign part of this spectrum: self-hosted NetBird as the encrypted network backend, Headscale where Tailscale-compatible environments are needed, and plain WireGuard where a lean point-to-point link is sufficient. Sites connect outbound-only, access is identity-based and default-deny, and an auditable browser gateway sits on top. This keeps the control plane, keys and audit data in your own infrastructure in the EU.
What this looks like in practice is shown in the ABCO Water Systems case study - in production for distributed plants in Australia. On request, we handle design, build and operation end to end as part of our remote-management platforms. WZ-IT can take over ongoing NetBird operations as Managed NetBird from €349.90 net per month; the base package includes monitoring, updates, backups and support.
Further guides
- What is NetBird? - the open-source all-in-one platform in detail
- What is Headscale? - the self-hosted Tailscale control server
- WireGuard for site connectivity - the data plane under all four
- NetBird expertise, Headscale expertise and WireGuard expertise
Not sure which solution fits your infrastructure? Get to know us or take a look at our remote-management platforms.











