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 01286af82b net/interfaces: better handle multiple interfaces in LikelyHomeRouterIP
Currently, we get the "likely home router" gateway IP and then iterate
through all IPs for all interfaces trying to match IPs to determine the
source IP. However, on many platforms we know what interface the gateway
is through, and thus we don't need to iterate through all interfaces
checking IPs. Instead, use the IP address of the associated interface.

This better handles the case where we have multiple interfaces on a
system all connected to the same gateway, and where the first interface
that we visit (as iterated by ForeachInterfaceAddress) isn't also the
default internet route.

Updates #8992

Signed-off-by: Andrew Dunham <andrew@du.nham.ca>
Change-Id: I8632f577f1136930f4ec60c76376527a19a47d1f
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: better handle multiple interfaces in LikelyHomeRouterIP 11 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 12 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 net/netutil: add function to check rp_filter value (#5703) 11 months 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: handle multiple UPnP discovery responses 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