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

Josh Bleecher Snyder 927fc36123 go.toolchain.branch: upgrade to Go 1.18 4 years ago
.bencher babd163aac bencher: add config to suppress failures on benchmark regressions. 4 years ago
.github 4b1e02057a .github/workflows: request Go 1.18 4 years ago
atomicfile df674d4189 atomicfile: don't Chmod on windows 5 years ago
chirp e64cecac8e chirp: remove regex dependency 4 years ago
client f31546809f cmd/tailscale: propagate tailscaled 403s as AccessDeniedErrors 4 years ago
cmd 71b535fc94 go.mod: require Go 1.18 4 years ago
control efc48b0578 ssh/tailssh, ipnlocal, controlclient: fetch next SSHAction from network 4 years ago
derp 730aa1c89c derp/derphttp, wgengine/magicsock: prefer IPv6 to DERPs when IPv6 works 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
envknob a19c110dd3 envknob: track, log env knobs in use 4 years ago
health 2ff481ff10 net/dns: add health check for particular broken-ish Linux DNS config 4 years ago
hostinfo 58a6c9b2b8 version, hostinfo: recognize gokrazy as a distro 4 years ago
internal 700badd8f8 util/deephash: move internal/deephash to util/deephash 4 years ago
ipn efc48b0578 ssh/tailssh, ipnlocal, controlclient: fetch next SSHAction from network 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 2db6cd1025 ipn/ipnlocal, wgengine/magicsock, logpolicy: quiet more logs 4 years ago
logtail 5f529d1359 logtail: add Logger.PrivateID accessor 4 years ago
metrics 94fb42d4b2 all: use testingutil.MinAllocsPerRun 4 years ago
net 61cdcf4082 net/interfaces: add FreeBSD default route lookup (portmapping, etc) 4 years ago
packages 8236464252 packages/deb: add package to extract metadata from .deb files. 4 years ago
paths db85384f9c cmd/tailscaled: default to userspace-networking mode on gokrazy, set paths 4 years ago
portlist 41fd4eab5c envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 4 years ago
safesocket 63cd581c3f safesocket: add ConnectionStrategy, provide control over fallbacks 4 years ago
scripts a45f8accdb scripts/installer: add Ubuntu 22.04 LTS Jammy Jellyfish (#3955) 4 years ago
smallzstd 9cd4e65191 smallzstd: new package that constructs zstd small encoders/decoders. 5 years ago
ssh 45a7f6689c tailcfg: add field to allow LocalPortForwarding in SSHAction 4 years ago
syncs cf8fcc1254 syncs: mark as safe for Go 1.18 4 years ago
tailcfg 45a7f6689c tailcfg: add field to allow LocalPortForwarding in SSHAction 4 years ago
tempfork baf8854f9a tempfork/wireguard-windows: remove the old windows firewall code now that we are no 4 years ago
tool 01a9906bf8 tool/go: add wrapper to download and use go.toolchain.rev go version. 4 years ago
tsconst eccc2ac6ee net/interfaces/windows: update Tailscale interface detection logic to 4 years ago
tsnet 497324ddf6 ipn/store: add common package for instantiating ipn.StateStores 4 years ago
tstest 0f37317664 control/controlclient: make RegisterRequest go over Noise 4 years ago
tstime 0e62a7d1a2 tstime/mono: fix Before function comment 4 years ago
tsweb 24c9dbd129 tsweb: fix JSONHandlerFunc regression where HTTP status was lost on gzip 4 years ago
types c85694fac4 types/views: add ContainsExitRoutes to IPPrefixSlice 4 years ago
util 82cd98609f util/winutil: migrate corp's winutil into OSS. 4 years ago
version 58a6c9b2b8 version, hostinfo: recognize gokrazy as a distro 4 years ago
wf 486059589b all: gofmt -w -s (simplify) tests 4 years ago
wgengine 08cf54f386 wgengine/magicsock: fix goMajorVersion for 1.18 ts release 4 years ago
words 2448c000b3 words: more hamsters, less hampsters (#3938) 4 years ago
.gitattributes 1813c2a162 .: add .gitattributes entry to use Go hunk-header driver 4 years ago
.gitignore 0ada42684b Makefile: update make spk target to use the new go spk builder 4 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 d77b4c1344 Dockerfile: require Go 1.18 4 years ago
Dockerfile.base 138662e248 Dockerfile.base: update to alpine:3.15 4 years ago
LICENSE bf6205d200 LICENSE: Reformat for Github 5 years ago
Makefile 0ada42684b Makefile: update make spk target to use the new go spk builder 4 years ago
PATENTS a8d8b8719a Move Linux client & common packages into a public repo. 6 years ago
README.md f143ff89b7 README.md: update current Go release 4 years ago
SECURITY.md e59605595e Add a SECURITY.md for vulnerability reports. 6 years ago
VERSION.txt 8175504584 VERSION.txt: This is 1.23. 4 years ago
api.md dd6472d4e8 api: document preauthorized auth keys 4 years ago
build_dist.sh 01a9906bf8 tool/go: add wrapper to download and use go.toolchain.rev go version. 4 years ago
build_docker.sh 01a9906bf8 tool/go: add wrapper to download and use go.toolchain.rev go version. 4 years ago
go.mod 71b535fc94 go.mod: require Go 1.18 4 years ago
go.sum f695f0b178 go.mod: update golang.org/x/tools and honnef.co/go/tools 4 years ago
go.toolchain.branch 927fc36123 go.toolchain.branch: upgrade to Go 1.18 4 years ago
go.toolchain.rev 7ddf2e2fea go.toolchain.rev: bump to Go 1.17.8 4 years ago
pull-toolchain.sh 408522ddad go.toolchain.rev: add update script 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 ebdd25920e go.toolchain.rev: add Go toolchain rev, tool to print it out 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 on Linux, Windows and macOS, and to varying degrees on FreeBSD, OpenBSD, and Darwin. (The Tailscale iOS and Android apps use this repo's code, but this repo doesn't contain the mobile GUI code.)

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

The Synology package is at https://github.com/tailscale/tailscale-synology

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.18) 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.