DNS协议
DNS服务器
在网络世界中,你肯定记得住网站的名称,但是很难记住网站的IP地址,因而也需要一个地址簿,就是DNS服务器。
由此可见,DNS在日常生活中多么重要。每个人上网,都需要访问它,但是同时,这对它来讲也是非常大的挑战。一旦它出了故障,整个互联网都将瘫痪。另外,上网的人分布在全世界各地,如果大家都去同一个地方访问某一台服务器,时延将会非常大。因而,DNS服务器,一定要设置成高可用、高并发和分布式的
。
于是就有了这样树状的层次结构。
根DNS服务器:返回顶级域DNS服务器的IP地址;
顶级域DNS服务器:返回权威DNS服务器的IP地址;
权威DNS服务器:返回相应主机的IP地址。
DNS解析流程
为了提高DNS的解析性能,很多网络都会就近部署DNS缓存服务器。于是,就有了以下的DNS解析流程。
- 电脑客户端会发出一个DNS请求,问
www.163.com
的IP是啥,并发给本地域名服务器(本地DNS)
。那本地域名服务器(本地DNS)是什么呢?如果是通过DHCP配置,本地DNS是由你的网络服务商,如电信、移动等自动分配,它通常在网络服务商的某个机房。 - 本地DNS收到来自客户端的请求。你可以想象这台服务器上缓存了一张域名与之对应IP地址的大表格。如果能找到
www.163.com
,它直接就返回IP地址。如果没有,本地DNS就回去问它的根域名服务器:“老大,能告诉我www.163.com
的 IP地址吗?”根域名服务器是最高层次,全球共有13套。他不直接用于域名解析,但能指明一条道路。 - 根DNS收到来自本地DNS的请求,发现后缀是 .com ,说 :“噢,
www.163.com
啊,这个域名是由.com区域管理,我给你它的顶级域名服务器地址,你去问问它把。” - 本地DNS转向问顶级域名服务器:“老二,你能告诉我
www.163.com
的IP地址吗?” 顶级域名服务器就是大名鼎鼎的比如.com、.net.、.org这些一级域名,它负责管理二级域名,比如163.com,所以他能提供一条更清晰的方向。 - 顶级域名服务器说:“我给你负责
www.163.com
区域的权威DNS服务器的地址,你去问他应该能问道。” - 本地DNS转向问权威DNS服务器:“您好,
www.163.com
对应的IP地址是啥?” 163.com的权威DNS服务器,它是域名解析结果的原出处。为啥叫权威呢?就是我的域名我做主。 - 权威DNS服务器查询后将对应的IP地址告诉本地DNS。
- 本地DNS再将IP地址返回客户端,客户端和目标建立连接。