在TCP/IP网络中,为解决计算机名称于IP地址的对应问题,用户可以利用HOST文件、DNS等方式,但使用这些方法都存在着一个最大的问题,就是网络管理员需要以手工方式将计算机名称(NetBIOS名)及其IP地址一一输入到计算机中,一旦某台计算机的名称或IP地址发生变化,管理员又需要修改相应的设置。这对于管理员来说是一项繁重的工作。而微软提供的网际名称服务WINS解决了这个问题。利用它可以让客户机在启动时主动的将它的计算机名称(NetBIOS名)及IP地址注册到WINS服务器的数据库中,在WINS客户机之间通信的时候它们可以通过WINS服务器的解析功能获得对方的IP地址。由于以上工作全部由WINS客户机与服务器自动完成的所以大大降低了管理员的工作负荷,同时也减少了网络中的广播。在理解及使用WINS之前用户首先应该了解计算机名称(NetBIOS名)的一些知识。
1.1定义计算机名(NetBIOS名)
NetBIOS是80年代末为了利用IBMPc构建局域网而出现的一种MS-DOS程序的高级语言接口。为了利用网络硬件和软件将这些计算机连接在一起组成局域网,微软和其它供应商利用NetBIOS接口来设计它们的网络组件和程序。NetBIOS接口利用最多为16个字符的名称来标识每一个网络资源。
在一个网络中NetBIOS名是唯一的。在计算机启动、服务被激活、用户登录到网络时,NetBIOS名将被动态的注册到数据库中。NetBIOS可以以独立名称的形式注册,也可以以组名称的形式注册。以单机名注册时要有一个IP地址与其相对应,如以组名称注册时会有多个IP地址与其对应。
在Windows2000发布前的所有基于MS-DOS和Windows的操作系统都需要使用NetBIOS名称接口以便网络可以正常工作。伴随着Windows2000的发布,网络中的计算机不再需要NetBIOS名称接口的支持。如在Windows2000和一些UNIX版本的网络中它们只要求客户机支持DNS使用就可以了,不再需要NetBIOS名。但为了与以前版本的网络操作系统结合使用,微软在Windows2000中仍然支持NetBIOS名,以便与以前版本的操作系统协同使用,微软通过两方面实现对NetBIOS名的支持:
所有使用Windows2000的客户机在默认情况下都支持利用客户端的WINS服务注册和解析NetBIOS名。
§Windows2000服务器继续提供一个高效的WINS服务器,用它来管理网络中的NetBIOS名。
定义NetBIOS名称
NetBIOS名称包含16字节。前15个字节是由用户指定的,用它来表示:
§网络上的单个用户或计算机
§网络上的一组用户或计算机
在NetBIOS名中的第16个字符作为名称的后缀,用于识别名称及显示注册名称的信息。NetBIOS名可以被设置为独立名称或组名称。
在使用独立名称时,是将网络信息发送给一台计算机,而使用组名称是将网络信息同时发送给多台计算机。
在WindowsNT早期版本中,所有的网络服务都是利用NetBIOS名注册的。而在Windows2000中,登录网络及其它的网络服务都是在DNS中进行注册的。
1.2NetBIOS名的解析
NetBIOS名的解析就是将计算机的NetBIOS名成功的与IP地址进行映射的过程。从上面用户已经知道NetBIOS名是用来识别网络上NetBIOS资源由16个字符组成的地址。让用户通过下面这个例子了解NetBIOS名是如何解析的。
一台Windows2000的计算机(CORPSERVER)中运行的文件与打印共享服务的NetBIOS名的解析过程。当计算机启动时文件与打印共享服务利用计算机名在网络上注册一个独立NetBIOS名。这个NetBIOS名前15位字符是计算机名,第16位字符为0x20。如果计算机名不够15个字符,那么利用空格补齐。(即:CORPSERVER[20])。当用户试图与这台计算机的共享文件夹建立通信时必须指明它的文件与打印共享的NetBIOS名。在建立文件与打印共享连接前,首先要建立TCP连接,为了建立TCP连接首先要将NetBIOS名(即:CORPSERVER[20])解析成IP地址。
WINS客户机主要利用广播、LMHOSTS文件、WINS服务器三种方式的组合解决NetBIOS名解析的问题,根据组合方式的不同分成了四种NetBIOSnode模式,见下表:
Node模式
描述
B-node(broadcast)
B-node用户利用广播NetBIOS名查询的方法实现名称的注册和解析;在广播失败后,查询Lmhosts文件,寻找相应的地址
P-node(peer-peer)
利用点对点的方式直接向WINS服务器查询相应NetBIOS名的IP地址。
M-node(mixed)
M-node是把B-node和P-node组合在一起。默认情况下使用广播的方式,如果失败,再向WINS服务器进行查询。
H-node(hybrid)
H-node是把B-node和P-node组合在一起。默认情况下向WINS服务器进行查询,如果失败,再使用广播的方式。如果两种方法都失败,则查询Lmhosts文件,寻找相应的地址。
运行Windows2000的计算机默认使用B-node模式,当为它们设置了WINS服务器后,改用H-node模式。Windows2000也能使用本地数据库文件Lmhosts解析NetBIOS名。此文件存放在:SystemRootSystem32DriversEtc文件夹中。
用户一定要为基于活动目录的Windows2000计算机设置一个WINS服务器的IP地址,以便它们可以与无法使用活动目录的WindowsNT、Windows2000,Windows95、Windows98计算机进行通信。