tailscale/net/dns/resolver
Tom 24bdcbe5c7
net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364)
* net/dns, net/dns/resolver, wgengine: refactor DNS request path

Previously, method calls into the DNS manager/resolver types handled DNS
requests rather than DNS packets. This is fine for UDP as one packet
corresponds to one request or response, however will not suit an
implementation that supports DNS over TCP.

To support PRs implementing this in the future, wgengine delegates
all handling/construction of packets to the magic DNS endpoint, to
the DNS types themselves. Handling IP packets at this level enables
future support for both UDP and TCP.

Signed-off-by: Tom DNetto <tom@tailscale.com>
2022-04-08 12:17:31 -07:00
..
debug.go net/dns/resolver: add debug HTML handler to see what DNS traffic was forwarded 2021-12-21 14:32:36 -08:00
doh_test.go net/dns: replace resolver IPs with type for DoH 2021-09-07 14:44:26 -07:00
forwarder_test.go all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
forwarder.go all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
macios_ext.go all: simplify ts_macext build tags 2021-08-17 11:13:03 -07:00
tsdns_server_test.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
tsdns_test.go net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364) 2022-04-08 12:17:31 -07:00
tsdns.go net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364) 2022-04-08 12:17:31 -07:00