DNS剖析过程详解

程序员 2024-9-27 05:51:54 127 0 来自 中国
一、DNS名词解释

域名,是由一串用点分隔的名字构成的Internet上某一台盘算机或盘算机组的名称,用于在数据传输时对盘算机的定位标识。
DNS,全称Domain Name System,中文名为域名体系,是因特网的一项核心折务,它作为可以将域名和IP地点相互映射的一个分布式数据库,可以大概使人更方便地访问互联网,而不消去记取可以大概被呆板直接读取的IP数串。
以淘宝为例,www.taobao.com就是域名,但盘算机并不能直接根据域名找到淘宝,必须转化成101.89.125.239(IPV4)或240e:e1:f300:1:3::3f9(IPV6)如许的IP地点才气准确读取,而且这边的ip地点大概会随着时间、网络、呆板的变革而变革。
二、DNS剖析过程

1、 当地剖析

用户在本机欣赏器输入www.taobao.com后,盘算机遇先在当地举行剖析(图中为①),这里会分成三小步:

  • 1)、先到欣赏器的DNS缓存中查询是否有对应记录,如有则直接返回ip地点,完成剖析,如果没有则下一步;
  • 2)、接着会举行一个判定:软件是否或欣赏器是否举行域名直接查询。如果有的话,会直接连到软件服务商提供的DNS服务器上,并返回IP;如果没有,则继续查询利用体系的缓存:如有则直接返回ip地点,完成剖析,如果没有则下一步;
  • 3)、末了查察当地host文件,好比windows的host文件一般位于“C:\Windows\System32\drivers\etc”,如果这里也没有的话就须要到当地dns服务器上查找了。
2、 当地dns服务器(简称LDNS)

包罗两部门:缓存服务器和递归服务器。

  • 1)、缓存服务器有2种,一种是公共DNS服务器,好比114 DNS(114.114.114.114)、Google DNS(8.8.8.8);另一种是当地运营商提供的DNS服务器,好比我们上海电信的DNS服务器包罗202.96.209.5、202.96.209.133、116.228.111.118和180.168.255.118。普通用户利用的都是运营商的当地区名服务器,这些服务器一般架设在离用户不远的地方,而且性能都很好,以是一般都会缓存域名剖析结果,约莫80%的域名剖析都会在这一步完成(图中为②)。
  • 2)、如果缓存服务器无法找到对应IP,则会把信息转达给递归服务器。
3、 根域名服务器

当信息转达给递归服务器后,会根据内置的根域名服务器ip地点,寻求根域名服务器的资助::

  • 1)、dns域名服务器一般分3种,分别是根域名服务器(.)、顶级域名服务器(.com)、权势巨子域名服务器。
  • 2)、举世一共有13组根域名服务器(注:这里并不是指13台服务器,是指13个ip地点,按字母a-m编号),根域名服务器不会直接剖析域名,二十把差别的剖析哀求分配给下面的别的服务器来完成,下面是dns域名体系的树状结构图:


  • 3)、以www.taobao.com为例,当根域名接收到当地dns的剖析哀求后,获知后缀是.com,于是就把负责.com的顶级域名服务器ip地点返回给当地dns(图中为③和④)。
  • 4)、当地dns得到返回的ip地点,再去找对应的顶级域名服务器,顶级域名又把负责该域名的权势巨子服务器ip返回给当地dns(图中为⑤和⑥)。
  • 5)、末了,当地dns根据ip找到对应的权势巨子服务器,权势巨子服务器把对应的主机ip返回给当地dns,至此完成了域名剖析的全过程(图中为⑦和⑧)。
三、DNS资源记录范例

DNS的资源记录范例告急包罗6种,如下表所示:
记录名中文名作用A、AAAA主机记录阐明一个域名对应的IP是多少,它是域名和IP地点的对应关系。Ipv4利用的是A记录,ipv6利用的是AAAA记录NS名称服务器记录阐明这个地区有哪些DNS服务器负责剖析SOA起始授权记录阐明负责剖析的DNS服务器中哪一个是主服务器MX邮件交换记录告急用于邮件服务器DNS交互,资助电子邮件精确到达邮件服务器Cname别名记录用于为当前地区之外的资源提供别名SRV服务器资源记录阐明一个服务器可以大概提供什么样的服务PTR指针记录是A记录的逆向记录,作用是把IP地点剖析为域名四、 DNS剖析过程实例

在Linux中,可以利用dig下令将DNS剖析过程显现出来。
1、 dig +trace

dig +trace可以体现全部的DNS服务器跟踪记录,如下图所示:

阐明:dig +trace @8.8.8.8 www.baidu.com,是指在谷歌的域名服务器内探求www.baidu.com的ip地点,可以从上图看到,起首是从root-servers也就是根域名服务器开始探求的。
5.png 阐明:然后开始在顶级域名服务器(.com)中探求。
阐明:继续从权势巨子域名服务器(baidu.com)中探求。
7.png 阐明:末了查到百度的CNAME是www.a.shifen.com。
2、 dig @202.96.209.5 www.baidu.com

阐明:

  • 1)、202.96.209.5是上海电信的当地DNS服务器,和之前的下令一样,末了同样查到www.baidu.com的CNAME是www.a.shifen.com,而对应的IP地点为180.101.49.11/12。
  • 2)、在DNS中,有一个很告急的概念是TTL(TIME TO LIVE),也就是生存时间,指的是域名和IP地点对应关系的保存时间。如果不停生存或TTL设置时间太长服务器空间会不敷,不生存或TTL设置时间太短则会重复剖析浪费带宽而且查询时间较长。差别的欣赏器、体系和服务器都会有差别的尺度,在欣赏器中Chrome和Firefox的TTL设置时间默以为1分钟,而IE为30分钟。域名服务器的TTL设置尺度一般如下图:
运营商的当地DNS服务器的TTL值一般设置为300秒。
参考:
https://blog.csdn.net/weixin_42029733/article/details/105656665
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-27 12:13, Processed in 0.201486 second(s), 35 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表