栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

hosts文件

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

hosts文件

hosts文件

前面我们讲解了DNS域名解析的流程以及原理(详见DNS解析),可以了解到DNS服务器最大的作用便是存储着域名到IP地址的映射,以便用户在通过浏览器请求某个页面时,将用户输入的域名解析为对应的IP地址。

接下来我们通过一次域名解析的完整流程来认识hosts文件(下图是一次域名解析的完整过程,对[MY PC]框图以外不理解的可以参考DNS解析)

接下来我们对上图进行一个较为深刻的解读

假定我们在请求www.oracle.com站点
当我们在浏览器导航栏输入一条域名并按下回车时,域名解析的过程便开始了。

  • 首先,检查浏览器自身缓存,若在不久之前访问过该站点,那么浏览器自身缓存中包含域名www.oracle.com到其IP地址的解析,只进行过程1和过程2
    浏览器自身缓存一般保存在
    C:UsersAppDataLocalMicrosoftEdgeUser DataDefaultCache
  • 如果浏览器缓存中不包含域名www.oracle.com到其IP地址的映射,那么便从本机操作系统的DNS缓存中查找,对应于图中的过程3和过程4.
    可以通过ipconfig /displaydns命令来查看本机操作系统中的DNS缓存
    通过ipconfig /flushdns命令来删除本机操作系统中的DNS缓存

  • 如果本机操作系统的DNS缓存不包含域名www.oracle.com到其IP地址的映射,那么便从本机hosts文件(本文的核心内容!!!)中查找看是否含有域名www.oracle.com到其IP地址的映射,对应于过程5和过程6.
    hosts文件: Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”(并不是真正的关系型数据库!)
    hosts文件位置
    C:WindowsSystem32driversetchosts

    我们可以通过修改hosts文件来修改域名和IP地址的映射关系,这样在域名解析的过程中如果浏览器缓存和本机操作系统中的DNS缓存都不包含该映射关系时,按照hosts文件中的映射关系进行解析。
    例如我们想通过域名www.huogaohan.com来请求github.com站点时可以通过以下步骤完成

    例如在浏览器本地缓存和OS的DNS缓存中都没有github.com与其IP地址的映射时,我们访问GitHub时相对较慢。我们可以通过在hosts文件中添加github.com到其IP地址的映射,来避免访问远程服务器的耗时,在一定程度上加快访问。
  • 如果hosts文件中不包含域名www.oracle.com到其IP地址的映射,那么应用程序便会调用本地DNS客户端,通过访问远程服务器来获取所需要的映射关系,对应于图中过程7到过程16(过程7到过程16的详细解读参考我的另一篇文章DNS解析)

如果以上过程并无法查找到所需要的域名-IP地址映射关系(不出意外都会找到),还会有一些后续过程,这里不再赘述,若后续过程还是无法找到,那么本次域名解析宣告失败

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/422135.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号