WINS基本工作原理

以下内容摘自《网管员必读――网络组建》(第2版)一书。

   WINS服务是微公司的一项支持跨网络的名称解析服务(DNS不支持跨网络),在Windows Server 2003服务中,它的功能得到了全面的加强,使得它在企业网络中的应用更加广泛,特别是较大型的网络。

    许多网友一直对是否需要WINS服务,或者说安装WINS服务的必要性心存疑虑。尽管在《网管员必读――网络组建》(第2版)第9章9.1.1节对此进行详细分析,但在此还可以通过以下后介绍的WINS服务基本工作原理(包括与NetBIOS名称解析进行对比)可以看出WINS事实并不是可有可无的,特别是大型多子网环境中。全面的WINS服务名称解析原理参见本书的9.4节。

9.1.3  WINS服务基本工作原理

通常, Windows 操作系统支持以下两种主要的网络名称解析方法。
l           主机名称解析: 这是 Windows 基于套接字的名称解析方式,它执行 gethostbyname () API 函数以搜索主机 IP 地址,该地址是建立在已查询的主机名称基础上的。该方法依赖于 Hosts 文件或查询 DNS 以执行名称解析功能。
l           NetBIOS 名称解析: 该名称解析使用 NetBIOS 重定向程序来搜索基于查询的 NetBIOS 名称的地址。该方法依赖于 Lmhosts 文件,或查询 WINS 执行名称解析。
   在默认情况下,运行 Windows 2000/XP/Server 2003 操作系统的 WINS 客户端被配置为先使用 DNS 解析长度超过 15 个字符或包含句点( . )的名称。对于少于 15 个字符,并且不包含句点的名称,如果将客户端配置为使用 DNS 服务器,则也可以在 WINS 查询失败之后再次将 DNS 用做最终选项。默认情况下,当用 WINS 服务器地址配置(手动或通过 DHCP )运行 Windows 2000/XP/Server 2003 操作系统的计算机的名称解析时,除非配置了其他 NetBIOS 节点类型,否则计算机将使用混合节点( h- 节点)作为 NetBIOS 名称注册的节点类型。对于 NetBIOS 名称查询和解析,也使用 h- 节点行为,但有少许差异。
说明
NetBIOS 节点类型有 4 种: b- 节点(广播)、 p- 节点(端对端)、 m- 节点(混合)和 h- 节点(混合)。 b- 节点使用广播 NetBIOS 名称来注册和解析名称。 b- 节点有两个主要问题:( 1 )广播将干扰网络上的每个节点;( 2 )路由器通常不转发广播,所以只能解析本地网络上的 NetBIOS 名称。 p- 节点使用 NetBIOS 名称服务器( NBNS ),如 WINS 服务器来解析 NetBIOS 名称。 p- 节点不使用广播,而是直接查询名称服务器。 m- 节点是 b- 节点和 p- 节点的组合。
在默认情况下, m- 节点作为 b- 节点使用。如果 m- 节点无法通过广播解析名称,则使用 p- 节点查询 NBNS 服务器。 h- 节点是 p- 节点和 b- 节点的组合。在默认情况下, h- 节点作为 p- 节点使用。如果 h- 节点无法通过 NBNS 解析名称,则使用广播解析名称。
    对于 NetBIOS 名称解析, WINS 客户端通常采用以下步骤进行解析名称。
1 )客户端检查查询的名称是否是它所拥有的本地 NetBIOS 计算机名称。
    ( 2 )客户端检查远程名称的本地 NetBIOS 名称缓存(远程客户端的解析名称放置在该缓存中,并将保留 10 分钟)。
    ( 3 )客户将 NetBIOS 查询转发到已配置的主 WINS 服务器中。如果主 WINS 服务器应答查询失败(因为该主 WINS 服务器不可用,或因为它没有名称项),则客户将按照列出和配置使用的顺序尝试与其他已配置的 WINS 服务器联系。
4 )客户端将 NetBIOS 查询广播到本地子网。
5 )如果配置客户端已使用 Lmhosts 文件,则客户将检查与查询匹配的 Lmhosts 文件。
6 )如果将其配置成单个客户端,则客户会尝试 Hosts 文件然后尝试 DNS 服务器。
       WINS 客户的名称解析是所有 Microsoft TCP/IP 上的 NetBIOS NetBT )客户端用来解析网络上的 NetBIOS 名称查询的相同名称解析过程扩展。实际的名称解析方法对用户是透明的。对于 Windows 2000/XP/ Server 2003 系统,一旦使用 net use 命令 或类似的基于 NetBIOS 的应用程序进行查询, WINS 客户将使用以下流程解析名称。
    ( 1 )确定名称是否多于 15 个字符,或是否包含句点( . )。如果是这样,则向 DNS 查询名称。
    ( 2 )确定名称是否存储在客户端的远程名称缓存中。
    ( 3 )联系并尝试已配置的 WINS 服务器,使用 WINS 解析名称。
 ( 4 )对子网使用本地 IP 广播。
    ( 5 )如果在连接的 “Internet 协议( TCP/IP 属性中启用了 启用 LMHOSTS 搜索 ,则检查 Lmhosts 文件。
 ( 6 )检查 Hosts 文件。
 ( 7 )查询 DNS 服务器。

你可能感兴趣的:(职场,休闲,wins)