tailscale/net/dns
Mihai Parparita 7330aa593e all: avoid repeated default interface lookups
On some platforms (notably macOS and iOS) we look up the default
interface to bind outgoing connections to. This is both duplicated
work and results in logspam when the default interface is not available
(i.e. when a phone has no connectivity, we log an error and thus cause
more things that we will try to upload and fail).

Fixed by passing around a netmon.Monitor to more places, so that we can
use its cached interface state.

Fixes #7850
Updates #7621

Signed-off-by: Mihai Parparita <mihai@tailscale.com>
2023-04-20 15:46:01 -07:00
..
publicdns all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 2023-02-01 15:23:54 -08:00
resolvconffile all: update to Go 1.20, use strings.CutPrefix/Suffix instead of our fork 2023-02-01 15:23:54 -08:00
resolver all: avoid repeated default interface lookups 2023-04-20 15:46:01 -07:00
config.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
debian_resolvconf.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
direct_linux.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
direct_notlinux.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
direct_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
direct.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
flush_default.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
flush_windows.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ini_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ini.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_darwin.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_default.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_freebsd.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_linux_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_linux.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_openbsd.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_tcp_test.go various: add golangci-lint, fix issues (#7905) 2023-04-17 18:38:24 -04:00
manager_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
manager_windows_test.go various: add golangci-lint, fix issues (#7905) 2023-04-17 18:38:24 -04:00
manager_windows.go net/dns: deal with Windows wsl.exe hangs 2023-03-06 16:08:13 -07:00
manager.go all: avoid repeated default interface lookups 2023-04-20 15:46:01 -07:00
nm.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
noop.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
nrpt_windows.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
openresolv.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
osconfig_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
osconfig.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
resolvconf-workaround.sh all: update copyright and license headers 2023-01-27 15:36:29 -08:00
resolvconf.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
resolvd.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
resolved.go net/dns: don't send on closed channel in resolvedManager 2023-03-24 15:34:54 -04:00
utf_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
utf.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
wsl_windows.go net/dns: deal with Windows wsl.exe hangs 2023-03-06 16:08:13 -07:00