441 Commits (70ea0734787450a618e504de0e2b929cfb2f06ff)

Author SHA1 Message Date
Josh Bleecher Snyder 8c3c5e80b7 tailcfg: make MapResponse.ControlTime a pointer
4 years ago
Josh Bleecher Snyder 8cf6d0a17b tailcfg: add MapResponse.ControlTime field
4 years ago
Maisem Ali 72d8672ef7 tailcfg: make Node.Hostinfo a HostinfoView
4 years ago
Brad Fitzpatrick 57115e923e tailcfg: add start of SSH policy to be sent from control plane to nodes
4 years ago
Brad Fitzpatrick 3a94ece30c control/controlclient: remove dummy endpoint in endpoint stripping mode
4 years ago
Brad Fitzpatrick 86a902b201 all: adjust some log verbosity
4 years ago
Adrian Dewhurst adda2d2a51 control/controlclient: select newer certificate
4 years ago
Brad Fitzpatrick b3d268c5a1 control/controlclient: turn off Go's implicit compression
4 years ago
Brad Fitzpatrick 41fd4eab5c envknob: add new package for all the strconv.ParseBool(os.Getenv(..))
4 years ago
Josh Bleecher Snyder d9c21936c3 control/controlclient: stop logging about goal.url invariant
5 years ago
Josh Bleecher Snyder 758c37b83d net/netns: thread logf into control functions
5 years ago
Brad Fitzpatrick 24ea365d48 netcheck, controlclient, magicsock: add more metrics
5 years ago
Brad Fitzpatrick 3e1daab704 hostinfo, control/controlclient: tell control when Ubuntu has disabled Tailscale's sources
5 years ago
Brad Fitzpatrick d2ef73ed82 control/controlclient: rename a variable to not shadow a package name
5 years ago
Brad Fitzpatrick ad63fc0510 control/controlclient: make js/wasm work with Go 1.18+
5 years ago
Brad Fitzpatrick 337757a819 ipn/ipnlocal, control/controlclient: don't propagate all map errors to UI
5 years ago
David Anderson 0532eb30db all: replace tailcfg.DiscoKey with key.DiscoPublic.
5 years ago
David Anderson 7e6a1ef4f1 tailcfg: use key.NodePublic in wire protocol types.
5 years ago
David Anderson d6e7cec6a7 types/netmap: use key.NodePublic instead of tailcfg.NodeKey.
5 years ago
Brad Fitzpatrick ff597e773e tailcfg, control/controlclient: add method to exit client from control plane
5 years ago
David Anderson 418adae379 various: use NodePublic.AsNodeKey() instead of tailcfg.NodeKeyFromNodePublic()
5 years ago
David Anderson 4d38194c21 control/controlclient: stop using wgkey.
5 years ago
Brad Fitzpatrick ada8cd99af control/controlclient: add a LoginEphemeral LoginFlags bit
5 years ago
David Anderson 6e5175373e types/netmap: use new node key type.
5 years ago
David Anderson 0c546a28ba types/persist: use new node key type.
5 years ago
Maisem Ali 81cabf48ec control/controlclient,tailcfg: propagate registration errors to the frontend
5 years ago
nicksherron f01ff18b6f all: fix spelling mistakes
5 years ago
Brad Fitzpatrick aae622314e tailcfg, health: add way for control plane to add problems to health check
5 years ago
Adrian Dewhurst 4da559d7cc control/controlclient: update machine certificate signature version
5 years ago
Josh Bleecher Snyder 5b02ad16b9 control/controlclient: replace TODO with explanation
5 years ago
Dave Anderson 980acc38ba
types/key: add a special key with custom serialization for control private keys (#2792)
5 years ago
David Anderson 61c3b98a24 Revert "types/key: add MachinePrivate and MachinePublic."
5 years ago
David Anderson 4fdb88efe1 types/key: add MachinePrivate and MachinePublic.
5 years ago
David Anderson daf54d1253 control/controlclient: remove TS_DEBUG_USE_DISCO=only.
5 years ago
slowy07 ac0353e982 fix: typo spelling grammar
5 years ago
Brad Fitzpatrick 47045265b9 hostinfo: add SetDeviceModel setter, move remaining code from controlclient
5 years ago
Brad Fitzpatrick 6f8c8c771b control/controlclient: tweak a couple error messages
5 years ago
Simeng He e199e407d2 tailcfg: add IP and Types field to PingRequest
5 years ago
Josh Bleecher Snyder 4c8b5fdec4 control/controlclient: do not periodically print full netmap
5 years ago
Josh Bleecher Snyder a5da4ed981 all: gofmt with Go 1.17
5 years ago
Brad Fitzpatrick dfa5e38fad control/controlclient: report whether we're in a snap package
5 years ago
Brad Fitzpatrick 4a2c3e2a0a control/controlclient: grow goroutine debug buffer as needed
5 years ago
Brad Fitzpatrick 1986d071c3 control/controlclient: don't use regexp in goroutine stack scrubbing
5 years ago
Brad Fitzpatrick 171ec9f8f4 control/{controlknobs,controlclient}: simplify knobs API, fix controlclient crash
5 years ago
julianknodt 1bb6abc604 net/portmapper: add upnp port mapping
5 years ago
Brad Fitzpatrick fd7fddd44f control/controlclient: add debug knob to force node to only IPv6 self addr
5 years ago
David Crawshaw 54199d9d58 controlclient: log server key and URL
5 years ago
Brad Fitzpatrick 03311bb0d6 hostinfo: add hostinfo package, move stuff out of controlclient
5 years ago
Brad Fitzpatrick b461ba9554 control/controlclient: fix typo/braino in error message
5 years ago
Brad Fitzpatrick 333e9e75d4 tailcfg, control/controlclient: clarify more, enforce PingRequest.URL is unique
5 years ago
Denton Gentry 857bc4a752 hostinfo: capitalization of AWS
5 years ago
Denton Gentry 4b71291cdb hostinfo: detect when running in Azure App Service.
5 years ago
Denton Gentry 3ab587abe7 hostinfo: detect Heroku Dyno.
5 years ago
Denton Gentry 3c1a73d370 hostinfo: detect AWS Lambda as a container.
5 years ago
Simeng He f0121468f4 control/controlclient: add Pinger interface, Options.Pinger
5 years ago
Brad Fitzpatrick e29cec759a ipn/{ipnlocal,localapi}, control/controlclient: add SetDNS localapi
5 years ago
Avery Pennarun 8a7d35594d ipnlocal: don't assume NeedsLogin immediately after StartLogout().
5 years ago
Adrian Dewhurst 6d6cf88d82 control/controlclient: use our fork of certstore
5 years ago
Josh Bleecher Snyder 25df067dd0 all: adapt to opaque netaddr types
5 years ago
Avery Pennarun 6307a9285d controlclient: update Persist.LoginName when it changes.
5 years ago
Avery Pennarun 0181a4d0ac ipnlocal: don't pause the controlclient until we get at least one netmap.
5 years ago
Avery Pennarun b4d04a065f controlclient: extract a Client interface and rename Client->Auto.
5 years ago
Avery Pennarun cc3119e27e controlclient: extract State and Status stuff into its own file.
5 years ago
Brad Fitzpatrick 3411bb959a control/controlclient: fix signRegisterRequest log suppression check on Windows
5 years ago
Brad Fitzpatrick 6f52fa02a3 control/controlclient, tailcfg: add Debug.SleepSeconds (mapver 19)
5 years ago
Brad Fitzpatrick 09891b9868 ipn/ipnlocal: on fresh lazy-connecting install, start in state NeedsLogin
5 years ago
Brad Fitzpatrick e9d24341e0 tailcfg, control/controlclient: accept nil MapResponse.Node (mapver 18)
5 years ago
Brad Fitzpatrick 3739cf22b0 tailcfg, control/controlclient: allow empty MapResponse.Domain (mapver17)
5 years ago
Brad Fitzpatrick 5092cffd1f control/controlclient: add start of some MapResponse->NetworkMap tests
5 years ago
Brad Fitzpatrick aef3c0350c control/controlclient: break direct.go into map.go (+tests), add mapSession
5 years ago
Brad Fitzpatrick b993d9802a ipn/ipnlocal, etc: require file sharing capability to send/recv files
5 years ago
Brad Fitzpatrick 670838c45f tailcfg, control/controlclient: (mapver 16) add Node.Online, MapResponse.OnlineChange
5 years ago
David Anderson 7055f870f8 control/controlclient: only use a single DNS label as the hostname.
5 years ago
Brad Fitzpatrick 34d2f5a3d9 tailcfg: add Endpoint, EndpointType, MapRequest.EndpointType
5 years ago
Brad Fitzpatrick ccb322db04 tailcfg, control/controlclient: make nil MapResponse.DNSConfig mean unchanged (mapver15)
5 years ago
Simon Kirillov a64b57e2fb control/controlclient: create tls client config with server hostname instead of serverURL.Host
5 years ago
Brad Fitzpatrick 3167e55ddf ipn/{ipnlocal,localapi}, cmd/tailscale: add logout command
5 years ago
Brad Fitzpatrick 597c19ff4e control/controlclient: refactor some internals
5 years ago
Adrian Dewhurst 3f456ba2e7 control/controlclient: return correct certificate
5 years ago
Denton Gentry 224e60cef2 hostifo: update LXC, add Cloud Run.
5 years ago
Brad Fitzpatrick 1bd14a072c cmd/tailscale, ipn/localapi: move IP forwarding check to tailscaled, API
5 years ago
Brad Fitzpatrick a998fe7c3d control/controlclient: support lazy machine key generation
5 years ago
Brad Fitzpatrick ddaacf0a57 control/controlclient: document a few things
5 years ago
Brad Fitzpatrick 12ae2d73b3 control/controlclient: fix TS_DEBUG_MAP on requests
5 years ago
Adrian Dewhurst 04dd6d1dae
control/controlclient: sign RegisterRequest (#1549)
5 years ago
Brad Fitzpatrick 0a02aaf813 control, ipn, tailcfg: remove golang.org/x/oauth2 dep, add tailcfg.Oauth2Token
5 years ago
Brad Fitzpatrick cc508be603 control/controlclient: remove redundant Hostinfo log
5 years ago
Brad Fitzpatrick 9eb65601ef health, ipn/ipnlocal: track, log overall health
5 years ago
Brad Fitzpatrick 6fbc9b3a98 control/controlclient: cache Windows version
5 years ago
Brad Fitzpatrick 1d7f9d5b4a Revert "control/controlclient: use API to get Windows version number"
5 years ago
Brad Fitzpatrick 232cfda280 wgengine/router: report to control when setPrivateNetwork fails
5 years ago
Brad Fitzpatrick ba8c6d0775 health, controlclient, ipn, magicsock: tell health package state of things
5 years ago
Aleksandar Pesic 4224b3f731 control/controlclient: use API to get Windows version number
5 years ago
David Anderson 1bc3c03562 control/controlclient: allow for an unset linkMon.
5 years ago
David Anderson 0b66cfe1e0 control/controlclient: report broken IP forwarding more precisely.
5 years ago
Brad Fitzpatrick f45a9e291b tailcfg, control/controlclient: add MapResponse.PingRequest
5 years ago
Brad Fitzpatrick affd859121 ipn/ipnlocal, control/controlclient: propagate link monitor to controlclient
5 years ago
Brad Fitzpatrick 92cdb30b26 tailcfg, control/controlclient: add goroutine dump debug feature
5 years ago
Brad Fitzpatrick 9df4185c94 control/controlclient, net/{dnscache,dnsfallback}: add DNS fallback mechanism
5 years ago
Brad Fitzpatrick fd8e070d01 health, control/controlclient, wgengine: report when router unhealthy
5 years ago
Brad Fitzpatrick 4ec01323c1 control/controlclient: note package type in Hostinfo
5 years ago
Brad Fitzpatrick 1e7a35b225 types/netmap: split controlclient.NetworkMap off into its own leaf package
5 years ago
Brad Fitzpatrick ddfcc4326c types/persist: split controlclient.Persist into a small leaf package
5 years ago
Brad Fitzpatrick 6064b6ff47 wgengine/wgcfg/nmcfg: split control/controlclient/netmap.go into own package
5 years ago
David Anderson b9c2231fdf ipn: program exit node into the data plane according to user pref.
5 years ago
Brad Fitzpatrick e8d4afedd1 control/controlclient: don't call lite endpoint update path when logged out
5 years ago
Brad Fitzpatrick 7529b74018 control/controlclient: avoid crash sending map request with zero node key
5 years ago
Josh Bleecher Snyder fe7c3e9c17 all: move wgcfg from wireguard-go
5 years ago
Sonia Appasamy 4dab0c1702
tailcfg: update node display name fields and methods (#1207)
5 years ago
Sonia Appasamy 567c5a6d9e
tailcfg, controlclient: add DisplayName field to tailcfg.Node and populate it from controlclient (#1191)
5 years ago
Brad Fitzpatrick fa3543d629 control/controlclient: use more direct way of getting the MagicDNS suffix
5 years ago
Brad Fitzpatrick a905ce5607 control/controlclient: add debug knob to not use control's endpoints
5 years ago
Brad Fitzpatrick b5628cee4e control/controlclient: add detail to verbose log about route skips
5 years ago
Brad Fitzpatrick ec77b80c53 tailcfg, control/controlclient: add mapver 10: MapResponse.PeerSeenChange
5 years ago
Josh Bleecher Snyder 654b5f1570 all: convert from []wgcfg.Endpoint to string
5 years ago
Brad Fitzpatrick c1dabd9436 control/controlclient: let clients opt in to Sharer-vs-User split model
5 years ago
Brad Fitzpatrick b987b2ab18 control/controlclient: treat node sharer as owner for display purposes
5 years ago
Brad Fitzpatrick 9d73f84a71 tailcfg, control/controlclient: make MapResponse.CollectServices an opt.Bool
5 years ago
Sonia Appasamy 024671406b
ipn: only send services in Hostinfo if Tailnet has opted-in to services collection (#1107)
5 years ago
Brad Fitzpatrick 5efb0a8bca cmd/tailscale: change formatting of "tailscale status"
5 years ago
Denton Gentry 02c34881b5 Add more tests for Direct.
5 years ago
Denton Gentry b716c76df9 cover one more case in TestStatusEqual.
5 years ago
Brad Fitzpatrick 2f04f49376 control/controlclient: use lite map request handler to avoid aborting streams
5 years ago
Brad Fitzpatrick e8ae355bb8
ipn: delete domainsForProxying, require explicit DNS search domains (mapver 9) (#1078)
5 years ago
Josh Bleecher Snyder 56a7652dc9 wgkey: new package
5 years ago
Josh Bleecher Snyder 2fe770ed72 all: replace wgcfg.IP and wgcfg.CIDR with netaddr types
5 years ago
Brad Fitzpatrick ef15096a7d control/controlclient, version/distro: detect NixOS explicitly
5 years ago
Brad Fitzpatrick 053a1d1340 all: annotate log verbosity levels on most egregiously spammy log prints
5 years ago
Brad Fitzpatrick c348fb554f control/controlclient: clarify a comment
5 years ago
David Anderson ca676ea645 tailcfg: introduce map version 8, for clients that support v6 node config.
5 years ago
David Anderson 89be4037bb control/controlclient: report broken routing for v4 and v6.
5 years ago
Brad Fitzpatrick afcf134812 wgengine/filter, tailcfg: support CIDRs+ranges in PacketFilter (mapver 7)
5 years ago
Christine Dodrill 2485faf69a
Merge branch 'main' into report-status-systemd
5 years ago
Christine Dodrill 7ea809897d ipn/ipnserver: enable systemd-notify support
5 years ago
Brad Fitzpatrick a0a8b9d76a control/controlclient: don't spin when starting up when node key is expired
5 years ago
Brad Fitzpatrick b3c7b631c2 tailcfg, control/controlclient: make nil PacketFilter mean unchanged (mapver 6)
6 years ago
Brad Fitzpatrick fac2b30eff control/controlclient: diagnose zero bytes from control
6 years ago
Brad Fitzpatrick a2d78b4d3e net/dnscache, control/controlclient: use DNS cache when dialing control
6 years ago
David Anderson 76d99cf01a wgengine/filter: remove the Matches type.
6 years ago
Brad Fitzpatrick 782e07c0ae control/controlclient: send warning flag in map request when IP forwarding off
6 years ago
Brad Fitzpatrick 4f4e84236a ipn: clean up Prefs logging at start
6 years ago
David Anderson 54e6c3a290 version: use OSS repo's version when building.
6 years ago
Brad Fitzpatrick a3f17b8108 control/controlclient: also log active account in netmaps
6 years ago
Brad Fitzpatrick 5b1d03f016 control/controlclient: remove prior temporary macos debugging
6 years ago
Brad Fitzpatrick c44e244276 control/controlclient: add some temporary debugging for #839
6 years ago
Brad Fitzpatrick 9957c45995 tailcfg: bump, document MapRequest.Version value
6 years ago
Brad Fitzpatrick 3909c82f3d control/controlclient: rename map debug knob, make it do both request+response
6 years ago
David Anderson 62d941dc26 tailcfg: add a DebugFlags field for experiments and debugging.
6 years ago
Brad Fitzpatrick 22024a38c3 control/controlclient: log Hostinfo on change
6 years ago
David Anderson c6dbd24f67 tailcfg: add a field to advertise support for IPv6 tailscale config.
6 years ago
Brad Fitzpatrick a6c34bdc28 control/controlclient: also include our own profile (for when no self-owned peers)
6 years ago
Brad Fitzpatrick 0e3048d8e0 control/controlclient: support delta userprofiles from control
6 years ago
Brad Fitzpatrick 82f2fdc194 control/controlclient: adjust some logging point names
6 years ago
Brad Fitzpatrick 1819f6f8c8 control/controlclient: set MapRequest.ReadOnly on initial empty endpoint request
6 years ago
Avery Pennarun 6332bc5e08 controlclient: print http errors if result code != 200.
6 years ago
David Crawshaw 15297a3a09 control/controlclient: some extra debug info in errors
6 years ago
Brad Fitzpatrick b5a3850d29 control/controlclient, ipn: store machine key separately from user prefs/persist
6 years ago
Josh Bleecher Snyder efb08e4fee all: use IsZero methods
6 years ago
Brad Fitzpatrick c8f257df00 Revert "all: keep UserProfiles a slice instead of a map for longer"
6 years ago
Josh Bleecher Snyder 1fecf87363 control/controlclient: use wgcfg.PrivateKey.IsZero
6 years ago
Josh Bleecher Snyder e5894aba42 all: keep UserProfiles a slice instead of a map for longer
6 years ago
Josh Bleecher Snyder 4d4ca2e496 control/controlclient: remove Roles fields from client
6 years ago
Brad Fitzpatrick 5d8b88be88 control/controlclient, version/distro, wgengine: recognize OpenWrt
6 years ago
Brad Fitzpatrick 904a91038a tailcfg: add MapRequest.ReadOnly and OmitPeers; remove DebugForceDisco
6 years ago
Brad Fitzpatrick 761fe19e5f control/controlclient: don't accept /32 routes without --accept-routes
6 years ago
Brad Fitzpatrick 88107b1287 control/controlclient: add TS_DEBUG_MAPRESPONSE to dump all MapResponses
6 years ago
Brad Fitzpatrick 931bcd44cb control/controlclient: report Synology "distro" + its version to control
6 years ago
David Anderson 8f5b52e571 net/netns: add windows support.
6 years ago
Brad Fitzpatrick 662c19551a control/controlclient: deal with localized 'Version' string getting Windows version
6 years ago
Brad Fitzpatrick 28f9cd06f5 tshttpproxy, controlclient, derphttp, logpolicy: send Negotiate auth to proxies
6 years ago
Brad Fitzpatrick 9337a99dff tailcfg, wgengine, controlclient: add control-side gating of lazy WG config
6 years ago
chungdaniel 4d56d19b46
control/controlclient, wgengine/filter: extract parsePacketFilter to … (#696)
6 years ago
Brad Fitzpatrick c5eb57f4d6 net/tshttpproxy: new package, support WPAD/PAC proxies on Windows
6 years ago
Brad Fitzpatrick f6dc47efe4 tailcfg, controlclient, magicsock: add control feature flag to enable DRPO
6 years ago
Brad Fitzpatrick 337c86b89d control/controlclient: don't crash on invalid filter CIDR from server
6 years ago
Brad Fitzpatrick a275b9d7aa control/controlclient: use less battery when stopped, stop map requests
6 years ago
Brad Fitzpatrick dd97111d06 backoff: update to Go style, document a bit, make 30s explicit
6 years ago
Brad Fitzpatrick 696020227c tailcfg, control/controlclient: support delta-encoded netmaps
6 years ago
Brad Fitzpatrick 5590daa97d control/controlclient: reset timeout timer on non-keepalive map updates
6 years ago
Brad Fitzpatrick 41c4560592 control/controlclient: remove unused NetworkMap.UAPI method
6 years ago
Brad Fitzpatrick 6298018704 control/controlclient: print disco keys NetworkMap diffs (debug change only)
6 years ago
Dmytro Shynkevych 28e52a0492
all: dns refactor, add Proxied and PerDomain flags from control (#615)
6 years ago
Dmytro Shynkevych c7582dc234
ipn: fix netmap change tracking and dns map generation (#609)
6 years ago
Brad Fitzpatrick 91d95dafd2 control/controlclient: remove an 'unexpected' log that no longer is
6 years ago
Brad Fitzpatrick b77d752623 control/controlclient: populate OSVersion on Windows
6 years ago
Brad Fitzpatrick cd21ba0a71 tailcfg, control/controlclient: add GoArch, populate OSVersion on Linux
6 years ago
Brad Fitzpatrick be3ca5cbfd control/controlclient: remove unused, slow, often-not-what-you-want NetworkMap.Equal
6 years ago
Brad Fitzpatrick 05a79d79ae control/controlclient: rewrite, test NetworkMap.ConciseDiffFrom
6 years ago
Brad Fitzpatrick 3b0514ef6d control/controlclient: rename uflags, give it a type, remove dead code
6 years ago
Brad Fitzpatrick 32ecdea157 control/controlclient: generate wireguard config w/o WgQuick text indirection
6 years ago
Dmytro Shynkevych d361511512
control/controlclient: eliminate race in loginGoal access.
6 years ago
Brad Fitzpatrick 96994ec431 control/controlclient: fix a couple more data races
6 years ago
Brad Fitzpatrick a8b95571fb ipn, control/controlclient: fix some data races
6 years ago
Brad Fitzpatrick c9089c82e8 control/controlclient, tailcfg: turn active route discovery on by default
6 years ago
Brad Fitzpatrick 57e8931160 control/controlclient: fix copy/paste-o in debug knob accessor
6 years ago
Brad Fitzpatrick 6233fd7ac3 control/controlclient: don't truncate AuthURL in log
6 years ago
Brad Fitzpatrick a975e86bb8 wgengine/magicsock: add new endpoint type used for discovery-supporting peers
6 years ago
Brad Fitzpatrick 72bfea2ece control/controlclient: remove IPv6 opt-out environment variable
6 years ago
Brad Fitzpatrick b8edb7a5e9 control/controlclient: add Debug field to NetworkMap
6 years ago
Brad Fitzpatrick 36e9cb948f control/controlclient: cut down some NetworkMap stringification & diff allocations
6 years ago