tailscale/control/controlclient
Brad Fitzpatrick 75a03fc719 wgengine/magicsock: use learned DERP route as send path of last resort
If we get a packet in over some DERP and don't otherwise know how to
reply (no known DERP home or UDP endpoint), this makes us use the
DERP connection on which we received the packet to reply. This will
almost always be our own home DERP region.

This is particularly useful for large one-way nodes (such as
hello.ts.net) that don't actively reach out to other nodes, so don't
need to be told the DERP home of peers. They can instead learn the
DERP home upon getting the first connection.

This can also help nodes from a slow or misbehaving control plane.

Updates tailscale/corp#26438

Change-Id: I6241ec92828bf45982e0eb83ad5c7404df5968bc
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2025-03-07 05:37:24 -08:00
..
auto.go control/controlclient: flesh out a recently added comment 2025-01-30 08:48:52 +00:00
client.go control/controlclient: delete unused Client.Login Oauth2Token field 2024-05-17 19:51:18 -07:00
controlclient_test.go control/controlclient: skip SetControlClientStatus when queue has newer results later 2025-01-24 16:16:22 -08:00
direct_test.go tka: test SigCredential signatures and netmap filtering 2024-06-27 19:28:57 +01:00
direct.go wgengine/magicsock: use learned DERP route as send path of last resort 2025-03-07 05:37:24 -08:00
map_test.go tailcfg,control/controlclient: treat nil AllowedIPs as Addresses [capver 112] 2025-01-15 07:28:25 -08:00
map.go wgengine/magicsock: use learned DERP route as send path of last resort 2025-03-07 05:37:24 -08:00
noise_test.go controlclient: do not set HTTPS port for any private coordination server IP (#14564) 2025-01-07 10:24:32 -08:00
noise.go controlclient: do not set HTTPS port for any private coordination server IP (#14564) 2025-01-07 10:24:32 -08:00
sign_supported_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
sign_supported.go control/controlclient: use the most recent syspolicy.MachineCertificateSubject value 2024-11-22 14:50:32 -06:00
sign_unsupported.go control/controlclient: support certstore without cgo 2023-10-20 15:17:32 -04:00
sign.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
status.go all: implement AppendText alongside MarshalText (#9207) 2023-09-01 18:15:19 -07:00