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