由114.114.114.114和8.8.8.8学习DNS

简介

DNS是Domain Name System,在互联网中通过IP地址来进行通信。但是IP地址的表示形式是数字,很难进行记忆(比如116.213.120.232),所以为每个 IP取一个人类更易记忆的域名形式(比如www.google.com),而通过DNS 来把解析域名成为 IP(将方便人理解的命名格式解析成计算机能够理解的格式,也可以将IP 翻译成域名)。

DNS服务的作用

将域名解析为IP 地址,客户端向DNS服务器(DNS服务器有自己的IP地址)发送域名查询请求,DNS服务器告知客户机Web服务器的IP 地址,客户机与Web 服务器通信。

DNS查询过程

通过分级管理可以有效的管理全球上亿的域名信息(类似于在公司中,CEO只管理各个部门的经理;各个部门的经理只管理自己部门中的各个组长;各个组长只管理自己组的组员。至少这是一种比较有效的管理方式)

例子

下面以一个客户机想要访问 www.benet.com 这个WEB服务器的过程来理解DNS的原理
由114.114.114.114和8.8.8.8学习DNS_第1张图片
1. 客户机(PC)向首选DNS服务器发起请求:”你知道www.benet.com的IP吗?“如果首选DNS服务器知道(一般如果首选DNS服务器曾经解析过,那么会进行一段时间内的缓存,默认三天,如果正好在缓存时间内,那么首选服务器就会知道这个域名的IP),那么首选DNS 服务器就会直接给客户机返回域名的IP 地址
2. 若首选DNS 服务器上没有相关信息,就不能直接返回域名的IP 地址,这时候,首选DNS 服务器就会去询问根DNS服务器(所有的DNS 服务器都知道全球的13 台DNS根服务器在哪里),根服务器可能不知道这个具体的 www.benet.com 的IP地址,但是它知道一级域 com 的IP(也就是说根服务器只负责维护所有的一级域,所以也就几百条数据在这里,虽然数据量少,但是它接受来自全球的请求,所以负载也很大)
3. 根服务器将com 的IP地址返回给 首选DNS 服务器
4. 首选DNS服务器再去请求 “com” DNS服务器:”你知道 www.benet.com的IP吗“,但是com DNS服务器也不知道 www.benet.com 的IP,但是com DNS 服务器知道 benet.com 的IP,
5. ”com“DNS服务器将这个信息返回给 首选DNS 服务器
6. 首选DNS服务器再去请求 “benet.com” DNS服务器,这时候 benet.com 服务器当然就会知道 www.benet.com的IP地址
7. ”benet.com“DNS服务器将这个信息返回给首选DNS 服务器
8. 首选DNS 服务器将获取到的 www.benet.com的IP返回给客户机
9. 客户机根据获取到的www.benet.com 的IP地址来访问WEB服务器
10. WEB服务器返回相关的数据

域名空间结构

由114.114.114.114和8.8.8.8学习DNS_第2张图片

DNS查询类型

从查询方式上分

  1. 递归查询:要么做出查询成功的响应,要么做出查询失败的响应。一般客户机和服务器之间属于递归查询,即当客户机向DNS 服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS 服务器发出查询的请求,得到结果后转交给客户机
  2. 迭代查询:服务器受到一次迭代查询回复一次结果,这个结果不一定是目标IP 与域名的映射关系,也可以时其他DNS服务器的地址(为了更进一步的获取目标IP)

从查询内容上分

  1. 正向查询由域名查询IP 地址
  2. 反向查询由IP 地址查询域名

114.114.114.114和8.8.8.8

两者的联系

  114.114.114.114和8.8.8.8,这两个IP地址都属于公共域名解析服务DNS其中的一部分,而且由于不是用于商业用途的,这两个DNS都很纯净,不用担心因ISP运营商导致的DNS劫持等问题,而且都是免费提供给用户使用的。

二者的区别

  1. 114.114.114.114
      114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用,干净无广告,解析成功率相对来说更高,国内用户使用的比较多,而且速度相对快、稳定,是国内用户上网常用的DNS
  2. 8.8.8.8
      8.8.8.8是GOOGLE公司提供的DNS,该地址是全球通用的,相对来说,更适合国外以及访问国外网站的用户使用

如何合理选择DNS

  DNS对于网民来说,就跟灯塔和航海人员的道理是一样的,选择合理的DNS可以有效的帮助我们防止DNS劫持、提升上网速度等,那么,如何合理的选择DNS呢?

  1、选择本地干净的DNS

  目前世界上的大中型网站都是采用CDN做内容分发的,从而可以确保用户就近的接入、提升访问速度,不少的网站会使用DNS作为识别,因此,如果本人在北京,却选择了上海的DNS,就有可能会被网站认为是上海的用户而引导到上海的服务器上去。

  不过所幸,现在的不少网站都根据IP地址来引导用户的。

  2、选择安全无毒、免费的DNS

  目前国内有不少的免费、安全而且无毒的DNS,常见的如百度提供的180.76.76.76、阿里提供的223.5.5.5和223.6.6.6、前文提到的114.114.114.114

你可能感兴趣的:(网络基础知识)