最近在读许令波老师的《深入分析Java Web技术内幕》,算是对DNS服务器域名解析有个大体的理解,以下的内容来自个人对书中内容的整理

1.什么是域名解析?

当我们在浏览器的地址栏输入一个地址时,如www.xxxx.com,之后就可以跳转到对应的页面,但是为什么呢?要知道机器是只认识IP地址的,

他并不理解我们输入的www这种格式是什么意思,这个时候时候就要用到域名解析了

2.域名解析的步骤

首先粗略的说,域名解析就是通过DNS把www.xxxx.com这种格式的域名解析成一个IP地址,之后通过IP地址找到对应的服务器,当然后面就是浏览器请求数据了,

这不是咱们的关注点.接下来详细的讲解具体的解析过程

①用户输入一个域名,浏览器去自己的缓存中寻找是否有对应的解析过的IP地址(这个缓存有大小和时间限制,),没有转入下一步

②浏览器检查操作系统的缓存(有大小和时间限制)中是否有这个域名解析过的结果,在我们常说的host文件(c:/windows/system32/etc)中可以看到

localhost被解析成127.0.0.1,这也是为什么你用tomcat部署web项目后,用浏览器访问总是要输入localhost,当然我更习惯直接输入

127.0.0.1:端口/项目名/xxx这种,因为你的host文件有时会被恶意更改(拓展点说叫做域名劫持),这样你输入localhost就无法被解析了

如果这一步还没有找到域名对应的IP,转入下一步

③浏览器向LDNS发送请求,L代表local,所以LDNS也就是本地的域名解析器,同样的在自己的缓存里找,没找到向根域名服务器(Root Server)发送请求

④根域名服务器返回给LDNS一个主域名服务器地址(gTLD Server),比如我们输入的含有.com的域名,那么返回的这个就是com的主域名服务器地址

⑤接下来LDNS向gTLD Server发送请求,后者返回给前者此域名对应的Name Server域名服务器的地址

⑥然后LDNS向Name Server发送请求,Name Server对此域名进行解析(查询域名与IP地址的映射表.一个IP地址可能对应多个域名)

⑦NameServer返回解析结果给LDNS,LDNS将结果反馈给浏览器

⑧浏览器通过此IP地址与默认的80端口与服务器建立连接,进行数据交互

总结:可以看到在域名解析的过程中,LDNS处于一个中心节点的位置,对根服务器发送请求后获得数据再向主域名服务器发送数据.......

贴下书中的图吧

DNS服务器解析域名的过程的更多相关文章

  1. 域名注册域名解析域名绑定 dns服务器解析 域名记录的添加 记录类型含义@ www 访问域名请求过程

    创建一个web应用,简言之就是访问一个域名,可以到达一个地方,这个地方就是你存放供别人查看的文件的地方 就像一条绳,从这头拉一下,可以拉出来另一头的东西 主要有两个部分: 域名 虚拟主机(空间) 1. ...

  2. DNS解析域名的过程

    一.DNS解析域名的过程 1.大的过程可分为三步: (1).在缓存中查找是否之前解析过 (2).在windows系统的host文件中查找 (3).请求DNS服务器 2.小的过程可分为十步: (1).浏 ...

  3. CentOS 搭建dns服务器 解析任意域名

    DNS服务器IP地址:192.168.1.219 服务器版本:centos6.6一:软件安装 [root@localhost ~]# yum -y install bind* 二:修改主配置文件 [r ...

  4. 记一次腾讯云不能连接DNS服务器的问题排查过程

    由于腾讯云在使用过程中需要用到yum,在yum安装软件的时候报错不能连接到源的网站.当时经过排查发现域名没有解析.有可能是DNS服务器问题或者我的腾讯云DNS配置出现问题. 所以我查看了/etc/re ...

  5. DNS 解释 --- 解析域名给电脑,电脑只看得懂1.1.1.1.1 这些ip地址 所以要翻译给他

    把域名翻译成IP地址的软件称为域名系统,即DNS 当网络上的一台客户机需要访问某服务器上的资源时,客户机的用户只需要在浏览器中的地址文本框中输入该服务器的网址.就可以与该服务器进行连接,计算机的硬件只 ...

  6. 1元搭建自己的云服务器&解析域名

    最近在学做微信开发,没有自己的域名和服务器就不得不寄人篱下,索性自己就到云主机上搭建了个服务器,但是水平有限弄了一个下午~~有自己的域名和服务器的好处相信不用我多说了.比如日后可以有自己域名的个性博客 ...

  7. 全国出现大面积DNS服务器故障 域名被劫持

    1月21日消息,继今日上午腾讯16项服务出现故障后,大量网站出现了无法访问的情况,据了解,该故障是由于国内DNS根服务器故障所致. 据了解,此次攻击式由于国内所有通用顶级域的根服务器出现异常,导致大量 ...

  8. 阿里云 云解析使用方法/在阿里云ESC服务器解析域名并绑定服务器IP后上传文件通过域名访问步骤教程

    第一步:登录阿里云官网,获取服务器ECS的指定公网IP地址. 1.输入阿里云官网账号进入首页,如下图: 2.点击进入"管理控制台",如下图: 3.点击"云服务器ECS&q ...

  9. NGINX本地服务器解析域名

    1.找到hosts文件 ,添加需要解析的域名 2.在cmd命令窗口中检测解析是否生效 3 找到本地服务器的域名配置文件:添加绑定的域名,更改访问的目录 4.添加pathinfo.隐藏index.php ...

随机推荐

  1. HashSet源码阅读

    HashSet的实现基于HashMap 看几个简单的初始化方法 public HashSet() { map = new HashMap<>(); } public HashSet(Col ...

  2. React Native分享第三方遇到的问题

    这几天做APP的分享,好多东西都不懂,踩了好多坑,所幸现在做好了,开心^_^ 时间紧,随便记一下先. 1.签名文件要和各平台的签名一致 2.新浪微博和微信的分享要打包之后,加上签名了才可以(我一直不知 ...

  3. centos 6 网卡名称修改

    centos6 中网卡的名字有时不是eth0,这时就会带来诸多不便,为此需要修改网卡的名称. 修改网卡名称vim /etc/sysconfig/network-scripts/ifcfg-eno167 ...

  4. Spring+SpringMVC+MyBatis+easyUI整合基础篇

    基础篇 Spring+SpringMVC+MyBatis+easyUI整合基础篇(一)项目简介 Spring+SpringMVC+MyBatis+easyUI整合基础篇(二)牛刀小试 Spring+S ...

  5. 七牛php-sdk使用-在线打包

    如果需要将空间中的多个文件,打包成一个压缩文件,该怎么做,不需要自己本地打包好再上传,七牛已经为我们提供了这项服务. 命令:mkzip/2/url/xx/alias/xxx; 不仅可以将文件打包,还可 ...

  6. ogg-oracle to sqlserver

    环境: source:  54     Centos7  oracle12.2           ogg12.3 target  :    52 Windows sqlserver2012      ...

  7. weui 中的tabbar导航

    最近做微信的服务号项目,用的weui作为主要的ui,但是对于用惯了ele ui的开发者来说,文档貌似有点不友好.真是很让人头疼! 所以结合着自己做的项目,随便写一点东西. 比如说,tabbar导航的切 ...

  8. 【ASP.NET MVC系列】浅谈表单和HTML辅助方法

    [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作篇)(下) [04]浅谈ASP. ...

  9. AdaBoostRegressor

    class sklearn.ensemble.AdaBoostRegressor(base_estimator=None, n_estimators=50, learning_rate=1.0, lo ...

  10. 洛谷 P1055 ISBN号码【字符串+模拟】

    P1055 ISBN号码 题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字.1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔 ...