You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/net
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
11 months ago
..
art net/art: allow non-pointers as values 1 year ago
connstats net/connstats: exclude traffic with internal Tailscale service (#7904) 2 years ago
dns net/dns: use an additional registry setting to disable dynamic DNS updates for our interface on Windows 12 months ago
dnscache net/dnscache: remove completed TODO 1 year ago
dnsfallback net/dnsfallback: add singleflight to recursive resolver 1 year ago
flowtrack all: update copyright and license headers 2 years ago
interfaces net/interfaces: ensure we return valid 'self' IP in LikelyHomeRouterIP 12 months ago
memnet net/memnet: export the network name (#9111) 1 year ago
netaddr all: update copyright and license headers 2 years ago
netcheck net/netcheck: use DERP frames as a signal for home region liveness 11 months ago
neterror net/neterror, wgengine/magicsock: use UDP GSO and GRO on Linux (#7791) 2 years ago
netkernelconf client/tailscale,ipn/{ipnlocal,localapi}: check UDP GRO config (#10071) 1 year ago
netknob all: update copyright and license headers 2 years ago
netmon net/netmon: log when the gateway/self IP changes 1 year ago
netns net/{interfaces,netmon}: remove "interesting", EqualFiltered API 1 year ago
netstat net/{netns,netstat}: use new x/sys/cpu.IsBigEndian 2 years ago
netutil cmd/tailscale: refactor shared utility methods 1 year ago
packet net/packet: split off checksum munging into different pkg 1 year ago
ping net/ping: fix ICMP echo code field to 0 1 year ago
portmapper net/portmapper: be smarter about selecting a UPnP device 11 months ago
proxymux all: update copyright and license headers 2 years ago
routetable net/routetable: include unknown flags in the routetable doctor output 2 years ago
socks5 net/socks5: add password auth support 2 years ago
sockstats net/dns: retry forwarder requests over TCP 1 year ago
speedtest all: update copyright and license headers 2 years ago
stun wgengine/magicsock, types/nettype, etc: finish ReadFromUDPAddrPort netip migration 2 years ago
tcpinfo net/tcpinfo: add package to allow fetching TCP information 1 year ago
tlsdial cmd/tailscale/cli: make netcheck run even if machine lacks TLS certs 1 year ago
tsaddr types/netmap: remove NetworkMap.{Addresses,MachineStatus} 1 year ago
tsdial types/netmap: remove NetworkMap.{Addresses,MachineStatus} 1 year ago
tshttpproxy net/tshttpproxy: don't proxy through ourselves 2 years ago
tstun cmd/tailscaled,net/tstun: fix data race on start-up in TUN mode 1 year ago
wsconn net/wsconn: accept a remote addr string and plumb it through 1 year ago