基于WireGuard的VPN。免费支持最多20个节点。 https://tailscale.com/

Brad Fitzpatrick 0de1b74fbb util/clientmetric: add tests omitted from earlier commit 4 years ago
.bencher babd163aac bencher: add config to suppress failures on benchmark regressions. 4 years ago
.github 60510a6ae7 .github/workflows: check that repo is clean after build and test 4 years ago
atomicfile df674d4189 atomicfile: don't Chmod on windows 5 years ago
chirp fd4838dc57 wgengine/userspace: add support to automatically enable/disable the tailscale 4 years ago
client 68917fdb5d cmd/tailscale/cli: add "debug metrics" subcommand 4 years ago
cmd 9a217ec841 cmd/derper: increase HSTS cache lifetime to 2 years. 4 years ago
control 758c37b83d net/netns: thread logf into control functions 4 years ago
derp 758c37b83d net/netns: thread logf into control functions 4 years ago
disco 84c3a09a8d types/key: export constants for key size, not a method. 4 years ago
docs 9fa6cdf7bf fix minor typo 4 years ago
health 6c82cebe57 health: add a health state for net/dns.OSConfigurator. 4 years ago
hostinfo 1ea270375a hostinfo: report when running in Docker Desktop. 4 years ago
internal 700badd8f8 util/deephash: move internal/deephash to util/deephash 4 years ago
ipn 4a59a2781a ipn/ipnlocal: export client metrics over peerapi to owner 4 years ago
kube 0842e2f45b ipn/store: add ability to store data as k8s secrets. 4 years ago
log 49a3fcae78 log/filelogger: make filelogger remove redundant date before adding a date 4 years ago
logpolicy 758c37b83d net/netns: thread logf into control functions 4 years ago
logtail 3b541c833e util/clientmetric, logtail: log metric changes 4 years ago
metrics 94fb42d4b2 all: use testingutil.MinAllocsPerRun 4 years ago
net ad5e04249b wgengine/monitor: ignore adding/removing uninteresting IPs 4 years ago
packages 8236464252 packages/deb: add package to extract metadata from .deb files. 4 years ago
paths 40e13c316c paths: add missing js/wasm stub 4 years ago
portlist 9310713bfb all: fix some js/wasm compilation issues 4 years ago
safesocket 0edd2d1cd5 safesocket: add js/wasm implementation with in-memory net.Conn 4 years ago
scripts da7544bcc5 control/noise: implement the base transport for the 2021 control protocol. 4 years ago
smallzstd 9cd4e65191 smallzstd: new package that constructs zstd small encoders/decoders. 5 years ago
syncs cf8fcc1254 syncs: mark as safe for Go 1.18 4 years ago
tailcfg 0532eb30db all: replace tailcfg.DiscoKey with key.DiscoPublic. 4 years ago
tempfork baf8854f9a tempfork/wireguard-windows: remove the old windows firewall code now that we are no 4 years ago
tsconst eccc2ac6ee net/interfaces/windows: update Tailscale interface detection logic to 4 years ago
tsnet b3abdc381d tsnet: set varRoot state directory field 4 years ago
tstest 3b541c833e util/clientmetric, logtail: log metric changes 4 years ago
tstime 0daa32943e all: add (*testing.B).ReportAllocs() to every benchmark 4 years ago
tsweb f01ff18b6f all: fix spelling mistakes 4 years ago
types 293431aaea control/noise: use key.Machine{Public,Private} as appropriate. 4 years ago
util 0de1b74fbb util/clientmetric: add tests omitted from earlier commit 4 years ago
version ff597e773e tailcfg, control/controlclient: add method to exit client from control plane 4 years ago
wf 2919b3e3e6 wf: loopback condition should use MatchTypeFlagsAllSet. 4 years ago
wgengine ad5e04249b wgengine/monitor: ignore adding/removing uninteresting IPs 4 years ago
words de63e85810 words: remove two plurals, one with a typo 4 years ago
.gitattributes bec17d05cb .gitattributes: add a smudge filter for go.mod. 6 years ago
.gitignore dad10fee9c Revert "cmd/tailscaled: split package main into main shim + package" 5 years ago
AUTHORS a8d8b8719a Move Linux client & common packages into a public repo. 6 years ago
CODE_OF_CONDUCT.md 452b81d56b Add a code of conduct. 6 years ago
Dockerfile 9feb483ad3 build_docker.sh: use github.com/tailscale/mkctr instead of docker 4 years ago
Dockerfile.base 9feb483ad3 build_docker.sh: use github.com/tailscale/mkctr instead of docker 4 years ago
LICENSE bf6205d200 LICENSE: Reformat for Github 5 years ago
Makefile 9feb483ad3 build_docker.sh: use github.com/tailscale/mkctr instead of docker 4 years ago
PATENTS a8d8b8719a Move Linux client & common packages into a public repo. 6 years ago
README.md ec2b7c7da6 all: bump minimum Go to 1.17 4 years ago
SECURITY.md e59605595e Add a SECURITY.md for vulnerability reports. 6 years ago
VERSION.txt 9fc4e876e3 VERSION.txt: this is v1.19.0 4 years ago
api.md a76c8eea58 api: document new API to authorize a device (#2825) 4 years ago
build_dist.sh 9feb483ad3 build_docker.sh: use github.com/tailscale/mkctr instead of docker 4 years ago
build_docker.sh 9feb483ad3 build_docker.sh: use github.com/tailscale/mkctr instead of docker 4 years ago
go.mod f76a8d93da go.mod: bump github.com/godbus/dbus/v5 from 5.0.5 to 5.0.6 4 years ago
go.sum f76a8d93da go.mod: bump github.com/godbus/dbus/v5 from 5.0.5 to 5.0.6 4 years ago
shell.nix 70f14af21e add nix-shell boilerplate (#1028) 5 years ago
staticcheck.conf ece138ffc3 staticcheck.conf: remove unnecessary warning 4 years ago
version-embed.go 31e4f60047 version: embed VERSION.txt in unstamped version 4 years ago

README.md

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains all the open source Tailscale client code and the tailscaled daemon and tailscale CLI tool. The tailscaled daemon runs primarily on Linux; it also works to varying degrees on FreeBSD, OpenBSD, Darwin, and Windows.

The Android app is at https://github.com/tailscale/tailscale-android

Using

We serve packages for a variety of distros at https://pkgs.tailscale.com .

Other clients

The macOS, iOS, and Windows clients use the code in this repository but additionally include small GUI wrappers that are not open source.

Building

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

If you're packaging Tailscale for distribution, use build_dist.sh instead, to burn commit IDs and version info into the binaries:

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

If your distro has conventions that preclude the use of build_dist.sh, please do the equivalent of what it does in your distro's way, so that bug reports contain useful version information.

We only guarantee to support the latest Go release and any Go beta or release candidate builds (currently Go 1.17) in module mode. It might work in earlier Go versions or in GOPATH mode, but we're making no effort to keep those working.

Bugs

Please file any issues about this code or the hosted service on the issue tracker.

Contributing

PRs welcome! But please file bugs. Commit messages should reference bugs.

We require Developer Certificate of Origin Signed-off-by lines in commits.

About Us

Tailscale is primarily developed by the people at https://github.com/orgs/tailscale/people. For other contributors, see:

Legal

WireGuard is a registered trademark of Jason A. Donenfeld.