DNS

·  阅读 414
DNS

域名:由于IP地址不方便记忆,并且不能表达组织的名称和性质,人们设计出了域名(比如baidu.com) ,但实际上,为了能够访问到具体的主机,最终还是得知道目标主机的IP地址。

根据级别不同,域名可以分为:顶级域名(Top-level Domain,简称TLD) ;二级域名 ;三级域名 ...

域名系统(Domain Name System)是将域名转化为IP地址的网络协议。它作为将域名IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP协议和UDP协议,服务器占用53端口 。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

域名解析就是将域名转化为对应的 IP 地址,该工作由 DNS 服务器完成。

例如:baidu.com 作为一个域名就和IP地址220.181.38.148 相对应。DNS就像是一个自动的电话号码簿,我们可以直接拨打220.181.38.148 的名字baidu.com 来代替电话号码(IP地址)。DNS在我们直接调用网站的名字以后就会将像baidu.com 一样便于人类使用的名字转化成像220.181.38.148 一样便于机器识别的IP地址。

域名解析流程

  1. 客户端通过浏览器访问域名为 www.baidu.com 的网站,发起查询该域名的 IP 地址的 DNS 请求。该请求发送到了本地 DNS 服务器上。本地 DNS 服务器会首先查询它的缓存记录,如果缓存中有此条记录,就可以直接返回结果。如果没有,本地 DNS 服务器还要向 DNS 根服务器进行查询。

  2. 本地 DNS 服务器向根服务器发送 DNS 请求,请求域名为 www.baidu.com 的 IP 地址。

  3. 根服务器经过查询,没有记录该域名及 IP 地址的对应关系。但是会告诉本地 DNS 服务器,可以到域名服务器上继续查询,并给出域名服务器的地址(.com 服务器)。

  4. 本地 DNS 服务器向 .com 服务器发送 DNS 请求,请求域名 www.baidu.com 的 IP 地址。

  5.  .com 服务器收到请求后,不会直接返回域名和 IP 地址的对应关系,而是告诉本地 DNS 服务器,该域名可以在 baidu.com 域名服务器上进行解析获取 IP 地址,并告诉 baidu.com 域名服务器的地址。

  6. 本地 DNS 服务器向 baidu.com 域名服务器发送 DNS 请求,请求域名 www.baidu.com 的 IP 地址。

  7. baidu.com 服务器收到请求后,在自己的缓存表中发现了该域名和 IP 地址的对应关系,并将IP地址返回给本地 DNS 服务器。

  8. 本地 DNS 服务器将获取到与域名对应的 IP 地址返回给客户端,并且将域名和 IP 地址的对应关系保存在缓存中,以备下次别的用户查询时使用。

分类:
iOS
标签:
分类:
iOS
标签: