最后更新:2020-03-24 13:04:11 手机定位技术交流文章
又是招聘季节。两天前我遇到了一个小采访伙伴。他说,采访者和他进行了一次非常投机的谈话,无意中谈到了域名系统请求过程。他一时说不出话来,随口应付了两句。虽然对方并不想问,但最终的面试结果也不理想。基于面试时的学习态度,让我们来看看DNS请求过程中涉及的定义和原则。
的含义和结构众所周知。IP用于识别互联网中的服务器。虽然IP地址可以代表一个设备,但是很难记住它,所以它被一个可以理解和识别的名称所代替。这个名字叫做域名。例如,www.toutiao.com是一个域名。域名后面将定义一个指向网站服务器的IP地址。然后问题出现了,谁来做从域名到IP地址的映射?答案是通过域名系统
域名系统是域名系统(缩写为域名系统),是互联网的一项服务。它是一个分布式数据库,将域名和IP地址相互映射,并在数据库中保存域名和IP之间的比较,从而使人们更容易访问互联网。
域名解析以分布式方式存储。在结构上,顶级域名服务器是根域名服务器,它存储260个顶级域名服务器的IP地址。对于Ipv4,世界上有13个根域名服务器,它们存储每个域的分辨率(例如。com。net。cn)和域名服务器的地址信息。简而言之,根域名服务器存储顶级域名服务器地址
是根域名服务器下一级的顶级域名服务器例如,的域名服务器。com存储一些一级域名(如toutiao.com的域名系统)的权威域名系统服务器地址
顶级域名也称为一级域名。顶级域名可分为三类,即gTLD、ccTLD和新gTLD:
gTLD:通用顶级域名(gTLD),例如:。com/。net/。org等。都属于全球贸易点;例如,中国是一个. cn域名,日本是一个. jp域名;新gTLD:新gTLD,例如:。xyz/。top/。红色/。帮助顶级域名服务器根据以上三个类别存储与域名对应的数据
位于顶级域名服务器的较低级别。本地域名系统一般是运营商的域名系统,其主要功能是代表用户分析域名。
如图1所示,域名服务器分为三级,从上到下分别是根域名服务器(根域名服务器)、顶级域名服务器(gTLD、ccTLD、新gTLD)和本地域名服务器(本地域名服务器)

域名解析原理
在讨论了域名系统的结构后,我们再来谈谈它的工作原理通过用户访问网页的过程,描述了域名解析和网址到IP地址映射的全过程。其中,过程更为复杂,而且会有信息来回传递。在绘制过程中,我们将简化信息来回传递的线段,重点关注信息传递的路径,并通过9个步骤解释域名解析过程

图2中用户请求和域名解析的全过程
①用户请求通过浏览器输入待访问网站的地址,如www.toutiao.com浏览器将在自己的缓存中查找对应于该网址的IP地址。如果您以前访问过并保存了与此网址对应的IP地址的缓存,您将直接访问该IP地址。如果没有缓存,请继续执行步骤2
②网址和ip地址之间的映射关系可以通过计算机本地的主机文件配置来设置例如,windows是通过C:WinDWOS System32 DriveRetChosts文件设置的,而linux是/etc/named.confg文件在此处查找本地主机文件,查看它是否是一个具有IP地址的缓存如果在文件中没有找到映射关系,请继续步骤3。
③请求本地域名服务器通过本地运营商获取网址和ip的映射关系。如果是在校园网,域名服务器在学校;如果是在蜂窝网络中,则由运营商提供DNS服务器。简而言之,该服务器在物理上更靠近发出请求的计算机本地域名服务器缓存了大量域名解析结果。由于其更好的性能和更近的物理距离,它通常在很短的时间内返回指定域名的解析结果。该步骤满足80%的域名解析要求如果在此步骤中没有完成域名解析,请进入步骤4
④,通过根域名服务器进行解析,根域名服务器将根据请求的网址返回本地域名服务器的顶级域名服务器的地址。例如,如果您正在查询的域名。您可以查询对应于gTL的域名服务器的地址。返回顶级域名服务器的地址后,
⑤访问相应的顶级域名服务器(gTLD、ccTLD、新gTLD),并返回域名服务器的地址该域名服务器是网站注册的域名服务器,包含网站网址和IP的相应信息例如,如果您向域名服务提供商申请域名,域名将由他们的服务器解析。此名称服务器由域名提供商维护。
⑥域名服务器将把指定域名的A记录或CNAME返回给本地域名服务器,并设置一个TTL
A(地址)记录是用于指定主机名(或域名)的IP地址记录用户可以将该域名下的网络服务器指向他们自己的网络服务器。您还可以设置域名的辅助域名。CNAME:别名记录该记录允许您将多个名称映射到另一个域名通常用于同时提供万维网和邮件服务的计算机例如,有一台名为“主机我的域名”的计算机它同时提供万维网和邮件服务,以方便用户访问服务从方便维护的角度来看,服务提供商也普遍建议用户使用CNAME记录来绑定域名如果主机使用双线IP,显然使用CNAME更容易生存时间:这是为了在本地域名服务器上设置该域名解析的到期时间。如果超过此到期时间,将删除网址和IP之间的映射,并在获取时请求名称服务器。⑦如果您此时获得了A记录,您可以直接访问网站的知识产权。然而,一般来说,大型网站将返回CNAME,并将其发送到GTM服务器。
GTM(全球流量管理器的缩写)是指全球流量管理,它基于网络主机的智能域名系统和分布式监控系统,实现实时故障转移和全球负载平衡,并确保应用服务的持续高可用性。转移到GTM的目的是帮助用户通过GTM的负载平衡机制找到最合适的服务器IP。
是最接近自己的,具有最佳性能和最健康的服务器状态而且大多数网站都会做CDN缓存,所以GTM更有必要帮助你在网络节点中找到一个合适的CDN缓存服务器。
⑧找到CDN缓存服务器后,您可以直接从服务器上获取一些静态资源,如超文本标记语言、CSS、JS和图片但是一些动态资源,如商品信息和订单信息,需要经过第9步。
⑨无缓存的动态资源需要从应用服务器获取。负载平衡器层通常负责应用服务器和互联网之间的反向代理它被路由到应用服务器
摘要
域名解析服务器用于网址和IP地址解析,以帮助用户找到访问服务器的IP从域名服务器的结构来看,大致可以分为三层:根域名服务器、顶级域名服务器和本地域名服务器申请域名的
提供商将提供域名服务器作为域名解析。从用户访问的网站开始,通过浏览器、本地主机文件、本地域名服务器、根域名服务器、顶级域名服务器(gTLD、ccTLD、新gTLD)、域名服务器、GTM、CDN、应用服务器它经历了九个步骤作者:崔豪
简介:16年的开发和架构经验,曾担任惠普武汉交付中心的技术专家、需求分析师和项目经理,后担任初创公司的技术/产品经理。善于学习,乐于分享目前,它侧重于技术框架和研发管理。
编者:陶家龙
草稿:凡提交文章并有兴趣报道的,请联系编者@51cto.com
本文由 在线网速测试 整理编辑,转载请注明出处。