您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

深入理解DNS解析过程

时间:2020-08-20 12:17:22  来源:  作者:

要想深入理解DNS解析的过程,我们需要知道一些底层的东西和一些周边的知识,本篇文章会围绕这些来构建。

名词解释

前置知识

DNS

域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换为IP地址。DNS属于应用层协议,是基于UDP协议的。

hosts文件

hosts文件是ARPANET时代的解决方案,那时候只有数百台计算机,一个hosts就能满足需求。

域名(Domain)

mail.ccav.com
---- ---- ----
三级域名 二级域名 顶级域名

域名的层级是按照上面这么划分的,每级域名长度不超过63个字符,不区分大小写,只能使用数字字母和-。一个完整的域名不超过255个字符。

域名服务器划分

了解域名服务器划分之后,就会对DNS解析的过程大概有些了解。域名服务器按照层级分为:

本地域名服务器

本地域名服务器相当于一个班主任,你有点啥事都找他。当一个主机发出DNS查询的时候,这个查询的请求就会发送到本地域名服务器。

根域名服务器

根域名服务器是最高层次的域名服务,是校长,只负责规划大方向。他知道所有顶级域名服务器的域名和IP地址。不管那个本地域名服务器若自己不能不能解析,那首先请求的就是根域名服务器。根域名服务器不会把待查询的域名直接转换成IP,而是告诉本地域名服务器下一步应该找哪一个顶级域名服务器进行查询。

顶级域名服务器

顶级域名服务器是负责各个方向的副校长,有负责安全的,有负责教学的。他负责管理该顶级域名下的所有二级域名,当收到DNS查询请求后就会给出响应的应答,可能是最终的结果,也可能是下一步应该找到的域名服务器的IP地址。

权限域名服务器

权限域名服务器就是负责一个区的域名服务器,是基层干活的,比如宿管,各科老师,他负责一个更小的区域。当一个权限服务还不能给出最后的回答时,就会告诉查询请求的DNS客户,下一步应该找哪个权限域名服务器。

域名查询的两种方式

这里只是通俗的讲两种查询的方式,关于如何更好的理解并记住这种两种方式,可以看这篇文章《怎么更好的理解DNS的迭代查询与递归查询》

递归查询

递归查询,就是你找我要一个域名的IP地址,但是我不知道,那我去帮你去向知道的人问这个IP地址。举个例子就是,你问你班主任怎么做番茄炒鸡蛋,你班主任不知道,但是你班主任去问了食堂厨师,然后告诉你。这就叫递归查询。
从host到本地域名服务器一般是用的递归查询。

迭代查询

迭代查询就是,你找我要一个域名的IP地址,我也不知道这个IP地址,但是我知道谁知道,我告诉你去找谁问。举个例子就是,你们班主任到了食堂随便拉了个人问怎么做番茄炒鸡蛋,那个人说,我只是个卖饭的,我不知道,但是我知道A君是在后厨的,你可以去问A君。然后你班主任就去问A君了。呐,这就叫迭代查询。
从本地域名服务器到根域名服务器一般是用的迭代查询。

行了,该知道的储备知识我们知道的差不多了,接下来就看看关键的流程吧。

DNS查询步骤

假设一台主机想知道y.abc.com这个域名的IP地址,那么整个的查询过程如下:

  1. 主机先向其本地域名服务器进行递归查询
  2. 本地域名服务器采用迭代的查询,它先向根域名服务器查询
  3. 根域名服务器告诉本地域名服务器,下一次应该查询的顶级域名服务器的IP地址。
  4. 本地域名服务器向顶级域名服务器发起查询。
  5. 顶级域名服务器告诉本地域名服务器,下一次应查询的权限域名服务器IP地址
  6. 本地域名服务器向权限域名服务器发起查询。
  7. 权限域名服务器告诉本地域名服务器所查询的IP地址。
  8. 本地域名服务器把查询结果告诉主机

给这个过程做个图示,就是这样的

深入理解DNS解析过程

 

整个的DNS查询过程就是这样的。结合前面的一些前置知识,你会感觉整个过程更简单

文章来源:https://segmentfault.com/a/1190000023694985



Tags:DNS解析   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
要想深入理解DNS解析的过程,我们需要知道一些底层的东西和一些周边的知识,本篇文章会围绕这些来构建。名词解释前置知识DNS域名系统DNS(Domain Name System)是因特网使用的命...【详细内容】
2020-08-20  Tags: DNS解析  点击:(83)  评论:(0)  加入收藏
概述DNS(Domain Name System,域名系统)DNS的作用,简单的说:就是把我们输入的网站域名翻译成IP地址的系统。本文建立在已搭建好DNS服务器,这里讨论为linux机器配置DNS服务器,使用户...【详细内容】
2020-06-04  Tags: DNS解析  点击:(62)  评论:(0)  加入收藏
每天都浏览的一个网站突然间打不开了,明明网络没有问题,打开其它的网站都是正常的,为什么就突然打不开了呢?电脑为什么打不开指定的网站?什么是DNS解析我要如何设置DNS这时候我们...【详细内容】
2020-03-10  Tags: DNS解析  点击:(118)  评论:(0)  加入收藏
大致就是:浏览器输入地址,然后浏览器这个进程去调操作系统某个库里的gethostbyname函数(例如,Linux GNU glibc标准库的gethostbyname函数),然后呢这个函数通过网卡给DNS服务器发UDP请求,接收结果,然后将结果给返回给浏览器...【详细内容】
2019-09-25  Tags: DNS解析  点击:(179)  评论:(0)  加入收藏
Nginx怎么做域名解析?怎么在你自己开发的模块里面使用Nginx提供的方法解析域名?它内部实现是什么样的?本文以Nginx 1.5.1为例,从nginx_mail_smtp模块如何进行域名解析出发,分析Ng...【详细内容】
2019-08-26  Tags: DNS解析  点击:(179)  评论:(0)  加入收藏
众所周知,DNS服务是用来将主机名和域名转换为IP地址的服务,在互联网中必须使用DNS服务的主要原因有以下两个:一、主机名和域名相对IP地址来说,更容易记忆;二、一个主机和域名可能...【详细内容】
2019-08-02  Tags: DNS解析  点击:(713)  评论:(0)  加入收藏
▌简易百科推荐
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(0)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(2)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(29)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(9)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(20)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(30)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
拉了千兆宽带,买了标称 1300Mbps 的无线路由器,为什么 WiFi 还是跑不满千兆?要回答这个问题,我们先得知道这个 1300Mbps 是怎么来的。开始回答之前先说明一下,这期只讲 802.11ac,...【详细内容】
2021-12-14  Ubiquiti优倍快    Tags:WiFi   点击:(83)  评论:(0)  加入收藏
问题背景IPv6环境下,在浏览器中通过http://[vip:port]访问web业务,提示无法访问此网站,[vip]的响应时间过长。分析过程之前碰到过多次在PC浏览器上无法访问vip的情况,排查方法也...【详细内容】
2021-12-13  云原生知识星球    Tags:网络问题   点击:(27)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条