当前位置首页 > 百科> 正文

名称解析

2018-04-10 20:03:19 百科

名称解析

名称解析,就是把一个文本类型的计算机名映射到一个数字类型IP位址,分为主机名称解析和NetBIOS名称解析两类。

基本介绍

  • 中文名:名称解析
  • 外文名:Name Resolution
  • 定义:文本状态的计算机名映射为IP位址
  • 分类:主机名称解析和NetBIOS名称解析
  • 系统:Windows系统
  • 领域:计算机网路

概述

名称解析就是将文本状态的计算机名映射为IP位址的过程。Windows 2000支持两种名称解析方式:主机名称解析和NetBIOS解析。主机名称解析是将计算机主机名解析成IP位址,而NetBIOS解析是将NetBIOS名称映射成对应的IP位址。两种名称解析方式使用不同的方法实现名称解析。主机名解析可以通过Hosts 主机名档案或DNS 伺服器实现,而NetBIOS名称解析可以通过Lmhosts 档案或WINS伺服器实现。

主机名解析

DNS是Windows2000和WindowsXP用于命名主机计算机的标準。与NetBIOS所提供的单层名称空间不同,DNS提供的是多层次名称空间。
用于DNS名称解析的机制包括Hosts档案、DNS本身和DNS解析器快取。

主机名的概念

主机名几乎用于所有的TCP/IP环境。下面列出了对主机名的描述:
1.主机名是管理员为计算机分配的别名,别名用于识别TCP/IP主机。主机名不需要与NetBIOS计算机名相符,它可以是任何一个256字元的字元串。可以为同一台主机分配多个主机名 ;
2.主机名简化了用户对其他TCP/IP主机的称呼方法。主机名比IP位址容易记忆,使用Ping工具或其他TCP/IP工具时,可以用主机名代替IP位址;
3.主机名总是与一个IP位址相对应的,该IP位址存储在Hosts档案、DNS资料库或NetBIOS名称伺服器中;
4.主机名显示的是分配给系统的主机名。在默认情况下,主机名和基于Windows的计算机名称相同。

DNS解析器快取

Windows2000和WindowsXP有一个用于存放近期解析过的名称的快取。当需要解析一个名称时,系统将搜寻该快取。如果没有找到要解析的名称,那幺将使用其他解析方法。 使用ipconfig/displaydns可以查看 DNS解析器快取。

使用Hosts进行名称解析

Hosts档案与只用于远程主机的Lmhosts档案不同,它把本地主机和远程主机的主机名都映射到它们的IP位址。过程如下:
1.当用户使用主机名来输入一条命令(如Ping命令)时,主机名称的解析就开始了。
2. 这台计算机会检查主机名与本地主机名是否一致。如果一致,计算机就成功地解析了名称(目标主机与源主机相同),并使用该主机的IP位址。
3. 如果两个主机名不同,就会按顺序读取Hosts档案。如果在Hosts档案中找到主机名,那幺主机名将被解析成一个IP位址。
4.如果无法解析主机名,并且没有配置其他解析方法(如DNS、NetBIOS名称伺服器、广播或Lmhosts档案),那幺就中止解析过程,并显示一个错误讯息。

使用DNS的名称解析

DNS伺服器是一个线上资料库。它将FQDN和其他主机名解析成IP位址。通过配置,可以使Window2000和WindowsXP的所有版本都使用DNS伺服器,而使Windows2000的所有伺服器版本都提供DNS伺服器服务。使用DNS伺服器解析域名同使用Hosts档案解析域名的过程相似。
通过配置,使Windows2000或WindowsXP使用DNS伺服器来解析主机名的过程如下所述:
当用户使用FQDN或主机名输入一条命令时,DNS伺服器在它的资料库内寻找该名称,并尝试把它解析成一个IP位址。如果DNS伺服器无法解析该名称,那幺该DNS伺服器可以查询其他DNS伺服器,请求它们帮助完成这个名称解析。
如果其他DNS伺服器没有对该请求作出回响,那幺计算机会再发出若干次请求。如果仍然没有任何回响,并且没有配置其他解析方法(如NetBIOS名称伺服器或Lmhosts),那幺就中止解析过程,并报告一个错误。

NetBIOS名称解析

NetBIOS名称就是计算机名。某些Windows作业系统使用它来识别网路上的计算机。一台计算机要建立与另一台计算机的通信,就必须把对方的计算机名解析成一个IP位址。
NetBIOS名称解析的特有机制包括:广播、Lmhosts档案和NetBIOS名称伺服器。

NetBIOS名称的概念

NetBIOS名称长度为16个位元组。与255个字元的DNS主机名不同,NetBIOS名称是另一种计算机命名的方法。Windows2000和WindowsXP的多数功能使用DNS名称,但是如果网路上有一些计算机运行Windows早期版本,或装有依赖于NetBIOS名称的应用程式,那幺就必须进行NetBIOS名称解析。
1. NetBIOS名称注册
当计算机服务启动,以及用户登录时,将动态注册NetBIOS名称。NetBIOS名称既可以注册为惟一名称,用于映射惟一地址,又可以注册为组名称,用于映射多个地址。
2.NetBIOS名称注册举例
Windows2000的Server服务是使用NetBIOS名称服务的一个例子。Windows2000的Server服务提供档案和印表机共享。用户启动计算机时,该服务注册一个基于计算机名的惟一NetBIOS名称。注册名由15个字元的计算机名加上第16个字元0x20构成。这第16个字元惟一地标识了Server服务。
当用户尝试使用NetBIOS名称来连线到一个已分享档案夹时,将启动一个名称查询,用于搜寻Server服务的NetBIOS名称。一旦找到该NetBIOS名称就建立通信,这样用户就可以连线到该已分享档案夹所在的伺服器
3.浏览
WindowsNT、Windows2000和WindowsXP可以创建已注册NetBIOS名称的列表,使用户能够在网路上找到含有共享资源的计算机。建立这些列表的过程称为“浏览”。
要在Windows2000上访问共享资源,可以执行以下步骤:
1)打开“网上邻居”,然后双击“整个网路”;
2)单击“全部内容”;
3)双击“MicrosoftWindows网路”;
4)双击适当的域或工作组,然后双击该资源所在的计算机名。

广播名称解析

当WINS伺服器不可用时,运行Windows2000之前版本的作业系统(如Windows 98)的计算机将使用广播讯息把NetBIOS名称解析成IP位址。这个方法比较简单,效率也相当高。当遇到网路上另一台计算机的NetBIOS名称时,计算机会生成一系列“名称查询请求”讯息,并把这些讯息作为广播传送给本地网路上所有其他计算机。使用该查询讯息中指定的NetBIOS名称的计算机就会向发出查询的计算机传送一条“肯定名称查询回响”讯息,该讯息中含有前者的IP位址。发出查询的计算机将使用这个IP位址向目标计算机传送单播讯息。
广播名称解析法存在两个主要的问题。第一,广播只能用于解析本地网路的计算机名。因为广播传输局限于产生广播的区域网路(LAN)内,所以即使LAN之间有路由器连线,Windows计算机也无法使用该方法来解析其他LAN内的计算机名。在WINS普及之前,网路管理员通常把广播与一个LMHOSTS档案结合使用。这个个LMHOSTS档案专门用于存放其他LAN上NetBIOS名称的解析。第二,这个方法会在网路上产生大量的广播传输,使得网路上所有计算机的网路接口适配器都要接收、检查和丢弃大量目标为其他计算机的讯息。要解决这个问题,就需要安装只使用单播传输的WINS伺服器。

使用Lmhosts的名称解析

当传送一个在同一子网内的NetBIOS名称解析的广播后,如果广播没有返回IP位址,Microsoft客户端计算机就会读取Lmhosts档案。Lmhosts档案是一个静态ASCII档案,用于解析远程NetBIOS计算机的NetBIOS名称。Lmhosts档案有以下特点:
1.它解析早期Windows命令(如netuse)所使用的NetBIOS名称 ,每项都由一个NetBIOS名称和它对应的IP位址组成 ;
2.每台计算机都有自己的Lmhosts档案。默认目录位置是以下形式的:systemroot\System32\Drivers\etc。该目录含有一个Lmhosts样本档案(Lmhosts.sam) 。

使用NetBIOS名称伺服器的名称解析

解析本地和远程NetBIOS名称,最常用的方法是使用NetBIOS名称伺服器。当用户启动某些命令,或使一个NetBIOS应用程式与网路进行互动时,NetBIOS名称的解析进程就开始了。客户端计算机将先查NetBIOS名称快取,以查找目标主机的“NetBIOS名称/IP位址”映射。如果在快取内找不到NetBIOS名称,那幺客户端计算机就尝试使用其他办法来确定目标主机的IP位址。
如果使用NetBIOS名称快取无法解析名称,那幺就把该目标主机的NetBIOS名称传送到NetBIOS名称伺服器,该NetBIOS名称伺服器已配置为源主机。把NetBIOS名称解析成IP位址后,NetBIOS名称将返回源主机。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net