返回顶部
首页 > 资讯 > 服务器 >DNS服务器解析过程是怎样的
  • 721
分享到

DNS服务器解析过程是怎样的

2023-06-27 10:06:50 721人浏览 薄情痞子
摘要

本文小编为大家详细介绍“DNS服务器解析过程是怎样的”,内容详细,步骤清晰,细节处理妥当,希望这篇“DNS服务器解析过程是怎样的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。DNS: Domain Name Sy

本文小编为大家详细介绍“DNS服务器解析过程是怎样的”,内容详细,步骤清晰,细节处理妥当,希望这篇“DNS服务器解析过程是怎样的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

DNS: Domain Name System 域名系统互联网的一项服务。它作为将域名和IP地址互相映射的一个分布式数据库,能够使人们更方便地使用互联网。

DNS服务器解析过程是怎样的

域名

在讲解DNS之前,首先粗略的说一下域名这个东西,比如说我们在用浏览器访问网址的时候,我们输入的网站的地址就是一个域名,例如 www.Google.com,但其实我们知道我们标志互联网中的每一个机器都是有一个IP地址的,我们若需要访问一个网站的服务器,实际上是需要输入该网站的IP地址来进行访问的,但是IP地址往往难以记忆,IPv4尚且难记,IPv6就更不用说了,所以我们就通过使用域名来对其进行管理,但是在访问的时候,系统底层还是通过ip地址来进行访问的,域名和IP地址直接的转换就是通过DNS服务器来完成的。

nsswitch框架

域名简单了解过了,再来说一说nsswitch框架这个东东。

nsswitch(name service switch configuration,名称服务切换配置),规定通过哪些途径以及按照什么顺序来查找特定类型的信息。还可以指定某个方法奏效或失效时系统将采取什么动作,是一种通用框架,与各种类型存储进行交互的公共模块化的实现。nsswitch是linux中的一种解析框架,负责在程序跟存储方式之间做了一层对接。让用户可以更好地选择存储方式,如把用户名解析为UID,服务解析为PORT,域名解析为IP等。这些堆成映射解析的存储方式可以有多种,如nis,ldap,file,mysql等。而nsswitch这种框架就是提供给用户可以方便更换存储方式的;比如默认的用户名和密码等配置默认在/etc/passwd文件中,但是用户可以选项把用户和密码存储在ldap或Mysql中,而上层只要通过nsswitch就框架编写的程序,在用到系统用户时就不需要关心这些账号密码存储在哪里了(不需要变动程序),由nsswitch这个中间层来搞定了。在nsswitch的配置文件/etc/nsswitch.conf中有这么一行语句,”hosts: files dns“,就表示域名解析时先找本机的/etc/hosts文件然后再找dns服务器。

需要详细了解可以看/etc/nsswitch.conf配置文件,nsswitch.conf中的每一行配置都指明了如何搜索信息,每行配置的格式如下:

Info: method[[action]] [method[[action]]…]

其中,info指定该行所描述的信息的类型,method为用来查找该信息的方法,action是对前面的method返回状态的响应。action要放在方括号里。当需要提供nsswitch.conf文件所描述的信息的时候,系统将检查含有适当info字段的配置行。它按照从左向右的顺序开始执行配置行中指定的方法。在默认情况下,如果找到期望的信息,系统将停止搜索。如果没有指定action,那么当某个方法未能返回结果时,系统就会尝试下一个动作。有可能搜索结束都没有找到想要的信息。

DNS服务器的出现

20世纪70年代末,域名解析刚开始使用的都是/etc/hosts文件来负责的,在60年代美国军方的一个项目ARPAnet,由电话交换网络转到tcp/IP数据交换网络(数据分组可以以多条路径发送且接收方收到数据并要发送确认)。那个时候接入互联网的只有四个主机美国加州大学的圣巴巴拉分校,洛杉矶大学,犹他州立,斯坦福研究所因为主机很少人们还是可以记住IP地址的,但是因为人最容易记忆的是字符串而不是数字也随着后来加入主机的越来越多人们发现已经记不住哪台主机是那个IP了;因此就出来了给主机命名的概念每一台主机起一个人们容易记忆的字符串,可以人们容易记忆了而主机却识别不了;因此域名解析出现了利用hosts文件就可以标明主机对应的IP是什么;人们访问主机名而主机负责在把主机名解析为IP地址即可。

但是后来随着互联网主机加入的越来越多,hosts文件已经不足以应对。因此美国就出现了一个机构IANA(现在由ICANN管理)负责管理IP和域名的转换;如果A想要接入网络中时就找IANA申请一个IP地址和一个主机名,如果B知道A的主机名想访问A就需要到IANA那里通过FTP下载hosts文件到本地更新自己的hosts文件里面就会有A主机主机名对应的IP地址;随着hosts文件越来越大IANA管理非常麻烦和用户定时就要去IANA哪里下载hosts文件。时间一长这总方法是行不通的。再后来IANA就建立起了DNS负责处理用户提交的请求帮用户解析域名对应的IP地址。

DNS重要性

1)技术角度看

DNS解析是互联网绝大多数应用的实际寻址方式; 域名技术的再发展、以及基于域名技术的多种应用,丰富了互联网应用和协议。

2)资源角度看

域名是互联网上的身份标识,是不可重复的唯一标识资源; 互联网的全球化使得域名成为标识一国主权的国家战略资源。

域名空间结构

DNS的分布式数据库是以域名为索引的,每个域名实际上就是一颗很大的逆向树中的路径,这棵逆向树称为域名空间。这棵树的层次结构如下图,和Linux文件系统的结构非常相似。在顶端,树有唯一的一个根域。在根下又可以有多个任意的分支,这些分支点称为“顶级域”。而在每个顶级域下又可以有多个相同的“二级域”,而树的深度不得超过127层。 DNS服务器解析过程是怎样的

FQDN

FQDN:(Fully Qualified Domain Name)完全合格域名/全称域名,是指主机名加上全路径,全路径中列出了序列中所有域成员。全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。从全域名中包含的信息可以看出主机在域名树中的位置。如www.baidu.com. 这个域名,分解后含义如下:

.           #表示根域.com        #表示顶级域baidu.com   #表示二级域www         #表示主机名

根域:目前全世界只有13台根服务器,名字分别为“A”至“M”,其中10台设置在美国,另外3台设置于英国、瑞典和日本。

顶级域:有组织域和国家域,其中组织域有如:.com .org .net .edu .cc .info等等,国家域有:.cn .hk .jp等等。

二级域名:就是真正用于服务的,比如可以根据企业名称自行申请试用什么域名。

主机名:是用来标识这个域名对应的服务是什么,如www一般用于万维网,mail用于邮件,都可以随意设定。

下图是各个分支的表现形式:

  DNS服务器解析过程是怎样的

DNS服务器规则

\1) 每一个主机都知道根域在哪里;

\2) 上级必须知道下级;

\3) 下级不知道上级;

\4) 查询两段式递归查询和迭代查询;

\5) 根域不迭代(根全球有13台a-m.root-servers.net);

\6) 顶级域不迭代;

\7) 二级域服务器可以只提供权威查询不提供迭代或转发;

DNS服务器解析过程

1)递归查询

递归查询是最常见的是主机发送到本地域名服务器的请求。当本地域名服务器接受了客户机的查询请求时,本地域名服务器将力图代表客户机来找到答案,而在域名服务器执行所有工作的时候,客户机只是等待。如果本地域名服务器不能直接回答,则它将在域名树中的各分 支上下递归搜索来寻找答案。对于一个递归查询,DNS服务器将持续搜索直到收到回答。这种回答可以是主机的IP地址,也可以回答“主机不存在”。不论是哪种结果,递归域名服务器将把结果返回给客户机。

2)迭代查询(可能发出多次请求)

本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。

一个域名的查询过程解析

如DNS客户端需要解析www.baidu.com.cn这个域名,过程如下图: DNS服务器解析过程是怎样的

DNS客户端首先找本地DNS服务器进行域名解析,也就是自己设置的DNS地址;

本地DNS服务器收到请求后直接查找本服务器是否有此记录,如果有就直接返回域名对应的地址给客户端,那么这个域名的解析就完成了,这个就称为一次“递归查询”;

如果本地DNS没有查找到对应的记录,那么此DNS服务器就会请求根域找.cn服务器的地址(当然本地DNS服务器也可能不找根DNS而是直接转发到其他DNS服务器进行域名解析,但是如果被转发的那台DNS服务器不是www.baidu.com.cn的权威服务器还是需要进行找根服务器);

根服务器接收到请求后就会去找国际域名服务器列表,然后会返回.cn服务器的地址给本地DNS服务器;

本地DNS服务器收到.cn服务器地址后,就会找.cn服务器进行顶级域.com.cn服务器地址的解析,然后.cn服务器会返回.com.cn服务器的地址给本地DNS服务器;

本地DNS服务器收到.com.cn地址后,就会找.com.cn服务器解析baidu.com.cn服务器的地址;

本地DNS服务器收到baidu.com.cn的地址后,就会找baidu.com.cn服务器解析www.baidu.com.cn主机地址;

本地DNS服务器得到www.baidu.com.cn的IP地址后,会马上返回给客户端并缓存此域名;

客户端得到IP地址后缓存在本地,然后就可以通过IP地址访问百度服务器;

PS:在这个查询过程中,客户端发出的请求就是递归查询,而DNS服务器发出的请求就是迭代查询;另外,还有一个名词就是权威服务器(权威应答),意思就是真正负责你的域名记录解析的服务器称为权威服务器,其他解析都不能称为权威应答。

DNS服务器类型

1)主DNS服务器

主DNS服务器就是创建了区域的DNS服务器。这里的区域数据是可读可修改的。主DNS服务器中的区域数据也称为正本区域数据。在一个DNS服务网络中,可以建立多个主DNS服务器,这样可以提供DNS服务的容错性。

2)辅助DNS服务器

辅助DNS服务器不创建区域,它的区域数据是从主DNS服务器复制来的,因此,区域数据只能读不能修改,也称为副本区域数据。当启动辅助DNS服务器时,辅助DNS服务器会和建立联系的主DNS服务器联系,并从主DNS服务器中复制数据。辅助DNS服务器在工作时,它会定期地更新副本区域数据,以尽可能地保证副本和正本区域数据的一致性。辅助DNS服务器除了可以从主DNS服务器复制数据外,还可以从其他辅助DNS服务器复制区域数据。

在一个区域中设置多个辅助DNS服务器可以提供容错,分担主DNS服务器的负担,同时可以加快DNS解析的速度。

3)主控DNS服务器

不论是主DNS服务器还是辅助DNS服务器,如果它向其他辅助DNS服务器提供区域数据的复制服务,就称为DNS服务器是主控DNS服务器。如DNS服务器A向DNS服务器B提供数据复制服务,则A就称为主控DNS服务器。

4)高速缓存服务器

高速缓存服务器上不存在任何区域数据,它只帮助DNS客户机向其他DNS服务器进行查询,然后将查询到的数据存储在一份高速缓存Cache中,响应客户机的查询请求。Cache-Only 服务器只负责查询数据,当客户机查询数据时,如果Cache中存在数据,则Cache可以将结果快速反馈给客户机。

5)DNS转发服务器

DNS转发服务器是一种特殊类型的DNS服务器。在一个DNS网络中,如果客户机向指定的DNS服务器解析的域名不成功,DNS服务器就可以将客户机的解析请求发送给一台DNS转发服务器,顾名思义,DNS转发服务器就是将域名请求转发给其他DNS服务器。

读到这里,这篇“DNS服务器解析过程是怎样的”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网服务器频道。

--结束END--

本文标题: DNS服务器解析过程是怎样的

本文链接: https://lsjlt.com/news/309521.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • DNS服务器解析过程是怎样的
    本文小编为大家详细介绍“DNS服务器解析过程是怎样的”,内容详细,步骤清晰,细节处理妥当,希望这篇“DNS服务器解析过程是怎样的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。DNS: Domain Name Sy...
    99+
    2023-06-27
  • 浏览器缓存,DNS,CDN及域名解析的过程是怎样的
    这篇文章主要介绍“浏览器缓存,DNS,CDN及域名解析的过程是怎样的”,在日常操作中,相信很多人在浏览器缓存,DNS,CDN及域名解析的过程是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”浏览器缓存,D...
    99+
    2023-06-29
  • Python解析器的解析过程是怎样的
    今天就跟大家聊聊有关Python解析器的解析过程是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先先让大家看一下Python解析器的全流程:我们先用编辑器编写好源代码,保存成...
    99+
    2023-06-17
  • centos5.3 搭建DNS多域名解析服务器的教程是怎样的
    centos5.3 搭建DNS多域名解析服务器的教程是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、域名与域名解析 网络中为了区别各个主机,必须为每台主机分配一个惟一...
    99+
    2023-06-10
  • MyDomain老牌免费域名DNS解析服务是怎么样的
    这期内容当中小编将会给大家带来有关MyDomain老牌免费域名DNS解析服务是怎么样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。MyDomain算是老牌免费域名DNS解析服务商了,从1998年服务至今...
    99+
    2023-06-12
  • 浅谈DNS域名解析的过程
    用户在浏览器输入www.baidu.com时,DNS域名解析大致分为以下几个过程: 浏览器客户端检查自身有没有该域名的缓存: 如果浏览器有命中,直接返回该域名对应的IP地址,解析结束; ...
    99+
    2023-09-17
    服务器 网络 前端
  • dns解析服务器的作用是什么
    DNS解析服务器的作用是将用户输入的域名转化为对应的IP地址。当用户在浏览器中输入一个域名时,浏览器会向DNS解析服务器发送一个查询...
    99+
    2023-08-31
    DNS服务器 服务器
  • 怎样修改DNS服务器
    本篇内容主要讲解“怎样修改DNS服务器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎样修改DNS服务器”吧!什么是DNSDNS是指:域名服务器(Domain Name  Server...
    99+
    2023-06-07
  • 怎样更改DNS服务器
    这篇文章主要介绍“怎样更改DNS服务器”,在日常操作中,相信很多人在怎样更改DNS服务器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎样更改DNS服务器”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!&n...
    99+
    2023-06-07
  • 云服务器dns解析怎么弄
    1.首先,登录云服务器代理商网站,进入服务器管理控制台;在服务器管理控制台中,选择域名选项;在域名解析列表中,选择需要dns解析的域名,点击解析;进入域名解析界面后,在界面中,填写dns解析的云服务器ip地址;最后,相关信息填写完成后,确认...
    99+
    2024-04-02
  • 怎么关闭dns解析服务器
    要关闭DNS解析服务器,您可以按照以下步骤进行操作:1. 打开DNS解析服务器的管理界面或终端。2. 找到服务停止或关闭的选项。具体...
    99+
    2023-08-30
    dns服务器 服务器
  • 如何解析DNS服务器
    本篇文章给大家分享的是有关如何解析DNS服务器,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。DNS(Domain Name System,域名系统),因特网上作为域名和IP地址...
    99+
    2023-06-07
  • Python数据分析过程是怎样的
    这篇文章主要介绍“Python数据分析过程是怎样的”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python数据分析过程是怎样的”文章能帮助大家解决问题。一、需求介绍该需求主要是分析某一种数据的历史...
    99+
    2023-06-26
  • dns服务器负载过高怎么解决
    要解决DNS服务器负载过高的问题,可以尝试以下几个方法:1. 增加服务器资源:可以考虑增加服务器的CPU、内存和网络带宽等资源,以提...
    99+
    2023-08-20
    dns服务器 服务器
  • centos怎么搭建dns解析服务器
    要搭建DNS解析服务器,你可以按照以下步骤进行:1. 安装BIND软件包:在CentOS中,BIND是最流行的DNS服务器软件。你可...
    99+
    2023-08-25
    centos dns服务器 服务器
  • 云服务器搭建dns解析
    云服务器搭建dns解析通常会涉及到以下几个步骤: 安装云端dns服务器软件:首先需要准备一个云端dns服务器软件,通常需要根据实际情况确定需要选择哪种dns服务器软件,如Amazon Web DNS、Google DNS、Digital...
    99+
    2023-10-26
    服务器 dns
  • 启用云解析dns服务器的方法是什么
    启用云解析 DNS 服务器的方法可以按照以下步骤进行:1. 注册并登录到云解析 DNS 服务提供商的网站。2. 创建一个新的域名解析...
    99+
    2023-09-25
    云解析dns服务器 云服务器
  • 阿里云服务器的DNS解析是什么意思?
    阿里云服务器的DNS解析是指将域名映射到IP地址的过程。当用户通过浏览器访问一个网站时,需要通过域名才能到达该网站所在的服务器。而服务器的IP地址是唯一的,因此需要通过DNS解析来将域名转换为对应的IP地址,这样才能成功访问网站。详细说明...
    99+
    2024-01-19
    阿里 服务器 DNS
  • 服务器dns解析失败怎么处理
    如果服务器的DNS解析失败,可以尝试以下几种处理方法:1. 检查DNS服务器配置:检查服务器上的DNS服务器配置是否正确,确保DNS...
    99+
    2023-06-12
    dns解析失败
  • 怎样全面解析安装Nginx的过程
    本篇文章为大家展示了怎样全面解析安装Nginx的过程,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。安装Nginx的时候有需要小技巧和小窍门。掌握好这些就能更好的使用...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作