先说明,本文只适合采购同学,并非专业的技术贴,技术同学请查看专业贴。
DNS域名解析的过程就是你输入一个网址(一个网站域名)之后如何访问到目标网站的过程。
它和你去图书馆借书的过程类似,每本书就是你要访问的某个具体的网站。每本书的具体位置就相当于这个网站服务器的IP地址。现在你只知道一个书名,甚至只知道书名中大概的字段,那么你是如何在万千书海中寻找到你要的书的?
我们一般通过图书馆的检索系统寻找,先通过书名或者关键字搜索到你需要的目标书籍,然后你能找到目标图书的存放位置,比如“5F24排7架3层”代表在图书馆的第5层楼,第24排的7号书架的第三层隔板上,然后你可以迅速的找到这个架子的位置,并轻松的找到你想要的书。
类似的,互联网的每一台主机都有一个IP地址,IP地址就是用来标识设备在网络中的地址的。一般IPv4是纯数字,IPv6的是数字+字母形式。但是对于连电话号码都记不住的你我,又怎么能记得下来每台设备的IP地址呢,因此我们就只记网站名称,然后通过搜索引擎找到网站地址,或者直接在浏览器中输入网站地址(域名)就好。但是为什么网站域名能访问到目标服务器?因为网站域名和IP地址是对应的,计算机进行DNS解析,就好比上面例子中通过一本书的书名就在检索系统中找到对应的书籍存放地址。通过DNS域名解析,能通过网站地址定位到对应到它的主机IP,访问目标主机便能返回网站信息。
那么具体是怎么找到主机IP的呢。这个过程其实远比我们去图书馆查询一本书的过程复杂的多,下面我们通俗的举例聊一聊,比如一个网站的域名:www.sudun.com
当我们输入该网址后,浏览器会先去缓存内看看、以及本地文件内是否有对应的域名的IP地址记录,如果有就直接访问。如果没有,浏览器就会向解析器发送域名解析请求。解析器调用网络功能访问DNS服务器查询IP地址,这个过程就像很早之前你去邮局查询某个单位的电话号码类似。DNS服务器一般是由运营商负责管理。我们的解析器一般访问的是离我们最近的DNS服务器,这台服务器也会首先查询自己的缓存,如果有就直接返回该地址,如果没有,那么就会逐级访问根域名服务器、com域名服务器、二级域名服务器、权威名称服务器等最终获得到目标地址。于是浏览器就可以按照这个地址访问目标网站的主机了。
其中的数据通讯传输过程分两种:递归传输和迭代传输。
递归传输,就是向某个服务器发送解析请求,最后返回对应的IP地址就行。至于你这个IP地址是怎么来的,是通过哪些服务器访问后得来的我却不关心。通俗的说就是我要你给我办证,但是具体你是怎么办的我不关心,你只要给我证就行。
迭代传输,就是想某个服务器发送解析请求,你不但要给我返回对应的IP地址,你还要把过程反馈给我。通俗的说就是我要办证,你要每一步告诉我步骤和进度,并最后给我证。
具体过程其实比我介绍的更复杂,作为采购的同学是不需要详细掌握的,了解下即可,便于在实际工作中,对业务需求的迅速理解。但是如果你特别感兴趣,可以自行了解学习。
注意,补充说明两点:
1. 每个网站并不是只有一个IP,每个公司的网站都有很多域名,如www是主站、mail是邮箱、member是会员等等,所有的域名都会由一个根管理,而一个根是有一个服务器集群组成的。就好比你要去的是某个大学的文学系,但是其实人家还有很多其他的系,甚至还有学生处、教师工会、学校图书馆、后勤等等很多部门,但是不管是哪个部门都归这个大学领导班子集中领导。
2. 一个IP地址并不仅仅代表一台服务器,特别是在CDN技术的应用下,可能同一个域名在不同的地方都分布着服务器节点,而这些节点共用一个IP地址,在通信的过程中,利用任播技术就近安排服务器进行相应,如果碰到了流量井喷,还可以利用负载均衡技术把流量分流到相同IP的其他服务器节点。
原创文章,作者:速盾高防cdn,如若转载,请注明出处:https://www.sudun.com/ask/93642.html