Go to file
Brad Fitzpatrick 984cd1cab0 cmd/tailscale: add CLI debug command to do raw LocalAPI requests
This adds a portable way to do a raw LocalAPI request without worrying
about the Unix-vs-macOS-vs-Windows ways of hitting the LocalAPI server.
(It was already possible but tedious with 'tailscale debug local-creds')

Updates tailscale/corp#24690

Change-Id: I0828ca55edaedf0565c8db192c10f24bebb95f1b
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2025-03-20 10:07:11 -07:00
.bencher
.github .github/workflows/govulncheck.yml: send messages to another channel (#15295) 2025-03-14 12:30:29 -07:00
appc appc: fix a deadlock in route advertisements (#15031) 2025-02-18 11:31:14 -08:00
atomicfile atomicfile: use ReplaceFile on Windows so that attributes and ACLs are preserved 2025-01-15 13:57:37 -05:00
chirp
client web: support Host 100.100.100.100:80 in tailscaled web server 2025-03-19 16:46:32 +00:00
clientupdate clientupdate: refuse to update in tsnet binaries (#14911) 2025-02-04 15:51:03 -08:00
cmd cmd/tailscale: add CLI debug command to do raw LocalAPI requests 2025-03-20 10:07:11 -07:00
control control/controlclient, ipn: add client audit logging (#14950) 2025-03-12 10:37:03 -04:00
derp cmd/derper, derp/derphttp: support, generate self-signed IP address certs 2025-03-07 05:36:55 -08:00
disco
docs ipn/ipnlocal,util/syspolicy,docs/windows/policy: implement the ReconnectAfter policy setting 2025-02-24 17:07:19 -06:00
doctor
drive
envknob ipn/store/kubestore,kube,envknob,cmd/tailscaled/depaware.txt: allow kubestore read/write custom TLS secrets (#15307) 2025-03-18 15:09:22 +00:00
feature feature/capture: move packet capture to feature/*, out of iOS + CLI 2025-01-24 17:52:43 -08:00
gokrazy gokrazy/natlab: update gokrazy, wire up natlab tests to GitHub CI 2025-03-04 18:57:29 -08:00
health health: relax no-derp-home warnable to not fire if not in map poll 2025-01-27 20:39:37 +00:00
hostinfo feature/*: make Wake-on-LAN conditional, start supporting modular features 2025-01-22 17:16:15 -08:00
internal client/tailscale,cmd/k8s-operator,internal/client/tailscale: move VIP service client methods into internal control client 2025-02-18 16:25:17 -06:00
ipn ipn: ensure that conffile is source of truth for advertised services. (#15361) 2025-03-20 14:40:36 +00:00
jsondb
k8s-operator cmd/k8s-operator: reinstate HA Ingress reconciler (#14887) 2025-02-04 13:09:43 +00:00
kube ipn/store/kubestore,kube,envknob,cmd/tailscaled/depaware.txt: allow kubestore read/write custom TLS secrets (#15307) 2025-03-18 15:09:22 +00:00
licenses licenses: update license notices 2025-03-17 12:50:16 -07:00
log
logpolicy logpolicy: expose MaxBufferSize and MaxUploadSize options (#14903) 2025-02-04 12:51:27 -08:00
logtail logpolicy: expose MaxBufferSize and MaxUploadSize options (#14903) 2025-02-04 12:51:27 -08:00
maths maths: add exponentially weighted moving average type 2025-02-25 11:59:19 -08:00
metrics
net net/dns: expose a function for recompiling the DNS configuration (#15346) 2025-03-19 09:21:37 -04:00
omit
packages/deb
paths
portlist
posture
prober all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
proxymap
release
safesocket safesocket, version: fix safesocket_darwin behavior for cmd/tailscale (#15275) 2025-03-11 13:24:11 -04:00
safeweb go.mod: bump gorilla/csrf for security fix (#14822) 2025-01-29 12:44:01 -08:00
scripts scripts/installer.sh: explicitly chmod 0644 installed files (#15171) 2025-03-02 18:22:15 +00:00
sessionrecording
smallzstd
ssh/tailssh ssh/tailssh: fix typo in forwardedEnviron method, add docs 2025-03-10 20:28:36 -07:00
syncs
tailcfg control/controlclient, ipn: add client audit logging (#14950) 2025-03-12 10:37:03 -04:00
taildrop
tempfork tempfork/acme: pull in latest changes for Go 1.24 (#15062) 2025-02-19 10:42:06 -08:00
tka
tool
tsconst
tsd control/controlclient, ipn: add client audit logging (#14950) 2025-03-12 10:37:03 -04:00
tsnet tsnet,wgengine: fix src to primary Tailscale IP for TCP dials 2025-03-11 13:11:01 -07:00
tstest wgengine/magicsock: use learned DERP route as send path of last resort 2025-03-07 05:37:24 -08:00
tstime
tsweb tsweb: split promvarz into an optional dependency 2025-03-18 16:57:04 -07:00
types all: statically enforce json/v2 interface satisfaction (#15154) 2025-02-27 12:33:31 -08:00
util util/eventbus: remove debug UI from iOS build 2025-03-18 17:04:15 -07:00
version safesocket, version: fix safesocket_darwin behavior for cmd/tailscale (#15275) 2025-03-11 13:24:11 -04:00
wf
wgengine net/netmon, wgengine/magicsock: be quieter with portmapper logs 2025-03-12 17:45:26 -04:00
words words: append to the tail of the wordlists (#15278) 2025-03-11 17:23:21 -04:00
.gitattributes
.gitignore
.golangci.yml .github: Bump golangci/golangci-lint-action from 6.3.1 to 6.5.0 (#15046) 2025-03-09 13:31:02 -06:00
ALPINE.txt
api.md
assert_ts_toolchain_match.go
AUTHORS
build_dist.sh feature/capture: move packet capture to feature/*, out of iOS + CLI 2025-01-24 17:52:43 -08:00
build_docker.sh
CODE_OF_CONDUCT.md
CODEOWNERS
Dockerfile go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
Dockerfile.base
flake.lock
flake.nix
go.mod go.mod update golang.org/x/net to 0.36.0 for govulncheck (#15296) 2025-03-13 10:37:42 -07:00
go.mod.sri
go.sum go.mod update golang.org/x/net to 0.36.0 for govulncheck (#15296) 2025-03-13 10:37:42 -07:00
go.toolchain.branch go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
go.toolchain.rev go.toolchain.rev: bump to go1.24.1 (#15209) 2025-03-04 16:17:57 -08:00
gomod_test.go
header.txt
LICENSE
Makefile go.mod: bump depaware, add --internal flag to stop hiding internal packages 2025-01-26 21:12:34 +00:00
PATENTS
pkgdoc_test.go
pull-toolchain.sh
README.md
SECURITY.md
shell.nix
staticcheck.conf
update-flake.sh
version_tailscale_test.go
version_test.go
version-embed.go
VERSION.txt VERSION.txt: this is v1.81.0 (#14838) 2025-01-30 13:04:29 -08:00

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.23. (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:

WireGuard is a registered trademark of Jason A. Donenfeld.