ipn/ipnlocal: be authoritative for the entire MagicDNS record tree.

With this change, shared node names resolve correctly on split DNS-supporting
operating systems.

Fixes tailscale/corp#1706

Signed-off-by: David Anderson <danderson@tailscale.com>
This commit is contained in:
David Anderson 2021-04-29 15:56:42 -07:00 committed by Dave Anderson
parent f342d10dc5
commit 1d7e7b49eb

View File

@ -1881,6 +1881,12 @@ func magicDNSRootDomains(nm *netmap.NetworkMap) []dnsname.FQDN {
// TODO: propagate error
return nil
}
if strings.HasSuffix(fqdn.WithoutTrailingDot(), ".beta.tailscale.net") {
// When using our standard MagicDNS suffix, make ourselves
// authoritative for all of tailscale.net, so that we
// become the resolver for shared nodes as well.
fqdn = dnsname.FQDN("tailscale.net.")
}
ret := []dnsname.FQDN{
fqdn,
dnsname.FQDN("0.e.1.a.c.5.1.1.a.7.d.f.ip6.arpa."),