标题：WINS解析
WINS详解
一.我们为什么需要WINS服务在默认状态中，网络上的每一台计算机的NetBIOS名字是通过广播的方式来提供更新的，也就是说，假如网络上有n台计算机，那么每一台计算机就要广播n-1次，对于小型网络来说，这似乎并不影响网络交通，但是当大型网络来说，加重了网络的负担。因此WINS对大中型企业来说尤其重要。二.WINS工作原理上面说过，WINS服务器为客户端提供名字注册、更新、释放和转换服务，下面就详细介绍这四个基本服务的工作原理：
1.名字注册
名字注册就是客户端从WINS服务器获得信息的过程，在WINS服务中，名字注册是动态的。
当一个客户端启动时，它向所配置的WINS服务器发送一个名字注册信息（包括了客户机的IP地址和计算机名），如果WINS服务器正在运行，并且没有其它客户端计算机已注册相同的名字，服务器就向客户端计算机返还一个成功注册的消息（包括了名字注册的存活期----TTL）。
与IP地址一样，每个计算机都要求有唯一的计算机名，否则就无法通信。如果名字已经被其它计算机注册了，WINS服务将会验证该名字是否正在使用。如果该名字正在使用则注册失败（发回一个负确认的信息），否则就可以继续注册。
2.名字更新
因为客户端被分配了一个TTL（存活期），所有它的注册也有一定的期限，过了这个期限，WINS服务器将从数据库中删除这个名字的注册信息。它的过程是这样的：
（1）.在过了存活期的1/8后，客户端开始不断试图更新它的名字注册，如果收到不到任何响应，WINS客户端每过2分钟重复更新浓度，直到存活期过了一半。
（2）.当存活期过了一半时，WINS客户端将尝试与次选WINS服务器更新它的租约，它的过程与首选WINS服务器一样。
（3）.如果时间过了一半后仍然没有成功的话，该客户端又回到它的首选WINS服务器了。
在该过程中，不管是与首选还是次选WINS服务器，一旦名字注册成功之后，该WINS客户端的名字注册将被提供一个新的TTL值。
3.名字释放
在客户端的正常关机过程中，WINS客户端向WINS服务器发送一个名字释放的请求，以请求释放其映射在WINS服务器数据库中的IP地址和NetBIOS名字。收到释放请求后，WINS服务器验证一下在它的数据库中是否有该IP地址和NetBIOS名，如果有就可以正常释放了，否则就会出现错误（WINS服务器向WINS客户端发送一个负响应）。
如果计算机没有正常关闭，WINS服务器将不知道其名字已经释放了，则该名字将不会失效，直到WINS名字注册记录过期。
4.名字解析
当客户端在许多网络操作中需要WINS服务器解析名字，例如当使用网络上其它计算机的共享文件时，为了得到共享文件，用户需要指定两件事：系统名和共享名，而系统名就需要转换成IP地址。
名字解析过程是这样的：
（1）.当客户端计算机想要转换一个名字时，它首先检查本地NetBIOS名字缓存器。
（2）.如果名字不在本地NetBIOS名字缓存器中，便发送一个名字查询到首选WINS服务器（每隔15秒发送一次，共发三次），如果请求失败，则向次选WINS发送同样的请求。
（3）.如果都失败了，那么名字解析可以通过其它途径来转换（例如本地广播、lmhosts文件和hosts文件、或者DNS来进行名字解析。三.WINS服务器和客户端的需求1.Microsoft对服务器的需求
（1）.至少提供一个首选WINS服务器和一个次选WINS服务器来提供容错功能。
（2）.一个WINS服务器每分钟可以处理近1500个名字注册和约4500个名字查询。因此我们强烈建议你一个首选和一个次选WINS服务器可以带动10000个客户端。
（3）.如果WINS服务器与客户机不在同一个子网上，就要考虑到路由器的性能了。
2.客户端的需求
几乎所有的支持网络互联的Microsoft客户端都可以是WINS客户端，下面列出了可以与WINS一起工作的客户端：
*Windows NT Server3.5x,4.0
*Windows NT Workstation3.5x,4.0
*Windows 9x/me/2000
*Windows for Workgroups withTCP/IP-32
*Microsoft Network Client3.0 for MS-DOS
*LAN Manager2.2c for MS-DOS
基于DOS的客户端也可以用WINS服务器进行名字解析，但你必须为它们在WINS服务器中添加静态词条。2000以后wins几乎被抛弃。全面转向win2000的DNS系统了~
WINS解析原理
通常，Windows操作系统支持以下两种主要的网络名称解析方法。主机名称解析这是Windows基于套接字的名称解析方式，它执行gethostbyname() API函数以搜索主机IP地址，该地址是建立在已查询的主机名称基础上的。该方法依赖于Hosts文件或查询DNS以执行名称解析功能。NetBIOS名称解析该名称解析使用NetBIOS重定向程序来搜索基于查询的NetBIOS名称的地址。该方法依赖于Lmhosts文件，或查询WINS执行名称解析。
在默认情况下，运行Windows2000/XP/Server2003操作系统的WINS客户端被配置为先使用DNS解析长度超过15个字符或包含句点（.）的名称。对于少于15个字符，并且不包含句点的名称，如果将客户端配置为使用DNS服务器，则也可以在WINS查询失败之后再次将DNS用做最终选项。在默认情况下，当用WINS服务器地址配置（手动或通过DHCP）运行Windows 2000/XP/Server2003操作系统的计算机的名称解析时，除非配置了其他NetBIOS节点类型，否则计算机将使用混合节点（h-节点）作为NetBIOS名称注册的节点类型。对于NetBIOS名称查询和解析，也使用h-节点行为，但有少许差异。
允许DNS使用WINS解析
1．打开 DNS。
2．右键单击控制台树中的适用区域，然后单击“属性”。
3．执行以下任一操作：
如果适用的区域是正向查找区域，应在“WINS”选项卡上选中“使用 WINS 正向查找”复选框。在“IP 地址”中键入 WINS 服务器的 IP 地址（该服务器将用于解析 DNS 中找不到的名称），然后单击“添加”。
如果适用的区域是反向查找区域，应在“WINS-R”选项卡上选中“使用 WINS-R搜索”复选框。在“附加到返回的名称的域”中，键入一个名称。
4．如果合适，请为此 WINS 记录选中“不复制此记录”复选框。
如果在不能识别 WINS 或 WINS-R 资源记录的 DNS服务器之间复制此区域，请单击此复选框。这样可以防止在区域传输过程中将这些记录复制到其他服务器上。如果在向 BIND服务器执行区域传输时使用此区域，这是一个重要选项，因为 BIND不能识别 WINS 记录。
注意
To perform this procedure,you must be a member of the Administrators group on the local computer,or you must have been delegated the appropriate authority. If the computer is joined to a domain,members of the Domain Admins group might be able to perform this procedure. As a security best practice,consider using Run as to perform this procedure. 
To open DNS,click Start,click Control Panel,double-click Administrative Tools,and then double-clickDNS. 
使用该选项时，此过程中配置的指定 WINS 服务器将为在适用区域中未找到的名称提供最后的引用。
也可以单击“高级”，调整高级的 WINS 查找参数。
有关功能差异的信息 
Your server might function differently based on the version and edition of the operating system that is installed,your account permissions,and your menu settings. For more information,see Viewing Help on the Web.