DNS解析过程及DNS TTL值

标签: 网络系统 | 发表时间:2013-05-01 18:41 | 作者:simaopig
出处:http://www.blogread.cn/it/

标签:   DNS   TTL

   经常说DNS劫持,也常常说域名解析不正确。那么DNS解析的过程究竟如何?在阅读《HTTP权威指南》缓存一章时,提到缓存文档过期采用“生存时间技术”与DNS类似。所以抽空学习了解了一下DNS的解析过程,以及DNS TTL值的概念!

DNS相关知识

  • 根域名服务器(root-servers.org)是互联网域名解析系统(DNS)中最高级别的域名服务器,全球仅有13台根服务器。

  • 部分根域名服务器在全球设有多个镜像服务器

  • 任何域名解析都要经过这13台根服务器获得顶级索引,并不是说您访问 .com 会经过这些服务器,访问 .cn 就不经过这些服务器

  • 每一个顶级域,不管是gTLD(通用顶级域),还是ccTLD(国别顶级域),它们都有自己的域名服务器(即该顶级域的NS记录)

  •     根域名服务器全球分布图——Google Maps

    域名解析的步骤

       在输入网址后,域名解析通常所需步骤如下:

  • 第一步:客户机提出域名解析请求,查找本地HOST文件后将该请求发送给本地的域名服务器。

  • 第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。

  • 第三步:如果本地DNS缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址(例如请求域名为.com域,则返回负责.com域解析的主域名服务器——辅助服务器)。

  • 第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。

  • 第五步:重复第四步,直到找到正确的纪录。

  • 第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。

  •    文字可能很难理解,网民们是伟大的,看到这张图应该很形象的演示了上述过程:

        dns_resolving_2409

       本地DNS向其他DNS服务器发送的查询请求可能有:递归查询和迭代查询两种,示例如下:

        递归查询

        dns_resolving_2409

        迭代查询

        dns_resolving_2409

    DNS TTL值

       通过前文的说明,DNS会将最终域名解析的结果缓存至本地。那么当域名对应的解析IP变化时,如何保证用户的缓存快速过期?

       这就涉及到一个问题,域名在解析时设置的DNS缓存过期时间是多少——TTL(Time-To-Live)。

       TTL(Time-To-Live),简单的说它表示一条域名解析记录在DNS服务器上缓存时间.当各地的DNS服务器接受到解析请求时,就会向域名指定的DNS服务器发出解析请求从而获得解析记录;在获得这个记录之后,记录会在DNS服务器中保存一段时间,这段时间内如果再接到这个域名的解析请求,DNS服务器将不再向DNS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值。

       所以一般更新域名解析的步骤如下:

  • 先查看域名当前的TTL值。

  • 修改TTL值为可设定的最小值,建议为60秒。

  • 等待一天,保证各地的DNS服务器缓存都过期并更新了记录。

  • 设置修改DNS解析到新的记录,这个时候各地的DNS就能以最快的速度更新到新的记录。

  • 确认各地的DNS已经更新完成后,再TTL值设置成常用的值(如: TTL=86400)。

  •    不过为毛公司切换域名解析时速度飞快?这个明天得咨询一下孔总!

       看一下我这个xiaoxiaozi.com域名,在dnspod后台设置的ttl值示意图:

        dns_resolving_2409

    参考资料:

        维基百科——根域名服务器

        百度百科——域名解析词条

        百度知道——dns域名解析过程

        SOSO百科——根域名解析服务器

        DNS域名解析过程

        TTL值的含义以及与域名DNS TTL值的区别

您可能还对下面的文章感兴趣:

  1. nslookup通往DNS的桥梁 [2012-08-23 00:02:38]
  2. dig挖出DNS的秘密 [2012-08-22 23:36:47]
  3. DNS Prefetching 技术引入及实现方法 [2012-05-28 12:38:14]
  4. DNS [2012-01-24 13:32:17]
  5. CentOS下通过Webmin管理BIND实现DNS轮询 [2011-09-19 23:33:50]
  6. DNS 隧道 [2011-08-19 23:18:41]
  7. 强制刷新本地 DNS 缓存记录 [2011-02-07 00:11:18]
  8. 大型网站用户定位技术 [2011-01-05 22:45:41]
  9. public DNS servers [2010-08-24 09:32:40]
  10. Centos 下安装配置 PowerDNS [2010-03-24 23:32:49]
  11. 关于 SOCKS 代理的远端 DNS 解析 [2010-01-23 16:08:05]
  12. ubuntu 笔记之:如何修改dns [2009-11-18 13:43:50]

相关 [dns 解析 dns] 推荐:

DNS解析过程及DNS TTL值

- - IT技术博客大学习
标签:   DNS   TTL.    经常说DNS劫持,也常常说域名解析不正确. 在阅读《HTTP权威指南》缓存一章时,提到缓存文档过期采用“生存时间技术”与DNS类似. 所以抽空学习了解了一下DNS的解析过程,以及DNS TTL值的概念. 根域名服务器(root-servers.org)是互联网域名解析系统(DNS)中最高级别的域名服务器,全球仅有13台根服务器.

关闭MySQL的DNS反向解析

- - 天空极速
发现有非常多的 unauthenticated user 尝试做登入使用 mysql 的情況 ,当这种情况无限制发生时就会造成系统十分缓慢. 查阅mysql官方网站得知,这属于官方一个系统上的特殊设定,就把他当成mysql的一个bug算了. 不管链接的的方式是经过 hosts 或是 IP 的模式,他都会对 DNS 做反查 mysqld 会尝试去反查 IP -> dns ,由于反查解析过慢,就会无法应付过量的查询.

DNS原理及其解析过程

- - 操作系统 - ITeye博客
 网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址,而不能认识域名. 我们无法记住10个以上IP地址的网站,所以我们访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面,这是因为有一个叫“DNS服务器”的计算机自动把我们的域名“翻译”成了相应的IP地址,然后调出IP地址所对应的网页.

备用的dns

- - 互联网 - ITeye博客
下载软件 百度找出来了 居然被解析到了本地. cr173 被指向到了 127.0.0.1. 找遍了hosts 和路由器 最后才发现是万恶的联通. 阿里dns 速度和质量都不错. 百度dns 评测说较慢 备胎. 114DNS安全版 (114.114.114.119, 114.114.115.119).

Public DNS Tool-DNS切换工具

- - 无名小卒
Public DNS Tool v9.1下载: dbank| kuaipan| 官方. 无名小卒(Digital Fingerprint: b98c67913fef00419d415179421ab42f) Related Posts. Webluker-免费CDN、DNS解析和网站监控服务.

新网DNS故障

- - 月光微博客
  新网的DNS服务今天出现长时间故障,包括新网自身在内的大量域名都无法解析,导致网站无法打开,例如使用新网服务的jiathis等网站域名都无法解析.   做为一个域名服务商,DNS发生如此长时间的故障,并且导致客户的域名无法解析,实在太不应该了.   建议新网的客户对新网进行集体诉讼,或者干脆把域名转走算了.

DNS服务-详解

- - 操作系统 - ITeye博客
DNS(Domain Name System)域名系统,在TCP/IP网络中有非常重要的地位,能够提供域名与IP地址的解析服务. <1> 客户机提交域名解析请求,并将该请求发送给本地的域名服务器. <2> 当本地的域名服务器收到请求后,就先查询本地的缓存. 如果有查询的DNS信息记录,则直接返回查询的结果.

Chrome和Proxy Switchy支持远程DNS解析

- 洋白菜 - 月光微博客
  以前的Chrome因为没有远程域名解析功能,所以一般都开着一个Firefox作为代理备用. 但是Firefox占用资源太大,总是想换.   现在发现,原来Chrome不知道什么时候已经添加了远程域名解析功能,使用 Proxy Switchy 设置 Socks5 代理之后,访问自动会启用远程DNS解析,不用设置就行,经过测试访问Facebook、Twitter、Youtube等网站均无问题.

修改windows XP 的 VPN域名解析DNS优先级

- 桔子 - iGFW
XP包括之前的系统拨入VPN后,会发现VPN接口配置的DNS的优先级不够而无法对内部主机进行解析. 导致虽然已经连上了vpn但是但是无法打开youtube、twitter等网站,因为系统默认的DNS还是原来的本地连接的DNS,依旧被劫持中. 而通过修改注册表值即可解决这个问题. 1.    点击开始, 点击运行, 键入REGEDIT, 然后按确定.

如何让Godaddy域名使用DNSPod做DNS解析

- - 大猫の意淫筆記
貌似越来越多的godaddy DNS 服务器被区域性的干扰导致无法使用,那么,推荐大家一个国内的优秀免费DNS提供商 dnspod.cn. 第一步,进入Godaddy的域名管理界面. 第二步,点要设置DNS的域名. 第三步,点 Set Nameservers. 第四步,输入DNSPOD.cn 提供的2组DNS服务器地址.