有些用户可能已经注意到,我们在上网时除了可使用常规的 http://www.xxx.com或http://www.xxx.com.cn等形式的网站域名之外,还可以使用类似于“202.106.184.200”形式的IP地址来进行访问,这是怎么回事呢?两种形式之间有何联系与区别呢?原来,Internet上每个站点都是以IP地址来定位的,也就是说只有“202.106.184.200”形式的IP地址才真正用于指向某个特定网站。不过很显然,我们如果完全使用这些数字形式的IP地址来访问网站无疑非常不方便,为便于用户使用,有关机构又专门定义了 http://www.xxx.com或 http://www.xxx.com.cn等形式的域名,广大用户日常操作时只需使用这些便于记忆的网站域名即可,系统会通过网络上的域名转换器自动将用户所输入的域名转换为IP地址并进行访问。从上面的介绍中可以看出,要采用域名方式浏览某个网站,系统必须先将其转换为网站所对应的IP地址,然后才能进行浏览(若不能将域名转换为IP地址,用户也就无法访问该网站)。
一般来说,用户输入某个网站的域名之后,系统将自动连接互联网上的某个域名服务器(默认为ISP的域名服务器),并试图通过它将域名解析为IP地址,若解析成功则打开相应网站,若解析失败,系统还会请求该域名服务器的上级域名服务器进行解析,直至最后解析成功(或失败)。很显然,域名解析速度的快慢对用户上网效率的高低有非常密切的关系。为加快域名解析速度(实际上就是加快网络运行速度),有些用户采用了在Windows中手工指定响应速度比较快的DNS域名服务器的办法。这虽然有一定的效果,但此时的域名解析仍然是通过Internet完成的,它不可避免地存在一定程度的延时。我们有没有办法将这个域名服务器转移到用户的计算机上,从根本上解决域名解析的延时问题呢?回答是肯定的,hosts.asm文件能为我们排忧解难。原来,当用户在浏览器中输入某个网站的域名之后,计算机并不像我们所想象的那样直接连接到Internet上的域名服务器进行解析,它首先会在硬盘中的hosts.asm文件中进行查找,若找不到相应域名才会向Internet上的域名服务器申请解析,若找到相应的域名,系统就会直接按照hosts.asm文件的设置将域名转换为IP地址并进行访问。由此可见,hosts.asm文件实际上就相当于一个本地的DNS域名服务器,我们只要将一些经常需要访问网站的IP地址添加到hosts.asm中即可大大加快站点的解析速度,从而提高整个网络运行效率。
hosts.asm文件位于Windows安装文件夹下,我们可以直接使用记事本将其打开,它的缺省内容为:
# Copyright (c) 1998 Microsoft Corp.
# This is a sample HOSTS file used by Microsoft TCP/IP stack for Windows98
# …………(带#的均为注释)
127.0.0.1 localhost
在hosts.asm文件中,带“#”的内容均为注释,只有最后一行“127.0.0.1 localhost”才是真正的域名解释内容,其中localhost表示本机的域名,而127.0.0.1则是本地计算机的IP地址,广大用户只需将某个网站的IP地址和它所对应的域名添加到文件末尾即可达到在本地计算机上对域名进行解析的目的。
有些用户可能会说,我又不知道每个域名所对应的IP地址,这该如何进行添加呢?别着急,我们只需在Windows的DOS窗口中执行“ping 域名”命令即可得到所需域名的IP地址。如*电视台网站的域名为“ http://www.cctv.com”,我们若想知道它的IP地址,只需在联网状态下进入Windows的DOS窗口,然后执行“ping www.cctv.com”命令,系统就会显示*电视台网站的IP地址。
知道相应网站的域名和对应的IP地址之后,我们只需按照“IP地址+空格+网站域名”的格式将其添加到hosts.asm文件中即可。此后,当用户输入这些网站域名时,系统就无需使用Internet上的域名解释器进行解析了,直接利用hosts.asm文件即可解决域名解析问题,从而加快了网络的响应速度(当然,对于hosts.asm文件没有包括的内容,系统还会像以往那样通过Internet上的域名解释器进行解析,绝对不会出现无法解析的问题)。
除了加快网络响应速度之外,hosts.asm文件还有一个非常绝妙的作用,那就是对于个别不能访问的站点(如169中的一些站点),我们只要在hosts.asm中加入其域名解析,有时会出其不意地开个后门进去,效果非常好!