

10分钟的含义是本地DNS服务器对于域名的缓存时间是10分钟。1. 本地的 DNS 客户端向服务器发出解析dsplabs.io 域名的请求2. 解析服务器首先会向附近的根DNS 服务器请求顶级域名DNS 服务io的地址3. 根DNS服务返回顶级顶级域名 io 的服务地址4. 解析服务器向顶级域名服务请求dsplabs.io 域名解析服务5. 顶级域名服务返回dsplabs.io 对应的命名服务地址6. 向命名服务请求dsplabs.io的解析服务。

简单的说DNS 是一个分布式的树状命名系统,一个去中心化的分布式数据库,存储着从url到 IP 地址的映射,人们通过特定的字符串(url)就可以找到对应的IP地址。它就像互联网上的电话本,当你的浏览器想找到Google时,DNS在自己的数据库中会找到Google对应的IP地址,然后告诉浏览器它该向哪个地址发出请求。

1. 本地的 DNS 客户端向服务器发出解析dsplabs.io 域名的请求
2. 解析服务器首先会向附近的根DNS 服务器请求顶级域名DNS 服务io的地址
3. 根DNS服务返回顶级顶级域名 io 的服务地址
4. 解析服务器向顶级域名服务请求dsplabs.io 域名解析服务
5. 顶级域名服务返回dsplabs.io 对应的命名服务地址
6. 向命名服务请求dsplabs.io的解析服务,
7. 命名服务器根据记录向客户端返回域名对应的 IP 地址
8. 解析服务器向客户端返回具体IP地址
从上面的流程我们可以发现,DNS是一种类似目录型的服务,查找IP地址的过程就像在一本通讯录中找到电话号码。实际上一个域名有可能对应很多个IP地址信息。作为一种每天会被属于百亿次调用的服务,DNS在互联网中以一种中心化治理,分布式部署的方式进行运作。域名具有可读性,因此人们设计了一套命名规则规范地址的组成,并要求DNS地址在中心化服务器中注册,同时地址拥有自己的有效时间,超过有效时间的域名就不能被正常解析。互联网域名系统由名称注册机构负责维护分配由组织和国家/地区的顶级域在 Internet 上进行管理。 顶级域名主要由英文缩写组成,比如com,edu, net,gov,cn等等。
每次请求地址时也不都是需要上面八个步骤才能请求到真实的IP地址,那样上网时延时会特别明显,在DNS服务器中,都会对最近访问的数据进行缓存,好比导航地图的缓存,不用每次去请求上一级DNS服务,只在本地查找就直接返回解析内容,大大提高了服务效率。这里我们要提到TTL(Time To Live)参数,它告诉本地DNS服务器,域名缓存的最长时间。一般解析默认的TTL是10分钟,10分钟的含义是本地DNS服务器对于域名的缓存时间是10分钟,10分钟之后,服务器就会删除这条记录,删除之后,如果有用户访问这个域名,就要重复一遍上述流程。因为互联网上的DNS服务器是按照目录层次安排的,每一个域名服务器只对域名体系中的一部分进行管辖,因此每个服务器内部每天都在进行域名数据的同步,缓存,更新操作。