DNS访问原理是什么

技术DNS访问原理是什么DNS访问原理是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前两天遇到一个面试的小伙伴,他说面试官和他聊得很投机,无意中谈

DNS访问的原理是什么?针对这个问题,本文详细介绍了相应的分析和解答,希望能帮助更多想要解决这个问题的小伙伴找到更简单易行的方法。

两天前,我遇到了一个面试伙伴。他说面试官跟他聊得很投机,不经意间聊到了DNS请求的过程。当时他无言以对,随便应付了两句。虽然对方不是有意提问,但最终面试结果却不尽如人意。在边面试边学习的态度中,我们来看看DNS请求过程中涉及的定义和原则。

DNS 的含义和结构

众所周知,IP是用来识别互联网中的服务器的。IP地址虽然可以代表一个设备,但是很难记住,所以被一个可以理解和识别的名字代替,我们称之为域名。例如,www.51cto.com是一个域名,将在域名后定义一个IP地址,指向网站服务器。那么问题来了,谁来做这个从域名到IP地址的映射呢?答案是通过DNS。

域名系统是互联网的一项服务。它是一个分布式数据库,域名和ip地址相互映射,域名和IP的比较关系保存在数据库中,人们可以更方便地访问互联网。DNS解析是分布式存储。从结构上看,顶层是ROOT DNS服务器,存储260个顶级域名服务器的IP地址。对于Ipv4,世界上有13个根域名服务器,它们存储每个域的解析(例如。com。净。cn)和域名服务器的地址信息。简单来说,根域名服务器存储顶级域名服务器的地址。

顶级域名又称一级域名,可分为三类,即gTLD、ccTLD和新gTLD:

GTLD:通用顶级域(GTLD),例如:com/。net/。org,都属于gtlds

ccTLD:国家代码顶级域名(简称CcTLD),比如中国是. cn域名,日本是. jp域名;

新gTLD:新的顶级域名(新gTLD),如。xyz/。top/。红色/。帮助等。

顶级域名服务器根据以上三类存储域名IP对应的数据。

在顶级域名服务器以下的级别,本地域名服务器(Local DNS)一般是运营商的DNS,其主要功能是代表用户进行域名分析。

如图1所示,DNS域名服务器分为三级,从上到下分别是根域名服务器、顶级域名服务器(gTLD、ccTLD、新gTLD)和本地域名服务器。

DNS访问原理是什么

图1域名系统层次结构

00-1010在完成了DNS的结构之后,我们来说说它的工作原理。通过用户访问网页的过程,描述了DNS解析和获取URL到IP映射的整个过程。这个过程很复杂,会有信息来回传递。在绘制的过程中,我们将信息来回传递的线段简化,聚焦信息传递的路径,通过9个步骤讲解DNS解析过程。DNS访问原理是什么

图2用户请求和DNS解析的全过程

1.用户请求通过浏览器输入要访问的网站地址,例如www.51cto.com。浏览器会在自己的缓存中查找对应于该网址的IP地址。如果你之前访问过并保存了这个网址对应的IP地址的缓存,那么你可以直接访问这个IP地址。如果没有缓存,请转到步骤2。

2.通过计算机的本地主机文件配置,可以设置URL和ip地址之间的映射关系。比如在windows下由c : \ wind wos \ system32 \ driver \ etc \ hosts文件设置,在linux下由/etc/named.confg文件设置。在这里,查找本地主机文件,看看它是否是一个带有IP地址的缓存。如果在文件中仍未找到映射关系,请转到步骤3。

3.请求本地DNS服务器通过本地运营商获取URL和ip的映射关系。如果在校园网,DNS服务器在学校;如果在社区网络中,DNS服务器由运营商提供。简而言之,该服务器在物理上靠近发出请求的计算机。本地域名系统服务器缓存大量域名系统解析结果。由于性能好,物理距离近,通常会在短时间内返回指定域名的解析结果。该步骤满足80%的DNS解析要求。如果在此步骤中仍未完成DNS解析,请转到步骤4。

4.由根域名服务器解析,根域名服务器将根据请求的网址返回本地域名服务器顶级域名服务器的地址。例如,如果您查询的域名为”。com”,您将查询gTL对应的域名服务器的地址。

5.返回顶级域名服务器

地址以后,访问对应的顶级域名服务器(gTLD、ccTLD、New gTLD),并且返回Name Server服务器地址。这个Name Server就是网站注册的域名服务器,上面包含了网站URL和IP的对应信息。例如你在某个域名服务提供商申请的域名,这个域名就由他们的服务器来解析。这个Name Server是由域名提供商维护的。

6、Name Server会把指定域名的A记录或者CNAME返回给Local DNS Server,并且设置一个TTL。

  • A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。 用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置您域名的二级域名。
  • CNAME:别名记录。这种记录允许您将多个名字映射到另外一个域名。通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。它同时提供WWW和MAIL服务,为了便于用户访问服务。服务商从方便维护的角度,一般也建议用户使用CNAME记录绑定域名的。如果主机使用了双线IP,显然使用CNAME也要方便一些。
  • TTL(Time To Live):也就是设置这个DNS解析在Local DNS Server上面的过期时间。超过了这个过期时间,URL和IP的映射就会被删除,需要获取还要请求Name Server。

7、如果此时获取的是A记录,那么就可以直接访问网站的IP了。但是通常来说大型的网站都会返回CNAME,然后将其传给GTM Server。

GTM(Global Traffic Manager的简写)即全局流量管理,基于网宿智能DNS、分布式监控体系,实现实时故障切换及全球负载均衡,保障应用服务的持续高可用性。传给GTM的目的就是希望通过GTM的负载均衡机制,帮助用户找到最适合自己的服务器IP。

也就是离自己最近,性能最好,服务器状态最健康的。而且大多数的网站会做CDN缓存,此时就更需要使用GTM帮你找到网络节点中适合你的CDN缓存服务器。

8、找到CDN缓存服务器以后,可以直接从服务器上面获取一些静态资源,例如:HTML、CSS、JS和图片。但是一些动态资源,例如商品信息,订单信息,需要通过第9步。

9、对于没有缓存的动态资源需要从应用服务器获取,在应用服务器与互联网之间通常有一层负载均衡器负责反向代理。有它路由到应用服务器上。

DNS服务器是用来做URL与IP地址解析的,帮助用户找到要访问服务器的IP。从DNS服务器的结构来说大致分为三层:根域名服务器,顶级域名服务器,本地域名服务器。

申请域名的供应商会提供Name Server作为DNS解析。从用户访问一个网站出发,经过浏览器,本地Host文件、Local DNS Server、Root DNS Server、顶级域名服务器(gTLD、ccTLD、New gTLD)、Name Server、GTM、CDN、Application Server。

关于DNS访问原理是什么问题的解答就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/132970.html

(0)

相关推荐

  • 如何清洗,如何清洁饮水机才最干净

    技术如何清洗,如何清洁饮水机才最干净饮水机使用长了,就会有很多的污垢,容易产生细菌,那么如何清洗呢如何清洗?现在我来教给大家,希望能帮到您::第一步:断开饮水机的电源,把饮水机中残留的水放干净,一般饮水机后面都有放水口,

    生活 2021年10月28日
  • 龙虾怎么洗简单又干净,怎样杀小龙虾,洗小龙虾

    技术龙虾怎么洗简单又干净,怎样杀小龙虾,洗小龙虾小龙虾清洗起来很麻烦,特别是那两个大钳子很具有威慑力,让人都不知道该怎么拿捏清洗龙虾怎么洗简单又干净。 步骤如下:
    1、先盐水养半小时很多龙虾生存的水域都不太干净,而且龙

    生活 2021年10月30日
  • 如何理解微服务与DevOps

    技术如何理解微服务与DevOps本篇内容介绍了“如何理解微服务与DevOps”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成

    攻略 2021年10月19日
  • 偶数的概念,奇数和偶数的概念0是什么数

    技术偶数的概念,奇数和偶数的概念0是什么数1993年我国颁布的《中华人民共和国国家标准》(GB3100-3102-93)《量和单位》(11-2.9)P311页,规定自然数包括0。在以往的教学中,关于自然数的组成,有两种情

    生活 2021年10月24日
  • jmeter使用方法(jmeter基本使用教程)

    技术jmeter基本使用方法是什么这篇文章主要介绍“jmeter基本使用方法是什么”,在日常操作中,相信很多人在jmeter基本使用方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”

    攻略 2021年12月18日
  • 编程中常用正则表达式有哪些

    技术编程中常用正则表达式有哪些这篇文章将为大家详细讲解有关编程中常用正则表达式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、校验数字的表达式1 数字:^[0-9]*$2 n位

    攻略 2021年11月23日