summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2021-01-28wgengine/router: don't configure IPv6 on Linux when IPv6 is unavailablebradfitz/linux_v6_offBrad Fitzpatrick1-1/+12
Fixes #1214 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-27VERSION.txt: this is 1.5.0.David Anderson1-1/+1
2021-01-27wgengine: don't leak TUN device in NewUserspaceEngine error pathBrad Fitzpatrick1-0/+1
Updates #1187 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-27wgengine: fix bugs from earlier fixBrad Fitzpatrick1-2/+5
Fixes a regression from e970ed09951a that wasn't covered by tests in this repo. (Our end-to-end tests in another repo caught this.) Updates #1204
2021-01-27tailcfg: update node display name fields and methods (#1207)Sonia Appasamy7-75/+121
Signed-off-by: Sonia Appasamy <sonia@tailscale.com> Consolidates the node display name logic from each of the clients into tailcfg.Node. UI clients can use these names directly, rather than computing them independently.
2021-01-26net/interfaces: don't send over zt* interfacesBrad Fitzpatrick1-2/+17
Fixes #1208 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-26net/interfaces: remove IsTailscaleIP, make callers use tsaddr.David Anderson4-34/+21
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-26wgengine: fix crash reading long UAPI lines from legacy peersBrad Fitzpatrick1-26/+28
Also don't log.Fatalf in a function returning an error. Fixes #1204 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-26ipn/ipnstate: update tailscale status -web to match CLIBrad Fitzpatrick2-35/+52
2021-01-25Merge branch 'main' of github.com:tailscale/tailscale into mainBrad Fitzpatrick8-3/+62
2021-01-25ipn/ipnserver: on Windows in unattended mode, wait for Engine foreverBrad Fitzpatrick1-0/+62
Updates #1187
2021-01-25ipn/ipnserver: rearrange some codeBrad Fitzpatrick1-28/+28
No functional change. Make a future diff easier to read.
2021-01-25ipn/ipnserver: on Windows in unattended mode, wait for Engine foreverBrad Fitzpatrick1-28/+90
Updates #1187
2021-01-25tailcfg, controlclient: add DisplayName field to tailcfg.Node and populate ↵Sonia Appasamy8-3/+62
it from controlclient (#1191) Signed-off-by: Sonia Appasamy <sonia@tailscale.com>
2021-01-25wgengine/router: stop setPrivateNetwork goroutine on configureInterface failureBrad Fitzpatrick1-2/+18
On Windows, configureInterface starts a goroutine reconfiguring the Windows firewall. But if configureInterface fails later, that goroutine kept running and likely failing forever, spamming logs. Make it stop quietly if its launching goroutine filed.
2021-01-24LICENSE: Reformat for GithubAndrey Petrov1-22/+24
Should be equivalent to the license before, but compatible with the library Github uses to detect the license for the project's metadata: https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository#detecting-a-license Signed-off-by: Andrey Petrov <andrey.petrov@shazow.net>
2021-01-22wgengine/filter: add a Clone method.David Anderson2-0/+33
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-22cmd/tailscaled: update depaware.txtBrad Fitzpatrick1-1/+1
2021-01-22control/controlclient: use more direct way of getting the MagicDNS suffixBrad Fitzpatrick2-24/+18
Suggested by Avery earlier. Ends up fixing bug in "tailscale status" when MagicDNS if off too: https://forum.tailscale.com/t/1-3-293-is-released-a-1-4-0-pre-release/349/11?u=bradfitz
2021-01-22ipn, wgengine/filter: fix Shields Up recent regression and old bugBrad Fitzpatrick2-4/+13
Fixes #1192 (regression) Fixes #1193 (old bug)
2021-01-22wgengine/tstun: also support DropSilently on PostFilterInBrad Fitzpatrick1-2/+2
Not a problem (yet). But should be consistent with other places that support both types of drops.
2021-01-22cmd/tailscaled: don't require --state for --cleanupBrad Fitzpatrick1-4/+4
2021-01-21go.mod: bump wireguard-goBrad Fitzpatrick2-1/+3
2021-01-21wgengine: use Tailscale-style peer identifiers in logsJosh Bleecher Snyder6-44/+176
Rewrite log lines on the fly, based on the set of known peers. This enables us to use upstream wireguard-go logging, but maintain the Tailscale-style peer public key identifiers that the rest of our systems (and people) expect. Fixes #1183 Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
2021-01-21cmd/tailscale: make "tailscale ping" also resolve names without DNSBrad Fitzpatrick1-17/+46
This lets "tailscale ping $NAME" work even if MagicDNS is off, letting you ping a name that shows up in "tailscale status". More user friendly.
2021-01-21wgengine/magicsock: disable regular STUNs for all platforms by defaultBrad Fitzpatrick3-62/+102
Reduces background CPU & network. Updates #1034 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-21tailcfg: add StableID to Node. #1178David Anderson3-3/+39
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-21safesocket: on Linux, make /var/run/tailscale be 0755Brad Fitzpatrick1-2/+22
Continuation of earlier two umask changes, 5611f290eb118eddc256560eaaa69f509347b4de and d6e9fb1df0fd67d08065c2277e7c4f4a82b7930f. This change mostly affects us, running tailscaled as root by hand (wit a umask of 0077), not under systemd. End users running tailscaled under systemd won't have a umask. Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-21Add docker build script to inject version informationSteve Coffman2-0/+34
Signed-off-by: Steve Coffman <steve@khanacademy.org>
2021-01-21wgengine/magicsock: log more details of endpoints learned over discoBrad Fitzpatrick1-1/+25
Also, don't try to use IPv6 LinkLocalUnicast addresses for now. Like endpoints exchanged with control, we share them but don't yet use them. Updates #1172
2021-01-21tstime: add RandomDurationBetween helperBrad Fitzpatrick2-0/+67
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-20control/controlclient: add debug knob to not use control's endpointsBrad Fitzpatrick1-8/+18
2021-01-20wgengine/magicsock: fix logging regressionBrad Fitzpatrick1-1/+1
c8c493f3d9bf925e9459236bf1ecea823be6f825 made it always say `created=false` which scared me when I saw it, as that would've implied things were broken much worse. Fortunately the logging was just wrong.
2021-01-20control/controlclient: add detail to verbose log about route skipsBrad Fitzpatrick1-2/+18
2021-01-20wgengine/magicsock: send, use endpoints in CallMeMaybe messagesBrad Fitzpatrick2-17/+78
Fixes #1172 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-20tailcfg, control/controlclient: add mapver 10: MapResponse.PeerSeenChangeBrad Fitzpatrick2-1/+25
This adds a more wire-efficient way of updating peers' Node.LastSeen times. Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-20disco: support parsing/encoding endpoints in call-me-maybe framesBrad Fitzpatrick3-8/+54
Updates #1172 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-20wgengine/magicsock: make legacy DstToString match AddrsJosh Bleecher Snyder1-2/+1
DstToString is used in two places in wireguard-go: Logging and uapi. We are switching to use uapi for wireguard-go config. To preserve existing behavior, we need the full set of addrs. And for logging, having the full set of addrs seems useful. (The Addrs method itself is slated for removal. When that happens, the implementation will move to DstToString.) Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
2021-01-19wgengine/magicsock: don't run the DERP cleanup so oftenBrad Fitzpatrick1-16/+48
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-19cmd/tailscale/cli: require v4 and v6 default routes to be advertised together.David Anderson1-0/+16
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-19types/logger: trim spaces from the rate-limited example message.David Anderson1-1/+1
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-19api.md: add TOCBrad Fitzpatrick1-6/+56
2021-01-19Revert "wgengine/magicsock: shortcircuit discoEndpoint.heartbeat when its ↵Josh Bleecher Snyder1-11/+0
connection is closed" This reverts commit 08baa17d9a785635891c3462d01e601759b8b8b6. It caused deadlocks due to lock ordering violations. It was not the right fix, and thus should simply be reverted while we look for the right fix (if we haven't already found it in the interim; we've fixed other logging-after-test issues). Fixes #1161
2021-01-19wgengine/magicsock: prevent log-after-test in TestTwoDevicePingJosh Bleecher Snyder1-1/+4
2021-01-19wgengine/magicsock: fix a naked return bug/crash where we returned (nil, true)Brad Fitzpatrick1-4/+4
The 'ok' from 'ipp, ok :=' above was the result parameter ok. Whoops.
2021-01-18wgengine/magicsock: add single element IPPort->endpoint cache in receive pathBrad Fitzpatrick1-7/+35
name old time/op new time/op delta ReceiveFrom-4 21.8µs ± 2% 20.9µs ± 2% -4.27% (p=0.000 n=10+10) Updates #414 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-18tailcfg: remove v6-overlay debug option.David Anderson1-2/+0
It's about to become a no-op in control. Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-18wgengine/magicsock: simplify ReceiveIPv4+DERP pathBrad Fitzpatrick2-186/+151
name old time/op new time/op delta ReceiveFrom-4 35.8µs ± 3% 21.9µs ± 5% -38.92% (p=0.008 n=5+5) Fixes #1145 Updates #414 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-01-18wgengine: correctly track all node IPs in lazy config.David Anderson1-3/+6
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-01-15wgengine/magicsock: use relatively new netaddr.IPPort.IsZero methodBrad Fitzpatrick1-1/+1