(一)hosts文件
没事可以看一下,最近工作需要同时对接两个外部的业务,结果都在和我讲,让我配置host,然而这个东西之前我还就真没怎么用过,用过一次也是不懂一二,当时用的时候也应该是本地的一个ip想绑上一个假的域名,年少的我觉得域名比ip高级、好看哈哈哈
当时是真的小啊,竟会有这种想法,因此催生了当时修改自己笔记本host的冲动,我记得最清楚的是我没改成功最后,总之就是修改了host没有让他生效。
windows中hosts的配置在C:\Windows\System32\drivers\etc
hosts文件的内容
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
你说年轻的时候就觉得这玩意配置个host文件好难,怎么配啊,什么的都得按照网络上的步骤来,实际呢,到今天再去读这个hosts文件才发现人家的#是注释,并且人家的注释也解释了hosts文件本身的意义就是ip到主机名的一个映射This file contains the mappings of IP addresses to host names.
那么我脑袋里又产生了疑问:这个hosts文件的目的是什么?注释也揭示了这个host文件就是用于DNS域名解析协议将主机名解析到IP地址的。This is a sample HOSTS file used by Microsoft TCP/IP for Windows.localhost name resolution is handled within DNS itself.
思考几分钟之后,我终于明白了hosts文件和DNS的关系,看来浏览器输入主机名的之后,走DNS协议去找IP的时候是先找系统的HOSTS文件去找IP的,
hosts文件是WIN的IP和域名的映射表,和DNS功能一致,不过优先于DNS。
那么直接走hosts文件查找对应ip有什么好处呢?好处就是不用请求网络上的DNS服务器,减少域名解析时间
换句话说,如果你充分的理解了DNS协议,理解了主机名到IP寻址的一个过程,实际上系统的hosts文件你直接就懂了!
只能说明我还是不够理解DNS过程。
据Windows系统规定,在进行DNS请求以前,Windows系统会先检查自己的Hosts文件中是否有这个地址映射关系,如果有则调用这个IP地址映射,如果没有再向已知的DNS 服务器提出域名解析。也就是说Hosts的请求级别比DNS高。
刚才试了下在主机名解析成ip的这个过程中,还是先走的系统,然后才走的dns,验证这个顺序的简单方法:把host的文件配置上一个随意ip到www.baidu.com的映射,我保证你baidu访问不了了!!!
弄完了记得还原回来,不然你baidu就用不了了
(二)DNS协议