# headscale

A self-hosted, open-source implementation of the Tailscale control server for running a private WireGuard-based network without Tailscale's own hosted service.

headscale is an open-source, self-hosted implementation of the Tailscale control server. Tailscale itself is a VPN built on WireGuard that creates an overlay network between a user's machines using NAT traversal; the control server exchanges WireGuard public keys between nodes, assigns IP addresses, creates boundaries between users, enables sharing machines between users, and exposes each node's advertised routes.

headscale implements a narrow scope of that control server: a single Tailscale network suited to personal use or a small open-source organization, aimed at self-hosters and hobbyists who want an open-source alternative to Tailscale's own control plane. Tailscale's client software is open source except for the proprietary Windows and macOS/iOS GUI clients and the control server itself, which headscale replaces.

Development builds are available as container images and binaries, and the project ships a NixOS module for NixOS users.

Website: https://github.com/juanfont/headscale
