Windows操作系统上的一些名字解析

互联网 | 编辑: 2007-05-28 00:30:00转载-投稿 一键看全文

当您打开计算机开始访问网络资源时,就涉及到一个问题:名字解析,名字解析就是把需要访问的计算机名字解析成 IP 地址的过程。

Windows名字解析(4)

动态查询 NetBIOS 名字

如果在 NetBIOS 名字缓存中不能找到想查询的 NetBIOS 名字, Windows 会根据计算机的节点类型来决定接下来如何查询。我们有必要来介绍一下节点类型。你在运行了命令 ipconfig /all 之后会看到节点类型( Node Type ):

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 如何从网络上去解析一个 NetBIOS 名字。共有如下四种节点类型:

B 节点( Broadcast ):只在本地网络发广播包来查询 NetBIOS 名字

P 节点( Point to Point ):只向 WINS 服务器查询 NetBIOS 名字

M 节点( Mixed ):首先尝试广播查询,如果查询失败,再向 WINS 服务器查询

H 节点( Hybrid ):首先向 WINS 服务器查询 NetBIOS 名字,如果查询失败,再广播查询

这里需要介绍一下 WINS 服务器,它的全称是 Windows Internet Name Service 。 WINS 服务器提供 NetBIOS 名字查询服务。如果您的计算机配置了 WINS 服务器,您的计算机就会在 WINS 服务器上注册它的 NetBIOS 名字和 IP 地址。其他计算机查询 WINS 服务器就可以知道您的计算机的 IP 地址了。您运行命令 nbtstat -n 可以看到您的计算机注册的 NetBIOS 名字 :

Local Area Connection:

Node IpAddress: [10.60.11.70] Scope Id: []

NetBIOS Local Name Table

Name Type Status

SEAL <00> UNIQUE Registered

CONTOSO <00> GROUP Registered

SEAL <20> UNIQUE Registered

查询 lmhosts 文件

如果查询 NetBIOS 名字缓存和通过网络做 NetBIOS 名字解析都失败, Windows 会读 lmhosts 文件来解析 NetBIOS 名字。我们已经知道 lmhosts 文件中有 #PRE 后缀的纪录会被装载到 NetBIOS 名字缓存中,现在 Windows 只会检查那些没有 #PRE 后缀的纪录。

如果前面三个步骤都解析失败,那么 NetBIOS 名字解析就失败了。

示例

在了解了两类名字解析之后,我们来看看在 Windows 上 ping 的过程是如何的。我们还是假设当前计算机的 DNS 后缀搜索列表为 shanghai.contoso.com 和 contoso.com ,节点类型是 M 节点,所有的缓存以及 lmhosts 和 hosts 文件都是空的。

如果 ping 上海的文件服务器 sh-fileserver ,它的全名是 sh-fileserver.shanghai.contoso.com ,会有以下过程:

查询 DNS 客户端缓存及 hosts 文件,查询失败

向 DNS 服务器查询 FQDN sh-fileserver.shanghai.contoso.com ,查询成功

返回 sh-fileserver 的 IP 地址

如果 ping 北京总部的文件服务器 bj-fileserver ,它的全名是 bj-fileserver. contoso.com ,会有以下过程:

查询 DNS 客户端缓存及 hosts 文件,查询失败

向 DNS 服务器查询 FQDN bj-fileserver.shanghai.contoso.com ,查询失败

向 DNS 服务器查询 FQDN bj-fileserver. contoso.com ,查询成功

返回 bj-fileserver 的 IP 地址

如果 ping 一个不存在的名字 fake-server ,会有如下过程:

查询 DNS 客户端缓存及 hosts 文件,查询失败

向 DNS 服务器查询 FQDN fake-server.shanghai.contoso.com. ,查询失败

向 DNS 服务器查询 FQDN fake-server. contoso.com. ,查询失败

查询 NetBIOS 名字缓存,查询失败

广播查询 NetBIOS 名字 fake-server <00> ,查询失败

向 WINS 服务器查询 NetBIOS 名字 fake-server <00> ,查询失败

查询 lmhosts 文件,查询失败

最终名字解析失败

提示:试试键盘 “← →” 可以实现快速翻页 

总共 4 页< 上一页1234
一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑