我发现查询本地域 foo.local 中的主机时,某些名称服务器(例如结解析器)会返回一个权限部分,其中包含以下内容
foo.local. 10800 IN SOA foo.local. nobody.invalid. 1 3600 1200 604800 10800
其他公司(例如谷歌)返回的内容如下
. 86389 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2021111002 1800 900 604800 86400
正确的答案是什么?这个问题很重要,因为在第一种情况下,进一步缓存名称服务器似乎很乐意将授权部分转换为 soa 记录(systemd-resolved 就是这样做的),如下所示
host -t foo.local
foo.local has SOA record foo.local. nobody.invalid. 1 3600 1200 604800 10800
这看上去不对,并且会让 nss-mdns 误以为 .local 是用作 DNS 管理域而不是 mDNS。