dd31285ad4
wgengine/magicsock: send IPv6 using pconn6, if available
...
In prep for IPv6 support. Nothing should make it this far yet.
2020-03-20 14:30:12 -07:00
af277a6762
controlclient, magicsock: add debug knob to request IPv6 endpoints
...
Add opt-in method to request IPv6 endpoints from the control plane.
For now they should just be skipped. A previous version of this CL was
unconditional and reportedly had problems that I can't reproduce. So
make it a knob until the mystery is solved.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2020-03-20 14:27:24 -07:00
221e7d7767
wgengine/magicsock: make log message include DERP port (node)
2020-03-20 13:51:20 -07:00
33bdcabf03
wgengine/magicsock: call stun callback w/ only valid part of STUN packet
2020-03-20 13:44:27 -07:00
13eed1e88b
controlclient: remove common log on very quiet nodes
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-21 07:11:10 +11:00
f9cc4e8f53
tailcfg: restore MapRequest.IncludeIPv6 bool
...
Partially restores 0be475ba46
2020-03-20 08:13:47 -07:00
0be475ba46
Revert "tailcfg, controlclient, magicsock: request IPv6 endpoints, but ignore them"
...
Breaks something deep in wireguard or magicsock's brainstem, no packets at all
can flow. All received packets fail decryption with "invalid mac1".
This reverts commit 94024355ed
.
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-20 03:26:17 -07:00
f9184ad12b
go.mod: update wireguard-go for https://github.com/tailscale/wireguard-go/pull/13
2020-03-19 22:46:36 -07:00
94024355ed
tailcfg, controlclient, magicsock: request IPv6 endpoints, but ignore them
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2020-03-19 21:01:52 -07:00
12a6626a94
tsweb: use a ResponseWriter wrapper to log more accurately.
...
Also adds tests, because the logging handler is acquiring a fair
number of branches.
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-19 20:11:07 -07:00
2e43cd3f95
testy: add a virtual clock helper for tests.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-19 20:11:07 -07:00
b1d5548fa7
tailcfg: make NodeKey.IsZero have a value receiver
2020-03-19 20:00:32 -07:00
51b669e4bd
ipn: skip tailscaled UDP ports in service list
2020-03-19 19:56:02 -07:00
60ea635c6d
wgengine/magicsock: delete inaccurate comment
...
I meant to include this in the earlier commit.
2020-03-19 19:48:02 -07:00
6ddbcab71e
logtail: rename the unused CheckLogs to DrainLogs
...
Its semantics has changed slightly, this will let us use it to
drive batched logging in special circumstances.
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-20 13:26:33 +11:00
51a12d1307
filch: a few minor comments
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-20 13:20:45 +11:00
a184e05290
wgengine/magicsock: listen on udp6, use it for STUN, report endpoint
...
More steps towards IPv6 transport.
We now send it to tailcontrol, which ignores it.
But it doesn't actually actually support IPv6 yet (outside of STUN).
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2020-03-19 13:54:38 -07:00
073bb8de80
control/controlclient: don't use Node as value type
2020-03-19 13:19:02 -07:00
7caa288213
wgengine/magicsock: rename pconn field to pconn4, in prep for pconn6
2020-03-19 08:49:30 -07:00
5fa825f057
go.mod, go.sum: update
2020-03-19 08:49:12 -07:00
addbdce296
wgengine, ipn: include number of active DERPs in status
...
Use this when making the ipn state transition from Starting to
Running. This way a network of quiet nodes with no active
handshaking will still transition to Active.
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-19 17:55:16 +11:00
1ad78ce698
magicsock: reconnect to home DERP on key change
...
Typically the home DERP server is found and set on startup before
magicsock's SetPrivateKey can be called, so no DERP connection is
established. Make sure one is by kicking the home DERP tires in
SetPrivateKey.
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-19 17:53:44 +11:00
455ba751d9
magicsock: start connection to HOME derp immediately
...
The code as written intended to do this, but it repeated the
comparison of derpNum and c.myDerp after c.myDerp had been
updated, so it never executed.
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-19 17:36:30 +11:00
73cae4eb11
tailcfg, controlclient: standardize on wgcfg ShortString key printing
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-19 09:17:34 +11:00
acd14960f8
go.mod: bump wireguard-go
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-19 09:10:13 +11:00
14a2564ef0
go.mod: bump wireguard-go
2020-03-18 13:26:08 -07:00
19a1704abd
netcheck: use best DERP server in past 5 minutes to avoid flip-flopping
...
Fixes #162
2020-03-18 13:07:13 -07:00
6de37f4cc0
tsweb: move some comments, add a TODO
2020-03-18 09:54:48 -07:00
df4636567f
tsweb: adjust names and docs of the "handler with errors" functions.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-18 01:39:01 -07:00
131541c06d
derp: deflake test
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-18 16:33:25 +11:00
52d9613b42
github: add license check to CI.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-17 21:34:44 -07:00
315a5e5355
scripts: add a license header checker.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-17 21:34:44 -07:00
3e2fadf872
version: add license header to input for generated file.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-17 21:34:44 -07:00
98eceae55e
tsweb: add a Handler type.
...
Handler is like http.Handler, but returns errors. ErrHandler
converts back to an http.Handler, with added error handling
and logging.
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-17 21:34:44 -07:00
f8d67bb591
portlist: ignore ports bound to localhost
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2020-03-17 20:55:45 -07:00
c706731dc7
tsweb: add copyright header
...
And fix an unlikely but potential crash.
2020-03-17 20:08:13 -07:00
a567c56971
tsweb: pull in tlog data structures from corp repo.
...
This is a prelude to having logging helpers in tsweb.
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-17 17:21:50 -07:00
5a0822eefd
controlclient, ipn: fix tests for new control param
2020-03-18 08:35:34 +11:00
e085aec8ef
all: update to wireguard-go API changes
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2020-03-17 08:53:05 -07:00
dd14b658a2
version: bump again, for 0.97.0.
2020-03-16 21:16:18 -07:00
9ea445acd1
version: bump for 0.96.1 tag.
2020-03-16 20:35:35 -07:00
5758d8d48f
Merge branch 'master' of github.com:tailscale/tailscale into HEAD
2020-03-16 18:37:38 -07:00
bf98913106
go.mod: bump wireguard-go version.
...
Signed-off-by: David Anderson <dave@natulte.net >
2020-03-16 18:36:30 -07:00
8f9fa6a842
logtail: minor style/simplification changes
2020-03-15 22:41:50 -07:00
8de67844bd
cmd/tailscale: make failure message when tailscaled down less technical
2020-03-15 22:40:41 -07:00
5aafe0ee96
cmd/tailscale: don't crash on too many non-flag args
2020-03-15 22:27:36 -07:00
d348b94505
stun, stunner: clarify an error log message more
...
But two earlier changes mean this doesn't show up anymore anyway.
But if it does, it'll be a nice message.
2020-03-15 22:19:45 -07:00
1b2be3f1c8
controlclient: test peer keepalive directive
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-14 14:11:07 -05:00
8712164a0a
controlclient: use per-peer KeepAlive signal
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-14 14:11:03 -05:00
290f83e9f6
tailcfg: fix test
...
Signed-off-by: David Crawshaw <crawshaw@tailscale.com >
2020-03-14 11:03:00 -05:00