Brad Fitzpatrick
f1d45bc4bb
cmd/tailscale/cli: pull out prefsFromUpArgs for testability, add tests
...
Will add more tests later but this locks in all the existing warnings
and errors at least, and some of the existing non-error behavior.
Mostly I want this to exist before I actually fix #1725 .
Updates #1725
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-17 20:59:33 -07:00
Brad Fitzpatrick
4948ff6ecb
cmd/tailscale/cli: treat nil and non-nil zero length slices as equiv prefs
...
Updates #1725
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-17 19:17:18 -07:00
Brad Fitzpatrick
eb6115e295
cmd/tailscaled: let SOCKS5 dial non-Tailscale addrs in userspace mode
...
Fixes #1617
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-16 16:20:31 -07:00
Naman Sood
b85d80b37f
net/tsaddr: add new IP range for ephemeral nodes in Tailscale ULA ( #1715 )
...
Signed-off-by: Naman Sood <mail@nsood.in>
2021-04-16 14:47:55 -04:00
Brad Fitzpatrick
b993d9802a
ipn/ipnlocal, etc: require file sharing capability to send/recv files
...
tailscale/corp#1582
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-16 10:58:19 -07:00
Brad Fitzpatrick
2f422434aa
cmd/tailscale/cli: wait on the right contexts in up
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-16 10:27:56 -07:00
Brad Fitzpatrick
6da812b4cf
cmd/tailscale/cli: avoid a spammy log message on SIGINT
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-16 08:00:31 -07:00
Brad Fitzpatrick
670838c45f
tailcfg, control/controlclient: (mapver 16) add Node.Online, MapResponse.OnlineChange
...
And fix PeerSeenChange bug where it was ignored unless there were
other peer changes.
Updates tailscale/corp#1574
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-15 20:07:24 -07:00
David Anderson
7055f870f8
control/controlclient: only use a single DNS label as the hostname.
...
Fixes #971
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-15 17:08:58 -07:00
Maisem Ali
4f3203556d
wgengine/router: add the Tailscale ULA route on darwin.
...
Signed-off-by: Maisem Ali <maisem@tailscale.com>
2021-04-15 17:07:50 -07:00
Ross Zurowski
c748c20fba
cmd/tailscale: fix command descriptions ( #1710 )
...
Signed-off-by: Ross Zurowski <ross@rosszurowski.com>
2021-04-15 18:33:23 -04:00
Brad Fitzpatrick
b34fbb24e8
logtail: reduce PublicID.UnmarshalText from 2 allocs to 0
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-15 10:42:12 -07:00
David Anderson
bb0710d51d
net/dns: add debugging traces to DNS manager selection on linux.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-14 15:52:41 -07:00
David Anderson
4b70c7b717
net/dns: fix inverted test for NetworkManager.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-14 15:52:22 -07:00
David Anderson
4849a4d3c8
net/dns: error out on linux if /etc/resolv.conf can't be read.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-14 15:35:32 -07:00
David Anderson
1f9b73a531
net/dns: fix freebsd DNS manager selection.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-14 15:34:59 -07:00
Naman Sood
5ea53891fe
cmd/tailscaled: populate netstack variable to use dialer in SOCKS5
...
Signed-off-by: Naman Sood <mail@nsood.in>
2021-04-14 13:13:10 -04:00
Brad Fitzpatrick
d6a95d807a
ipn/ipnlocal: advertise netstack to control server
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-14 09:38:33 -07:00
AdamKorcz
2243bb48c2
stun fuzzer: Small fix
...
Signed-off-by: AdamKorcz <adam@adalogics.com>
2021-04-14 08:17:46 -07:00
Brad Fitzpatrick
75b99555f3
cmd/tailscale/cli: let ip take a peername
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-14 08:13:16 -07:00
Brad Fitzpatrick
762180595d
ipn/ipnstate: add PeerStatus.TailscaleIPs slice, deprecate TailAddr
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-14 08:12:31 -07:00
Brad Fitzpatrick
c2ca2ac8c4
net/dns: fix FreeBSD build
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 17:38:17 -07:00
David Anderson
84bd50329a
net/dns: fix staticheck.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-13 17:28:37 -07:00
David Anderson
d6bb11b5bf
net/dns: implement correct manager detection on linux.
...
Part of #953 .
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-13 17:19:00 -07:00
David Anderson
9ef932517b
net/dns: fix NM's GetBaseConfig when no configs exist.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-13 17:19:00 -07:00
David Anderson
fe3b1ab747
net/dns: refactor dbus connection setup in resolved manager.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-13 17:19:00 -07:00
Brad Fitzpatrick
2df6372b67
portlist: de-dup services on same (proto, port) on both IPv4/IPv6
...
Fixes #1703
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 14:40:33 -07:00
Brad Fitzpatrick
a8d95a18b2
cmd/tailscale/cli: add up --unattended for Windows
...
RELNOTE=Windows CLI behavior change: ForceDaemon now off by default
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 11:40:31 -07:00
Brad Fitzpatrick
34d2f5a3d9
tailcfg: add Endpoint, EndpointType, MapRequest.EndpointType
...
Track endpoints internally with a new tailcfg.Endpoint type that
includes a typed netaddr.IPPort (instead of just a string) and
includes a type for how that endpoint was discovered (STUN, local,
etc).
Use []tailcfg.Endpoint instead of []string internally.
At the last second, send it to the control server as the existing
[]string for endpoints, but also include a new parallel
MapRequest.EndpointType []tailcfg.EndpointType, so the control server
can start filtering out less-important endpoint changes from
new-enough clients. Notably, STUN-discovered endpoints can be filtered
out from 1.6+ clients, as they can discover them amongst each other
via CallMeMaybe disco exchanges started over DERP. And STUN endpoints
change a lot, causing a lot of MapResposne updates. But portmapped
endpoints are worth keeping for now, as they they work right away
without requiring the firewall traversal extra RTT dance.
End result will be less control->client bandwidth. (despite negligible
increase in client->control bandwidth)
Updates tailscale/corp#1543
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 10:12:14 -07:00
Brad Fitzpatrick
b91f3c4191
ipn/ipnlocal: fix peerapi printf arg mismatch
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:56:26 -07:00
Brad Fitzpatrick
a08d978476
cmd/tailscale/cli: make push get peerapi base via localapi, not TSMP ping
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:50:16 -07:00
Brad Fitzpatrick
1dc2cf4835
cmd/tailscale/cli: add push --targets to list possible targets
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:36:14 -07:00
Brad Fitzpatrick
1f4cf1a4f4
ipn/localapi: only require read access to list file targets
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:35:16 -07:00
Brad Fitzpatrick
d17f96b586
cmd/tailscale/cli: restore SIGINT/SIGTERM on context cancel
...
This fixes Ctrl-C not interrupting "tailscale push".
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:34:42 -07:00
Brad Fitzpatrick
db5e269463
client/tailscale/apitype: move local API types to new apitype package
...
They were scattered/duplicated in misc places before.
It can't be in the client package itself for circular dep reasons.
This new package is basically tailcfg but for localhost
communications, instead of to control.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-13 08:13:46 -07:00
Maisem Ali
1b9d8771dc
ipn/ipnlocal,wgengine/router,cmd/tailscale: add flag to allow local lan access when routing traffic via an exit node.
...
For #1527
Signed-off-by: Maisem Ali <maisem@tailscale.com>
2021-04-12 17:29:01 -07:00
David Anderson
854d5d36a1
net/dns: return error from NewOSManager, use it to initialize NM.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-12 15:51:37 -07:00
Maisem Ali
4d142ebe06
derp: handle net.ErrClosed in TestSendFreeze
...
Signed-off-by: Maisem Ali <maisem@tailscale.com>
2021-04-12 15:23:36 -07:00
Brad Fitzpatrick
8e75c8504c
ipn/ipnlocal: in direct file mode, don't readdir
...
And don't even allow attempts at Open/Delete.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 15:12:47 -07:00
Brad Fitzpatrick
9972c02b60
cmd/tailscale/cli: don't let up change prefs based on implicit flag values
...
This changes the behavior of "tailscale up".
Previously "tailscale up" always did a new Start and reset all the settings.
Now "tailscale up" with no flags just brings the world [back] up.
(The opposite of "tailscale down").
But with flags, "tailscale up" now only is allowed to change
preferences if they're explicitly named in the flags. Otherwise it's
an error. Or you need to use --reset to explicitly nuke everything.
RELNOTE=tailscale up change
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 14:39:47 -07:00
David Anderson
9aa33b43e6
net/dns: support split and unsplit DNS in NetworkManager.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
2021-04-12 14:34:08 -07:00
Brad Fitzpatrick
f5742b0647
ipn/ipnlocal: add LocalBackend.SetDirectFileRoot
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 14:29:45 -07:00
Brad Fitzpatrick
64c80129f1
types/netmap: add some docs/warning to NetworkMap
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 12:49:25 -07:00
Brad Fitzpatrick
ccb322db04
tailcfg, control/controlclient: make nil MapResponse.DNSConfig mean unchanged (mapver15)
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 12:46:32 -07:00
Brad Fitzpatrick
a3113a793a
ipn: add hostname to Prefs.Pretty output
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:45:33 -07:00
Brad Fitzpatrick
4c3f7c06fc
ipn/ipnlocal: be consistent in not logging when no notify registered
...
Some paths already didn't. And in the future I hope to shut all the
notify funcs down end-to-end when nothing is connected (as in the
common case in tailscaled). Then we can save some JSON encoding work.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:38:51 -07:00
Brad Fitzpatrick
7c0e58c537
ipn/ipnlocal: remove redundant notify nil check
...
send does it.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:38:51 -07:00
Brad Fitzpatrick
d9ee9a0d3f
ipn: set BackendServer's notify earlier; don't require Start
...
We've been slowly making Start less special and making IPN a
multi-connection "watch" bus of changes, but this Start specialness
had remained.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:38:51 -07:00
Brad Fitzpatrick
8e4d1e3f2c
ipn: include err in Notify decode fatal path
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:38:51 -07:00
Brad Fitzpatrick
d5d70ae9ea
wgengine/monitor: reduce Linux log spam on down
...
Fixes #1689
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-04-12 10:38:51 -07:00