五分钟了解Hosts文件

作者:和菜头  来源:槽边往事

当你在浏览器的地址栏里输入:www.baidu.com或者www.google.com的时候,你的计算机其实并不知道这是什么意思。它并不理解,你是想要它去连接上百度的网站或者Google的网站。它听不懂,因为你输入的是人类的语言,而不是机器的语言。

机器能够听懂的语言是一串数字地址,比如说:119.75.213.61,这是百度的地址,叫做IP地址。网上的站点有无数个,每个站点都有这样的一个地址,就像是独一无二的门牌号。机器可以理解这串数字,按照它的指示找到对应的网站。

人说人的语言,机器说机器的语言,其中就肯定有一个翻译的问题。当你在浏览器的地址栏里输入:www.baidu.com,需要一个翻译,把它变成:119.75.213.61,交给你的机器去执行。然后,你的电脑就连接到百度,于是你在屏幕上就看到了具体的页面。

这两种语言都有必要存在,你不可能记得几个IP地址,因为它最多可能有12位之多。想想看,你能背住几个手机号码?当然,打电话从来不会对你造成任何困扰,因为你的手机通讯录上记录的是人名。你查找通讯录的时候,你只要记得人名,手机会自动把人名和电话号码对应起来。电脑也是一样,有专门的服务器负责这种翻译,或者说对应工作。

术语叫做DNS解析服务器,简单说,就是一种专门用来翻译域名的服务器。它负责把你提交的域名变成IP地址,告诉你的机器,好让它连过去。它就像是一个户籍警,你告诉它要去什么小区几楼几单元几号门,他负责告诉你应该左转右转怎么个走法。很明显,如果这位户籍警是个混蛋,那么就很可能指一条错误的路给你。或者,有恐怖分子劫持了这位户籍警,要他胡乱指路,那么你就会发现此路不通。

发生这种情况怎么办?那自然是不去问这位户籍警了,而是自己给自己的机器指路。在你电脑操作系统上的Hosts文件就是用来做这件事的。你打开这个文件进行编辑,比如说写上:

123.123.123.123 baidu.com

就相当于你告诉自己的机器:听好!以后我只要输入baidu.com要你去连接,那么,就请你直接联系123.123.123.123这个地址。不要去找DNS解析服务器,乖,你自己可以找到的。

这样一来,如果DNS发了失心疯,一定要把你指到坑里去,那么你可以用Hosts文件给自己的机器仙人指路。前提是:你得知道正确和真实的IP地址,才能指导你的机器找到对应的站点。

这就是Hosts文件的原理。

此外,关于Hosts文件的位置会有一点小麻烦,因为在不同的操作系统下,它的位置并不一致。如果查找专业解释,它们会说地址一般位于:%SystemRoot%\system32\drivers\etc\

当你看到这些百分号的时候,估计已经晕倒了。嗯,这是技术人员写的文档。

对于Windows操作系统的用户来说(也就是说,你使用NT/2000/XP/2003/Vista),%SystemRoot%的意思是操作系统根目录。简单地说,如果你的机器不是装得非常怪异,那么它就是指你的C盘。你点击“我的电脑”,进入C盘,进入windows目录,打开。然后找system32这个目录。打开之后,再找drivers目录。打开以后,再找etc目录,进入之后,Hosts文件就在那里。

如果找不到,那就用搜索去查找文件夹system32,或者直接搜文件Hosts。

最后,一旦你修改了Hosts文件,一定要记得这件事情。也许过一段时间,网站的IP地址已经更改,那么你就要把增加的一行内容删除或者相应修改,否则,你的机器会一次次用脑袋撞岩石,你自己还在一边困惑:为什么别人都能访问,就我的机器访问不了?

其实,我们本不必要去学习这些内容的。

没有评论: