Windows上的名字解析(3)
查询DNS服务器
如果Windows在DNS客户端缓存和hosts文件里找不到要查询的主机名字,会查询DNS服务器。这时,Windows会根据需要查询的主机名字来决定如何提交查询问题到DNS服务器。
主机名字有三种类型。第一类主机名字含有多个部分,以点分割,而且以点结尾,例如www.contoso.com.,我们也把这种名字称为FQDN(Fully Qualified Domain Name)。所有提交到DNS服务器去查询的名字都必须是FQDN。如果一个用户直接访问一个FQDN名字,Windows直接用这个名字去查询DNS服务器。
第二类主机名字只有一个部分,不含有点,例如sh-fileserver。第三类主机名字含有多个部分,以点分割,但是不以点结尾,例如www.contoso.com。对于后两类主机名字,Windows会修改主机名字,然后再提交到DNS服务器去查询。这是不是有些超出大家的预料,我们来讲讲Windows为什么要这么做。假设您上海分公司的Windows域名是shanghai.contoso.com,您的计算机名是seal,它的全名是seal.shanghai.contoso.com,下面是在您的计算机上运行ipconfig /all命令的结果的一部分,注意DNS后缀搜索列表(DNS Suffix Search List)之后列出的两个名字shanghai.contoso.com和contoso.com。
Windows IP Configuration
Host Name . . . . . . . . . . . . : seal
Primary Dns Suffix . . . . . . . : shanghai.contoso.com
Node Type . . . . . . . . . . . . : Mixed
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
DNS Suffix Search List. . . . . . : shanghai.contoso.com
contoso.com
假设北京总部的Windows域名是contoso.com,您要访问北京总部的一台文件服务器bj-fileserver,它的全名是bj-fileserver.contoso.com。您打开文件管理器,直接输入\bj-fileserver。注意,您输入的只是服务器的计算机名,而不是用冗长的FQDN。Windows为了获得bj-fileserver的IP地址,会在bj-fileserver之后依次附加DNS后缀搜索列表中的名字来形成FQDN,并发送给DNS服务器,直到DNS服务器返回一个正确的结果。下面就是Windows依次发送给DNS服务器的FQDN:
bj-fileserver.shanghai.contoso.com.
bj-fileserver. contoso.com.
对于第一个查询,DNS服务器返回的结果是不知道,因为这个名字并不存在;对于第二个查询,DNS服务器返回bj-fileserver的IP地址,查询结束。
您可以在网卡的Internet协议TCP/IP属性-〉高级-〉DNS页面里修改DNS后缀搜索列表,如下图:
如果查询DNS服务器还是失败,那么主机名字解析就失败了。
NetBIOS名字解析
下面我们来讲讲NetBIOS名字解析。Windows解析NetBIOS名字时按照以下顺序的。

网友评论