DNS 解析过程
DNS 是应用层协议,用于将域名转换成 IP 地址。
1. 解析过程
DNS 的核心系统是一个三层的树状、分布式服务,基本对应域名的结构。
- 根域名服务器:管理顶级域名服务器,返回 com、net、cn 等顶级域名服务器的 IP 地址;
- 顶级域名服务器:管理各自域名下的权威域名服务器。例如 com 顶级域名服务器可以返回 baidu.com 域名服务器的 IP 地址;
- 权威域名服务器:管理自己域名下主机的 IP 地址。比如 baidu.com 权威域名服务器可以返回 www.baidu.com 的 IP 地址。

例如,要访问 www.baidu.com,就要进行下面的过程:
1)浏览器缓存:浏览器首先会再自己的缓存中查找是否有该域名对应的 IP 地址;
2)系统缓存:如果浏览器缓存中没有的话,就会自动检查本地 hosts 文件内是否有该域名对应的 IP;
3)本地DNS服务器:如果浏览器缓存和系统缓存都没有相应的映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器。
4)根域名服务器
5)顶级域名服务器
6)权威域名服务器
7)保存结果至缓存,同时将结果反馈给客户端。
2. 递归查询与迭代查询
1)主机向本地域名服务器的查询采用的是递归查询。
如果主机询问的本地域名服务器不知道被查询的域名的 IP 地址,那么本地域名服务器就向根域名服务器发出查询请求。
2)本地域名服务器向根域名服务器的查询采用的是迭代查询。
1) 本地域名服务器向根域名服务器发出的查询请求时,根域名服务器把自己所知道的“com”顶级域名服务器的的 IP 地址告诉本地域名服务器;
2) 本地域名服务器再向“com”顶级域名服务器发出查询请求,顶级域名服务器把自己所知道的“baidu.com”权威域名服务器的 IP 地址告诉本地域名服务器;
3) 本地域名服务器再向“baidu.com”权威域名服务器发出请求,权威域名服务器把www.baidu.com的 IP 地址告诉本地域名服务器。
最后,本地域名服务器把结果返回给主机。

DNS 解析过程的更多相关文章
- DNS解析过程
参考: http://www.maixj.net/ict/dns-chaxun-9208 http://blog.it985.com/8389.html DNS(Domain Name System) ...
- DNS解析过程和DNS挟持
1.DNS解析过程详解 1).在浏览器中输入一个域名,例如www.tmall.com,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析, ...
- (转)DNS解析过程详解
DNS解析过程详解 原文:http://blog.csdn.net/crazw/article/details/8986504 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的 ...
- DNS解析过程详解(转载)
DNS解析过程详解(转载) DNS Domain Name System 域名系统,它就是根据域名查出IP地址. 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址ww ...
- 浏览器与DNS解析过程
浏览器解析 1.地址栏输入地址后,浏览器检查自身DNS缓存 地址栏输入chrome://net-internals/#dns 查看. 2.浏览器缓存中未找到,那么Chrome会搜索操作系统自身的DNS ...
- DNS解析过程详解
先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com.(最后有一点),一般我们在浏览器里输入时会省略后面的点 ...
- DNS解析过程和域名收敛、域名发散、SPDY应用
前段时间项目要做域名收敛,糊里糊涂的完成了,好多原理不清晰,现在整理搜集下知识点. 域名收敛的目的是什么?简单来说就是域名解析慢.那为什么解析慢?且听下文慢慢道来. 什么是DNS? DNS( Doma ...
- 转载:DNS解析过程详解
2015-09-20 此好文是转载,如有侵权联系我,立马删掉 DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www.baidu.com在配置当中应该是www.baidu.com. ...
- DNS解析过程详解【转】
转自:http://blog.chinaunix.net/uid-28216282-id-3757849.html 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址www. ...
- DNS解析过程--笔试答题版
在运维笔试的时候,回答DNS解析的过程,不能写一大堆,一是不美观,二是浪费时间,应该怎么写呢?我觉得这样写比较好. 1.客户端:chche----hosts 2.DNS服务器:cache---递归-- ...
随机推荐
- Java中Stream流相关介绍
什么是Stream? Stream是JDK8 API的新成员,它允许以声明性方式处理数据集合 特点 代码简洁: 函数式编程写出的代码简洁且意图明确,使用stream接口让你从此告别for循环 多核友好 ...
- 一文学完makefile语法
一.开始 1.Hello World 新建一个makefile文件,写入如下内容, hello: echo "Hello World" clean: echo "clea ...
- [bug] Flask css 不更新
参考 https://blog.csdn.net/weixin_30454481/article/details/97108510
- [刷题] 70 Climbing Stairs
要求 楼梯共有n个台阶,每次上一个台阶或两个台阶,一共有多少种上楼梯的方法? 示例 输入:n=3 [1,1,1],[1,2,],[2,1] 输出:n=3 实现 自顶向下(递归) 递归 1 class ...
- 《SystemVerilog验证-测试平台编写指南》学习 - 第1章 验证导论
<SystemVerilog验证-测试平台编写指南>学习 - 第1章 验证导论 测试平台(testbench)的功能 方法学基础 1. 受约束的随机激励 2. 功能覆盖率 3. 分层的测试 ...
- ar是System Activity Reporter(系统活动情况报告)的缩写。这
ar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工具将对系统当前的状态就行取样,然后通过 ...
- Linux服务之nginx服务篇一(概念)
nginx官网:http://nginx.org/ 一. nginx和apache的区别 Nginx: 1.轻量级,采用 C 进行编写,同样的 web 服务,会占用更少的内存及资源. 2.抗并发,ng ...
- 11.14 mii-tool:管理网络接口的状态
mii-tool命令用于查看.管理网络接口,默认情况下网卡的状态是自动协商的,但是有时也会出现不正常的情况,可以使用mii-tool进行调整. mii-tool [option] [interface ...
- 按时按登录IP记录Linux所有用户操作日志的方法
背景:Linux用户操作记录一般通过命令history来查看历史记录,但是如果因为某人误操作了删除了重要的数据,这种情况下history命令就不会有什么作用了.以下方法可以实现通过记录登陆IP地址和所 ...
- 使用Tomcat插件控制台中文乱码解决方案(IDEA)(Day_51)
解决方案 1. File -> Settings... 2. 搜索 Runner (运行程序),在 'VM options:' 中添加:-Dfile.encoding=GB2312 注:GB23 ...