tailscale

(★ 35,418)

The easiest, most secure way to use WireGuard and 2FA.

File Explorer

Showing a partial file list — download the zip above to see everything.

  • .gitattributes
  • .gitignore
  • .golangci.yml
  • .policy-tests.yml
  • .policy.yml
  • .stignore
  • ALPINE.txt
  • api.md
  • assert_ts_toolchain_match.go
  • build_dist.sh
  • build_docker.sh
  • cache_key_test.go
  • CODE_OF_CONDUCT.md
  • CODEOWNERS
  • Dockerfile
  • Dockerfile.base
  • flake.lock
  • flake.nix
  • flakehashes.json
  • go.mod
  • go.sum
  • go.toolchain.branch
  • go.toolchain.next.branch
  • go.toolchain.next.rev
  • go.toolchain.rev
  • go.toolchain.version
  • gomod_test.go
  • header.txt
  • LICENSE
  • license_test.go
  • Makefile
  • PATENTS
  • pkgdoc_test.go
  • pull-toolchain.sh
  • README.md
  • SECURITY.md
  • shell.nix
  • staticcheck.conf
  • VERSION.txt

# Installation Guide

go
Prerequisites

Setup Steps

go install tailscale.com/cmd/tailscale{,d}

Install Tailscale CLI and tailscaled daemon.

./build_dist.sh tailscale.com/cmd/tailscale

Build tailscale with embedded commit ID and version info.

./build_dist.sh tailscale.com/cmd/tailscaled

Build tailscaled with embedded commit ID and version info.

Key Commands

go install tailscale.com/cmd/tailscale{,d}

Directly install tailscale and tailscaled binaries using Go.

./build_dist.sh tailscale.com/cmd/tailscale

Build binaries for distribution with embedded version information.

When packaging for distribution, use build_dist.sh instead of go install to include commit and version metadata.

# Use via CDN

jsDelivr

jsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.

Showing a partial file list.

Command Glossary

Commands referenced in this DOCs, explained below.

🔍

git log

View Details ▼

Show a history of commits.

git log

Show the sequence of commits starting from the current one, in reverse chronological order of the Git repository in the current working directory:

git log {{[-p|--patch]}} {{path/to/file_or_directory}}

Show the history of a particular file or directory, including differences:

git log --stat

Show an overview of which file(s) changed in each commit:

🔍

go install

View Details ▼

Compile and install packages named by the import paths.

go install

Compile and install the current package:

go install {{path/to/package}}

Compile and install a specific local package:

go install {{golang.org/x/tools/gopls}}@{{latest}}

Install the latest version of a program, ignoring `go.mod` in the current directory:

🔍

tailscale

View Details ▼

A private WireGuard network service.
Some subcommands such as `up` have their own usage documentation.

sudo tailscale set --operator $USER

Allow the current user to operate on the Tailscale daemon:

tailscale {{up|down|status}}

Handle connection to Tailscale (connect, disconnect, check status):

tailscale set --advertise-exit-node

Offer the current machine to be an exit node for internet traffic:

// repository documentation