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

Mihai Parparita 38bbb30aaf .github/workflows: remove tsconnect-pkg-publish.yml 2 سال پیش
.bencher babd163aac bencher: add config to suppress failures on benchmark regressions. 4 سال پیش
.github 38bbb30aaf .github/workflows: remove tsconnect-pkg-publish.yml 2 سال پیش
atomicfile f4da995940 atomicfile: reject overwriting irregular files 2 سال پیش
chirp 71029cea2d all: update copyright and license headers 3 سال پیش
client 5e8a80b845 all: replace /kb/ links with /s/ equivalents 3 سال پیش
cmd 02582083d5 cmd/tsconnect: allow root directory to be passed in 2 سال پیش
control 9526858b1e control/controlclient: fix accidental backoff reset 3 سال پیش
derp 74eb99aed1 derp, derphttp, magicsock: send new unknown peer frame when destination is unknown (#7552) 3 سال پیش
disco b1248442c3 all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 3 سال پیش
docs 71029cea2d all: update copyright and license headers 3 سال پیش
doctor c98652c333 doctor/permissions: add new check to print process permissions 2 سال پیش
envknob 40fa2a420c envknob,net/tstun,wgengine: use TS_DEBUG_MTU consistently 2 سال پیش
health 2755f3843c health, net/tlsdial: add healthcheck for self-signed cert 3 سال پیش
hostinfo 49c206fe1e tailcfg,hostinfo: add App field to identify tsnet uses 3 سال پیش
internal 71029cea2d all: update copyright and license headers 3 سال پیش
ipn 3b39ca9017 ipn/ipnlocal: update comment in SetComponentDebugLogging 2 سال پیش
jsondb 71029cea2d all: update copyright and license headers 3 سال پیش
kube e0d291ab8a ipn/store: add support for stores to hook into a custom dialer 2 سال پیش
licenses 2b00d6922f licenses: update win/apple licenses 2 سال پیش
log e99c7c3ee5 sockstats: add labels for netlog and sockstatlog packages 2 سال پیش
logpolicy 8ac5976897 logpolicy: do not upload logs in tests 3 سال پیش
logtail 62a1e9a44f log/sockstatlog: add delay before writing logs to disk 2 سال پیش
metrics a7eab788e4 metrics: add SetInt64 to ease using LabelMap for gauge metrics 3 سال پیش
net 40fa2a420c envknob,net/tstun,wgengine: use TS_DEBUG_MTU consistently 2 سال پیش
packages 71029cea2d all: update copyright and license headers 3 سال پیش
paths 71029cea2d all: update copyright and license headers 3 سال پیش
portlist 71029cea2d all: update copyright and license headers 3 سال پیش
prober 7083246409 prober: only record latency for successful probes 3 سال پیش
release 311352d195 release/dist/cli: add --verbose to print subcommand output 3 سال پیش
safesocket 4441609d8f safesocket: remove the now unused WindowsLocalPort 3 سال پیش
scripts ed10a1769b scripts/installer.sh: check Photon OS version with pkg server. 3 سال پیش
smallzstd 71029cea2d all: update copyright and license headers 3 سال پیش
ssh e04acabfde ssh/tailssh: fix race in errors returned when starting recorder 2 سال پیش
syncs dad78f31f3 syncs: add WaitGroup wrapper (#7481) 3 سال پیش
tailcfg 43f7ec48ca funnel: change references from alpha to beta (#7613) 3 سال پیش
tempfork d1d5d52b2c net/tstun/table: add initial RoutingTable implementation 2 سال پیش
tka 88c7d19d54 tka: compact TKA storage on startup 3 سال پیش
tool 8c2b755b2e tool/gocross: use grep -E over egrep to avoid warning 2 سال پیش
tsconst 71029cea2d all: update copyright and license headers 3 سال پیش
tsnet 920ec69241 tsnet,wgenegine/netstack: add test and fix resource leaks 3 سال پیش
tstest f6ea6863de tstest/integration: add ping test w/ masquerades 3 سال پیش
tstime 87b4bbb94f tstime/rate: add Value (#7491) 3 سال پیش
tsweb 1a30b2d73f all: use tstest.Replace more 3 سال پیش
types 8ed4fd1dbc envknob/logknob: add package for configurable logging 2 سال پیش
util 3ba9f8dd04 util/codegen: add -copyright to control presence of copyright headers 3 سال پیش
version 9ebab961c9 version/mkversion: don't break on tagged go.mod entries 3 سال پیش
wf 71029cea2d all: update copyright and license headers 3 سال پیش
wgengine 40fa2a420c envknob,net/tstun,wgengine: use TS_DEBUG_MTU consistently 2 سال پیش
words 812025a39c words: what?! a llama?! he's supposed to be dead! (#7623) 3 سال پیش
.gitattributes 1813c2a162 .: add .gitattributes entry to use Go hunk-header driver 4 سال پیش
.gitignore fc4b25d9fd release: open-source release build logic for unix packages 3 سال پیش
ALPINE.txt 88133c361e Docker: add ALPINE.txt to manage alpine versions 3 سال پیش
AUTHORS a8d8b8719a Move Linux client & common packages into a public repo. 6 سال پیش
CODE_OF_CONDUCT.md 452b81d56b Add a code of conduct. 6 سال پیش
Dockerfile f9667e4946 Dockerfile: fix docker build 3 سال پیش
Dockerfile.base 71029cea2d all: update copyright and license headers 3 سال پیش
LICENSE 947c14793a all: update tools that manage copyright headers 3 سال پیش
Makefile 8b9ee7a558 Makefile: add help text to Makefile 3 سال پیش
PATENTS a8d8b8719a Move Linux client & common packages into a public repo. 6 سال پیش
README.md b1248442c3 all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 3 سال پیش
SECURITY.md e59605595e Add a SECURITY.md for vulnerability reports. 6 سال پیش
VERSION.txt 6d3490f399 VERSION.txt: this is 1.39 3 سال پیش
api.md ef6f66bb9a api.md: refresh of API docs 3 سال پیش
build_dist.sh 82e067e0ff build_dist.sh: make cross-compilation friendly 3 سال پیش
build_docker.sh f9667e4946 Dockerfile: fix docker build 3 سال پیش
flake.lock 30e0156430 nix: update nixpkgs flake, override go_1_20 for tailscale_go (#7139) 3 سال پیش
flake.nix cb960d6cdd go.mod.sri: update SRI hash for go.mod changes 2 سال پیش
go.mod a31e43f760 go.mod: bump gvisor to 20230320 for dispatcher locking 2 سال پیش
go.mod.sri cb960d6cdd go.mod.sri: update SRI hash for go.mod changes 2 سال پیش
go.sum a31e43f760 go.mod: bump gvisor to 20230320 for dispatcher locking 2 سال پیش
go.toolchain.branch 623176ebc9 go.toolchain.branch: update to Go 1.20 3 سال پیش
go.toolchain.rev f11c270c6b go.toolchain.rev: bump Go toolchain 3 سال پیش
pull-toolchain.sh 0e4f2bdd0c pull-toolchain.sh: don't run update-flake.sh 3 سال پیش
shell.nix cb960d6cdd go.mod.sri: update SRI hash for go.mod changes 2 سال پیش
staticcheck.conf ece138ffc3 staticcheck.conf: remove unnecessary warning 4 سال پیش
update-flake.sh f145c2b65b .github/workflows: add workflow to update go.mod Nix SRI hash 3 سال پیش
version-embed.go da75e49223 version: return correct Meta.MajorMinorPatch in non-dev builds 3 سال پیش
version_test.go 71029cea2d all: update copyright and license headers 3 سال پیش

README.md

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains the majority of Tailscale's open source code. Notably, it includes the tailscaled daemon and the tailscale CLI tool. The tailscaled daemon runs on Linux, Windows, macOS, and to varying degrees on FreeBSD and OpenBSD. The Tailscale iOS and Android apps use this repo's code, but this repo doesn't contain the mobile GUI code.

Other Tailscale repos of note:

For background on which parts of Tailscale are open source and why, see https://tailscale.com/opensource/.

Using

We serve packages for a variety of distros and platforms 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. The GUI wrappers on non-open source platforms are themselves not open source.

Building

We always require the latest Go release, currently Go 1.20. (While we build releases with our Go fork, its use is not required.)

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.

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.

See git log for our commit message style. It's basically the same as Go's style.

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.