文档库 最新最全的文档下载
当前位置:文档库 › 关于LMHOSTS

关于LMHOSTS

关于LMHOSTS
关于LMHOSTS

LMHOSTS 文件的应用

安装过 Windows NT 4.0 Server 的网友很清楚,就是如果安装了 TCP/IP 协议,则我们依次选取“开

始”/“设置”/“控制面板”/“网络”/“协议”/“TCP/IP 通信协议”/“属性”/“WINS 属性”,则可以在当前页框里看见,系统默认的是“启用 LMHOSTS 查询”,同时还可以启用的是“启用DNS ”。按照我们前面讲到的,如果想要使用保存在其他目录中甚或其他计算机中的 LMHOSTS 文件,则可以单击旁边的“导入LMHOSTS”按钮来获取。

由我们前面的《关于 WINS 》及《关于 NetBIOS》等专辑大家已经知道,LMHOSTS 文件的应用场合是没有 WINS 服务器的网络环境,引入 LMHOSTS 文件的目的是用来解决广播方式无法跨越路由器的局限的,LMHOSTS 文件与广播方式相辅相行实现网段内外的全通信。这里我们再来看一下它们的的工作进程:

1、系统启动时将 LMHOSTS 文件中被设为#PRE的地址和机器名预载到内存中;

2、客户端发出查询请求时,先在 Cache 中检查是否已存在目的 IP 地址;

3、找到了自不用说,如果在 Cache 中没有找到,系统改用广播方式再次查找;

4、这次找到了也自不用说,如果广播查询还是没有找到,就得用到 LMHOSTS 文件了;

5、找到啦,好!把它也添加到 Cache 中保存起来(看你下次还往哪跑^_^);还是没有找到?!对不起,俺只得报错了,你就在客户端去等着看错误信息吧。

那么 LMHOSTS 文件的跨域操作又是如何实现的呢?还记得三天前的第一讲吗?我们说到了一个

#DOM:Domain_Name 命令。假定我们这里有两个域:Lanhome01和Lanhome02,其 IP 地址分别为 192.168.0.1 和192.168.1.10,计算机名分别为 Heatch01 和 Heatch02,现在有一台域 Lanhome01 的工作站 cxy01 想要登录到域 Lanhome02,但我们在网络上没有运行 WINS 服务。如果仅通过广播方式,cxy01无法被 Lanhome02 域控制器审核并验证身份。这里只需在 LMHOSTS 文件添加如下一行即可:

192.168.1.10 Heatch02 #PRE #DOM:Lanhome02

三、LMHOSTS 文件的管理

这里提到的 LMHOSTS 文件的管理实际也是上一讲内容的强化,即跟上面的 #DOM 命令一样,我们这一节着重的是 #INCLUDE 命令。因为 LMHOSTS 文件是独立存放在每台机器上的,如果整个网络发生了数据变动,则必须为每台机器的 LMHOSTS 文件进行修改,虽然它们都存放于 C:\WinNT\System32\Drivers\Etc目录中很好定位,但动起手来还是很麻烦。如果通过 #INCLUDE 命令就可以一劳永逸。我们这里将它再次拿出来讲,是提醒大家注意其文件路径的表示方法。

以上一讲中的例子再次说明如下:

#

# The following example illustrates all of these extensions:

#

# 102.54.94.97 rhino #PRE #DOM:networking #net group's DC

# 102.54.94.102 "appname \0x14" #special app server

# 102.54.94.123 popular #PRE #source server

# 102.54.94.117 localsrv #PRE #needed for the include

#

# #BEGIN_ALTERNATE

# #INCLUDE \\localsrv\public\lmhosts

# #INCLUDE \\rhino\public\lmhosts

# #END_ALTERNATE

#

# end of this file.

如果共享的 LMHOSTS 文件位于域名为 Lanhome01 的 Heatch01 的机器中,其路径为

C:\WinNT\System32\Drivers\Etc,现在我们对这个 LMHOSTS 文件已经进行了多处修改,因为同属一个网络,所以我们还要对 Lanhome02 中 Heatch02 机器的 LMHOSTS 文件做相应修改,但我们不希望在今后仍要进行重复的工作,因此,我们可以做如下操作:

1、将 Heatch01 机器的 C:\WinNT\System32\Drivers\Etc 目录共享为 Share;

2、对 Heatch02 机器的 LMHOSTS 文件做如下修改:

192.168.0.1 Heatch01 #PRE #DOM:Lanhome01

#INCLUDE \\Heatch01\Share\LMHOSTS

对于 LMHOSTS 本身的管理来说,就是尽可能的优化其结构,利用系统的搜索,比如减少注释、将常用的IP 地址及其计算机名称都通过 #PRE 命令预载到 Cache 中并把它们放在文件的最后(为什么?——因为它们在系统启动时就已经加载到 Cache 中了,如果在广播失败后查询 LMHOSTS 文件又先从它们开始,岂不浪费时间?!)。

如果觉得有必要,可以使用 NBTSTAT -R 命令来清除 Cache 中的数据并重新从 LMHOSTS 文件中 Preload。

相关文档