大家好,今天小编关注到一个比较有意思的话题,就是关于域名服务器查询的问题,于是小编就整理了2个相关介绍域名服务器查询的解答,让我们一起看看吧。
dns根据域名服务器的配置方式,***用哪两种查询?
DNS的两种域名解析方式:分布域名解析;集中式域名解析 区别及特点:
1、分布域名解析 是指分在客户端上维护一个静态的文本文件,其中包含主机名和IP地址的映射。随着网络规模的扩大,分布式分辨率的有效性越来越低。
2、集中式域名解析 要求网络中有多台DNS服务器,负责维护域名/IP地址映射数据库。客户端从指定的服务器获取域名的地址信息。一旦客户端指定的DNS服务器不包含相应的数据,DNS服务器就会在网络中进行递归查询,并获取其他服务器上的地址信息。
DNS根服务器里存了世界上所有的域名吗?
DNS根服务器里并没有存放世界上所有的域名。原因如下:
我们发消息、发邮件、看***、浏览网页等等一系列的操作和快递类似。
举个例子:
浏览一个网页时,在浏览器的地址栏输入网址(域名),按下回车键,不到一秒钟的时间,网站的内容就展现在了屏幕上了。
这个过程简单点说就是电脑告诉网站的服务器:“我要网站的那些东西,赶紧发给我”。然后网站服务器按照要求,再把数据传给电脑。
但在这样一个简单的流程中,电脑首先遇到的第一个问题:该怎么找到这个网站的服务器呢?
01
这和寄快递一样,有了准确的地址,才能寄快递到对方手上。
在互联网上也是这样,每台设备(手机、电脑等)都需要一个地址才能找到目的地。这个地址就是IP地址,有了这个地址、电脑、手机这些设备就能找到对方。
目前IPV4地址已经枯竭了,所以现在在逐渐往IPV6地址开始过渡。
02
但在地址栏输入的并非IP地址而是域名。域名就等于小区、学校、商店的名字,主要是为了便于大家记忆。
如果仅仅知道一个名字,是没有办法把快递寄出去,还需要知道这个名字(域名)对应的是哪个省哪个市哪条街道多少号(IP地址)。所以我们按下回车键之后,要先通过DNS服务器查到这个域名对应的IP地址是多少。DNS服务器相当于一个查号台,报一个企业的名字,查号台就告诉我们对应的电话号码和地址。
那电脑要在哪里找到DNS服务器呢?
在网络属性里面,咱们能看到。
联网后电脑会自动获取宽带运营商DNS服务器的IP地址,也可以去自己指定的公共DNS服务器查询。
所以按下回车键之后,电脑会根据域名找DNS服务器,查询(解析)这个域名所对应的IP地址,如果能查到的话,DNS服务器就会把IP地址发回来,如果这台DNS服务器查不到,它就会去问它上面的根域名服务器。
如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文。
- 本地域名服务器向根域名服务器的查询通常是***用迭代查询。
当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。
根域名服务器
全球只有13台IPV4根服务器,但为了缓解压力,也会镜像出很多根域名服务器,所以加上镜像出来的根域名服务器,全球大概有一千多台。
13台根服务器以任播技术在全球多个地点设立镜像站,全部根服务器都是以同一份根域文件返回顶级域名权威服务器(包括通用顶级域和国家顶级域)。根域名服务器中虽然没有每个域名的具体信息,但储存了负责每个域(如:***、.xyz、.cn、.ren、.top等)的解析的域名服务器的地址信息,如同通过北京电信你问不到广州市某单位的电话号码,但是北京电信可以告诉你去查020114。
每个本地域名服务器都维护一个高速缓存,存放最近用过的名字以及从何处获得名字映射信息的记录。
最后,终于问到了这个域名对应的IP地址是多少,就可以开始和网站的服务器进行联系。
本地电脑和服务器联系的过程(有点像寄快递)
“本地电脑要网站的数据”把这句话打包,同时在数据包上写上IP地址。由电脑网卡转给路由器,路由器通过网线转给光猫,光猫通过光纤转出去,再由其他的路由器转下去,直到转到目的地,而这个路由器就相当于快递的转运中心。
但这里就会有一个问题,去网站服务器的路有很多条,到底该怎么走呢?
这个时候,就要依靠MAC地址(可以想象成咱们的***号或者手机号)。
举个例子:
网站服务器在广州,请求数据包在成都路由器的时候,路由器会根据数据包的IP地址选择一条最优的线路,下一站按这个MAC地址去找贵州的路由器。
数据包到了贵州,路由器同样会根据数据包的IP地址选择一条线路,同时把数据包的MAC地址改为下一个路由器的,直到数据包被转到网站服务器的网卡上。
服务器,电脑等都运行了很多的程序,网卡要把这个数据包给谁呢?
这时网卡就要依靠端口来分发数据了。不同的程序都有不同的端口,网卡说,80端口的程序,有你的数据包,最后,网站服务器再根据要求把数据发到咱们电脑上,网页就显示在屏幕上了。
这个就和咱们收快递一样,离发货地越远,需要的时间也就越长。
虽然数据都是通过电信号、光信号传输的,速度非常快,但同样会受到物理因素的影响,所以要是离服务器的物理距离越远,信号传输的时间自然也会越长,经过的路由也就越多,查询并发数据包也需要时间,有时候还会把数据包搞丢,自然速度就慢了。
有的小伙伴会说京东的快递是上午买,下午就能收到呢?
这是因为京东在各个地区都建了仓库。在成都下单,就从成都仓库发货。在沈阳的下单,也从离他最近的沈阳仓库发货,速度自然要快很多。
同样的,在网上也可以这样搞(CDN)。举个例子:
网站的主(源)服务器在广州,为了提高全球小伙伴的访问速度,所以在各个地区都建了服务器,这些服务器就像分身一样,定时和广州的主服务器同步数据,访问该网站的时候,大家都去离自己最近的服务器获取数据,这样既提高了大家访问的速度,又减轻了主服务器的压力,同时还提高了安全性,这种就是咱们说的CDN(内容分发网络)。
综上所述
DNS根服务器里并没有存放世界上所有的域名,并且为了缓解压力,根服务器会在全球各地设立镜像站。
正常情况下,先查找本地的域名服务器,本地域名服务器没有才会去根服务器查找。根服务器中虽然没有每个域名的具体信息,但储存了负责每个域中解析的域名服务器的地址信息,只需要沿着根域名服务器指向去查找就可以了。
以上个人浅见,欢迎批评指正。
认同我的看法,请点个赞再走,感谢!
喜欢我的,请关注我,再次感谢!
众所周知,dns根服务器全球13台,命名为a.root-server.net到m.root-server.net,分布在全球,其中10台在美国,1台在英国,一台在瑞典,一台在日本。
如果在题主的问题里面加两个字,就是正确答案,dns根服务器里存了世界上所有的顶级域名,比如***,.net,.name,.gov等。
但是dns根服务器又没有那么重要,13台就算同时全部炸毁,你访问任何网站都没啥问题,因为全球各国各地都有顶级域名dns缓存,而顶级域名的dns解析又十分稳定,不会轻易改变。
举个例子,中国每秒多少人会访问*.cn这种网站,不可能每个人访问都去顶级域名服务器那边走一圈,那别说13台,130台都扛不住,中国人的dns请求出不了中国,下面的图只是在没有任何dns缓存情况下的dns请求流程图。所以网上那些说美国断了根服务器,就能让中国断网,纯属扯淡。
到此,以上就是小编对于域名服务器查询的问题就介绍到这了,希望介绍关于域名服务器查询的2点解答对大家有用。