tailscale/wgengine
Andrew Dunham 727acf96a6 net/netcheck: use DERP frames as a signal for home region liveness
This uses the fact that we've received a frame from a given DERP region
within a certain time as a signal that the region is stil present (and
thus can still be a node's PreferredDERP / home region) even if we don't
get a STUN response from that region during a netcheck.

This should help avoid DERP flaps that occur due to losing STUN probes
while still having a valid and active TCP connection to the DERP server.

RELNOTE=Reduce home DERP flapping when there's still an active connection

Updates #8603

Signed-off-by: Andrew Dunham <andrew@du.nham.ca>
Change-Id: If7da6312581e1d434d5c0811697319c621e187a0
2023-12-13 16:33:46 -05:00
..
bench tailcfg, all: use []netip.AddrPort instead of []string for Endpoints 2023-10-01 18:23:02 -07:00
capture various: add golangci-lint, fix issues (#7905) 2023-04-17 18:38:24 -04:00
filter wgengine/filter: add protocol-agnostic packet checker (#10446) 2023-12-02 16:30:33 -06:00
magicsock net/netcheck: use DERP frames as a signal for home region liveness 2023-12-13 16:33:46 -05:00
netlog wgengine/netlog: fix nil pointer dereference in logtail (#8598) 2023-07-13 08:54:29 -07:00
netstack wgengine/netstack: disable RACK on Windows (#10402) 2023-11-28 12:12:32 -08:00
router wgengine/router: implement UpdateMagicsockPort for CallbackRouter (#10494) 2023-12-07 10:45:14 -05:00
wgcfg cmd/cloner,*: revert: optimize nillable slice cloner 2023-09-29 18:18:18 -07:00
wgint all: update copyright and license headers 2023-01-27 15:36:29 -08:00
wglog all: update copyright and license headers 2023-01-27 15:36:29 -08:00
winnet all: update copyright and license headers 2023-01-27 15:36:29 -08:00
mem_ios.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
pendopen.go types/netmap, all: use read-only tailcfg.NodeView in NetworkMap 2023-08-18 20:04:35 -07:00
userspace_ext_test.go tsd: add package with System type to unify subsystem init, discovery 2023-05-04 14:21:59 -07:00
userspace_test.go control,tailcfg,wgengine/magicsock: add nodeAttr to enable/disable peer MTU 2023-09-21 04:17:12 -07:00
userspace.go util/linuxfw, wgengine: allow ingress to magicsock UDP port on Linux (#10370) 2023-12-05 18:12:02 -05:00
watchdog_js.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
watchdog_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
watchdog.go wgengine, proxymap: split out port mapping from Engine to new type 2023-09-17 20:06:43 +01:00
wgengine.go wgengine, proxymap: split out port mapping from Engine to new type 2023-09-17 20:06:43 +01:00