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
Brad Fitzpatrick 39ffa16853 net/dnscache, net/tsdial: add DNS caching to tsdial UserDial
This is enough to handle the DNS queries as generated by Go's
net package (which our HTTP/SOCKS client uses), and the responses
generated by the ExitDNS DoH server.

This isn't yet suitable for putting on 100.100.100.100 where a number
of different DNS clients would hit it, as this doesn't yet do
EDNS0. It might work, but it's untested and likely incomplete.

Likewise, this doesn't handle anything about truncation, as the
exchanges are entirely in memory between Go or DoH. That would also
need to be handled later, if/when it's hooked up to 100.100.100.100.

Updates #3507

Change-Id: I1736b0ad31eea85ea853b310c52c5e6bf65c6e2a
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
3 years ago
..
dns net/tsdial: move more weirdo dialing into new tsdial package, plumb 3 years ago
dnscache net/dnscache, net/tsdial: add DNS caching to tsdial UserDial 3 years ago
dnsfallback net/netns: thread logf into control functions 3 years ago
flowtrack all: use testingutil.MinAllocsPerRun 3 years ago
interfaces wgengine/monitor: ignore adding/removing uninteresting IPs 3 years ago
netcheck net/netns: thread logf into control functions 3 years ago
netknob all: disable TCP keep-alives on iOS/Android 3 years ago
netns net/netns: thread logf into control functions 3 years ago
netstat all: gofmt with Go 1.17 3 years ago
nettest net/nettest: deflake TestPipeTimeout 3 years ago
packet net/packet: add ICMP6Header, like ICMP4Header 3 years ago
portmapper net/portmapper: deflake TestPCPIntegration 3 years ago
proxymux net/proxymux: add a listener mux that can run SOCKS and HTTP on a single socket. 3 years ago
socks5 net/tsdial: start of new package to unify all outbound dialing complexity 3 years ago
speedtest all: fix spelling mistakes 3 years ago
stun all: gofmt with Go 1.17 3 years ago
tlsdial net/tlsdial: add forgotten test file for go mod tidy 3 years ago
tsaddr ipn/ipnlocal: for IPv6-only nodes, publish IPv6 MagicDNS records of peers 3 years ago
tsdial net/dnscache, net/tsdial: add DNS caching to tsdial UserDial 3 years ago
tshttpproxy net/tshttpproxy: use correct size for Windows BOOL argument 3 years ago
tstun net/tstun: rate limit "self disco out packet" logging 3 years ago