我配置了一台安装了 Windows 2012 R2 和 DNS 服务器角色的 Azure VM。我在同一个 VNet 中还有另一台 VM,我正在使用 nslookup 查询 DNS 服务器。
每次我在此 DNS 服务器上查询任何域名时,前两次尝试都会超时,然后成功解析。原因是它在查询后附加了一个较长的 cloudapp.net 域。
例如,我在 nslookup 上设置了 d2 选项并查询了 cnn.com:
> cnn.com Server: [10.51.5.4] Address: 10.51.5.4
------------ SendRequest(), len 77
HEADER:
opcode = QUERY, id = 19, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
cnn.com.g2dibntere1erjhcdrrozsaeod.bx.internal.cloudapp.net, type = A, class = IN
------------ DNS request timed out.
timeout was 2 seconds. timeout (2 secs) SendRequest failed
我怎样才能禁用此行为?
更新 我在 ipconfig 结果中找到了后缀域:
C:\Users\admin>ipconfig
Windows IP Configuration
Ethernet adapter Ethernet 3:
Connection-specific DNS Suffix . : g2dibntere1erjhcdrrozsaeod.bx.internal.cl
oudapp.net
Link-local IPv6 Address . . . . . : fe80::a90f:bb70:be04:ef2c%16
IPv4 Address. . . . . . . . . . . : 10.51.10.4
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 10.51.10.1
Tunnel adapter isatap.g2dibntere1erjhcdrrozsaeod.bx.internal.cloudapp.net:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : g2dibntere1erjhcdrrozsaeod.bx.internal.cl
oudapp.net
Tunnel adapter Teredo Tunneling Pseudo-Interface:
Connection-specific DNS Suffix . :
IPv6 Address. . . . . . . . . . . : 2001:0:5ef5:79fd:1c9f:fbe8:d78d:f134
Link-local IPv6 Address . . . . . : fe80::1c9f:fbe8:d78d:f134%14
Default Gateway . . . . . . . . . : ::
那么现在我该如何禁用这个特定于连接的后缀?
答案1
您看到的是正常行为。您的 nslookup 查询从技术上来说不是完全合格的查询,因为您省略了尾随点 (.)。如果您想看到差异,请运行相同的查询,但添加尾随点 (.),如下所示:
cnn.com。
这是您在使用 nslookup 发出非完全限定的查询时会看到的行为。由于您的 nslookup 查询非完全限定,因此将连接特定的 DNS 后缀附加到您的 nslookup 查询中。Nslookup 使用自己的 DNS 客户端解析器,但使用为计算机配置的 DNS 搜索后缀。Windows DNS 客户端解析器不会受到此行为的影响,因此您实际上不需要在 DNS 客户端设置中进行任何更改。您通过添加点 (.) 作为 DNS 后缀所做的操作不是适当的纠正措施,可能会导致操作系统和应用程序出现 DNS 名称解析问题。请阅读此处:
http://blogs.msmvps.com/acefekay/2013/02/17/nslookup-suffixing-behavior
答案2
答案3
您是否正在设置 vnet 以使用 DC 作为 DNS 服务器?这样您就可以找到 DC。
另外,您在进行域加入时是否指定了域的完整域名,并且您的域是否至少有两个标签?只要您的域名至少有两个标签长(例如 something.local),那么在域加入或任何常规 DNS 查找期间都不应附加后缀。如前所述,nslookup 有自己的逻辑。
我们正在进行一项更改,当您使用自己的 DNS 服务器时不提供 Azure 内部后缀,但只要您的域名有两个标签,现在就应该忽略后缀。
加雷斯。