Mirror of tailscale/tailscale@github.com
Go to file
Brad Fitzpatrick 187e22a756 wgengine/magicsock: don't run the DERP cleanup so often
To save CPU and wakeups, don't run the DERP cleanup timer regularly
unless there is a non-home DERP connection open.

Also eliminates the goroutine, moving to a time.AfterFunc.

Updates #1034

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-19 18:14:25 -08:00
.github Cache go modules. 2021-01-07 21:34:43 -08:00
atomicfile atomicfile: don't Chmod on windows 2020-07-15 12:31:40 -07:00
cmd cmd/tailscale/cli: require v4 and v6 default routes to be advertised together. 2021-01-19 16:49:06 -08:00
control/controlclient all: convert from []wgcfg.Endpoint to string 2021-01-14 13:54:07 -08:00
derp net/dnscache: work on IPv6-only hosts (again) 2021-01-06 19:53:13 -08:00
disco wgengine/magicsock: run test DERP in mode where only disco packets allowed 2020-07-16 12:58:35 -07:00
internal all: convert from []wgcfg.Endpoint to string 2021-01-14 13:54:07 -08:00
ipn net/packet, wgengine, tstun: add inter-node TSMP protocol for connect errors 2021-01-15 14:03:57 -08:00
log log/filelogger: move our Windows disk file writing+rotation package here 2020-10-29 14:59:44 -07:00
logpolicy cmd/tailscaled, logpolicy, logtail: support log levels 2020-12-21 12:59:33 -08:00
logtail logtail: add tests 2021-01-15 19:11:40 -08:00
metrics metrics: add LabelMap.GetFloat 2020-07-19 12:31:12 -07:00
net net/nettest: de-flake tests on Windows 2021-01-15 18:21:56 -08:00
paths paths, cmd/tailscaled: on Windows, don't try to migrate from legacy relay.conf 2020-07-13 08:59:54 -07:00
portlist portlist: add a test for SameInodes 2021-01-12 04:29:28 -08:00
safesocket ipn, ipnserver: only require sudo on Linux for mutable CLI actions 2021-01-15 10:13:00 -08:00
scripts Allow 2021 in LICENSE header. 2021-01-08 10:23:32 -08:00
smallzstd smallzstd: new package that constructs zstd small encoders/decoders. 2020-07-02 16:13:06 -07:00
syncs Fix receiver in order to be consistent: syncs.WaitGroupChan 2020-11-24 17:20:34 -08:00
tailcfg tailcfg: remove v6-overlay debug option. 2021-01-18 17:47:23 -08:00
tempfork/pprof go.mod: upgrade staticcheck to 0.1.0 2020-12-14 14:01:29 -08:00
tsconst net/netns: add windows support. 2020-09-14 16:28:49 -07:00
tstest ipn: close logger at the end of TestLocalLogLines 2021-01-08 17:10:48 -08:00
tstime tstime: add Parse3339B, for byte slices 2020-11-19 14:47:11 -08:00
tsweb tsweb: export VarzHandler 2021-01-14 11:49:44 -08:00
types types/logger: trim spaces from the rate-limited example message. 2021-01-19 16:48:44 -08:00
util cmd/tailscale: change formatting of "tailscale status" 2021-01-10 12:11:22 -08:00
version version: new version for a new year 2021-01-04 08:58:05 -08:00
wgengine wgengine/magicsock: don't run the DERP cleanup so often 2021-01-19 18:14:25 -08:00
.gitattributes .gitattributes: add a smudge filter for go.mod. 2020-02-19 20:02:02 -05:00
.gitignore add nix-shell boilerplate (#1028) 2020-12-29 12:17:03 -05:00
AUTHORS Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
CODE_OF_CONDUCT.md Add a code of conduct. 2020-02-10 22:16:30 -08:00
Dockerfile Dockerfile: add big warning banner 2021-01-11 19:23:47 -08:00
LICENSE Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
Makefile Makefile: remove tsshd from depaware 2020-09-11 11:09:32 -07:00
PATENTS Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
README.md README: names of contributors, link to them instead 2021-01-12 08:24:32 -08:00
SECURITY.md Add a SECURITY.md for vulnerability reports. 2020-02-11 10:26:41 -08:00
VERSION.txt VERSION.txt: this is now 1.3.x. 2020-11-03 15:09:02 -08:00
api.md api.md: add TOC 2021-01-19 12:35:09 -08:00
build_dist.sh build_dist: fix after version refactor. 2020-11-03 14:40:09 -08:00
go.mod go.mod: bump to pull in minor wireguard-go changes 2021-01-15 17:35:03 -08:00
go.sum go.sum: update (forgotten after earlier wireguard-go update again) 2021-01-15 19:19:27 -08:00
shell.nix add nix-shell boilerplate (#1028) 2020-12-29 12:17:03 -05:00

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.15) 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:

WireGuard is a registered trademark of Jason A. Donenfeld.