mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-25 19:15:34 +00:00
net/dnscache: do not PreferGo on macOS/iOS
With this commit my iPhone can now DERP.
This commit is contained in:
parent
5d8001d0ad
commit
cac68fe102
@ -10,15 +10,27 @@
|
||||
"context"
|
||||
"fmt"
|
||||
"net"
|
||||
"runtime"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"golang.org/x/sync/singleflight"
|
||||
)
|
||||
|
||||
var single = &Resolver{
|
||||
Forward: &net.Resolver{PreferGo: true},
|
||||
}
|
||||
var single = func() *Resolver {
|
||||
r := &Resolver{
|
||||
Forward: &net.Resolver{PreferGo: true},
|
||||
}
|
||||
|
||||
// There does not appear to be a local resolver running
|
||||
// on iOS, and NetworkExtension is good at isolating DNS.
|
||||
// So do not use the Go resolver on macOS/iOS.
|
||||
if runtime.GOOS == "darwin" {
|
||||
r.Forward.PreferGo = false
|
||||
}
|
||||
|
||||
return r
|
||||
}()
|
||||
|
||||
// Get returns a caching Resolver singleton.
|
||||
func Get() *Resolver { return single }
|
||||
|
Loading…
Reference in New Issue
Block a user