tailscale/net/dns
Tom acfe5bd33b
net/dns{., resolver}: time out DNS queries after 10 seconds (#4690)
Fixes https://github.com/tailscale/corp/issues/5198

The upstream forwarder will block indefinitely on `udpconn.ReadFrom` if no
reply is recieved, due to the lack of deadline on the connection object.

There still isn't a deadline on the connection object, but the automatic closing
of the context on deadline expiry will close the connection via `closeOnCtxDone`,
unblocking the read and resulting in a normal teardown.

Signed-off-by: Tom DNetto <tom@tailscale.com>
2022-05-18 10:40:04 -07:00
..
publicdns net/dns/publicdns: add missing call to sync.Once.Do (#4410) 2022-04-14 17:45:58 -04:00
resolvconffile all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
resolver net/dns{., resolver}: time out DNS queries after 10 seconds (#4690) 2022-05-18 10:40:04 -07:00
config.go tailcfg,all: change structs to []*dnstype.Resolver 2022-05-06 10:58:10 -07:00
debian_resolvconf.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
direct_test.go net/dns: require space after nameserver/search parsing resolv.conf 2021-11-23 15:11:46 -08:00
direct.go net/dns: ignore permission errors on Synology DSM7 for now 2022-02-23 10:13:53 -08:00
flush_default.go wgengine: flush DNS cache after major link change. 2021-09-19 22:58:53 -07:00
flush_windows.go wgengine: flush DNS cache after major link change. 2021-09-19 22:58:53 -07:00
ini_test.go all: gofmt -w -s (simplify) tests 2021-12-15 08:43:41 -08:00
ini.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
manager_darwin.go net/dns: add tailscaled-on-macOS DNS OSConfigurator 2022-04-23 20:43:41 -07:00
manager_default.go net/dns: add tailscaled-on-macOS DNS OSConfigurator 2022-04-23 20:43:41 -07:00
manager_freebsd.go net/dns: fall back to copy+delete/truncate if moving to/from /etc/resolv.conf fails. 2021-10-26 09:03:37 -07:00
manager_linux_test.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
manager_linux.go net/dns: add health check for particular broken-ish Linux DNS config 2022-02-16 10:40:04 -08:00
manager_openbsd.go net/dns: teach OpenBSD's manager to talk to resolvd(8). (#2789) 2022-01-11 08:45:50 -08:00
manager_tcp_test.go net/dns, wgengine: implement DNS over TCP (#4598) 2022-05-05 16:42:45 -07:00
manager_test.go tailcfg,all: change structs to []*dnstype.Resolver 2022-05-06 10:58:10 -07:00
manager_windows.go envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 2022-01-24 11:51:23 -08:00
manager.go net/dns{., resolver}: time out DNS queries after 10 seconds (#4690) 2022-05-18 10:40:04 -07:00
nm.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
noop.go net/dns: return error from NewOSManager, use it to initialize NM. 2021-04-12 15:51:37 -07:00
openresolv.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
osconfig.go net/dns: make debian_resolvconf correctly clear DNS configs. 2021-04-20 15:51:14 -07:00
registry_windows.go wgengine/router/dns: move to net/dns. 2021-03-25 16:25:30 -07:00
resolvconf-workaround.sh net/dns: also include 'tail' and 'base' files when fixing up resolv.conf. 2021-04-10 23:01:11 -07:00
resolvconf.go net/dns: exhaustively test DNS selection paths for linux. 2021-09-04 23:40:48 -07:00
resolvd.go net/dns/resolvconffile: unify three /etc/resolv.conf parsers into new package 2022-02-14 20:55:57 -08:00
resolved.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
utf_test.go net/dns: detect and decode UTF-16 from wsl.exe earlier. 2021-11-30 13:10:18 -08:00
utf.go net/dns: detect and decode UTF-16 from wsl.exe earlier. 2021-11-30 13:10:18 -08:00
wsl_windows.go net/dns: fix checking for wrapped error when attempting to read wsl.conf for Windows WSL2 2021-11-30 15:36:39 -07:00