DNS:DNS域名解析过程及原理

news2024/11/18 11:31:16

一、理解IP和域名

我们首先要了解域名和IP地址的区别。
IP地址是互联网上计算机唯一的逻辑地址。
通过IP地址实现不同计算机之间的相互通信,每台联网计算机都需要通过IP地址来互相联系和分别。
但由于IP地址是由一串容易混淆的数字串构成,人们很难记忆所有计算机的IP地址,这样对于我们日常工作生活访问不同网站是很困难的。
基于这种背景,人们在IP地址的基础上又发展出了一种更易识别的符号化标识/一组有意义的字符,这种标识由人们自行选择的字母和数字构成,相比IP地址更易被识别和记忆,逐渐代替IP地址成为互联网用户进行访问互联的主要入口。这种符号化标识就是域名。用户访问一个网站的时候,既可以输入该网站的IP地址,也可以输入其域名,对访问而言,两者是等价的,都可以访问其Web网站。

二、理解DNS域名系统(DomainName System)

DNS是互联网的一项服务。
DNS在TCP/IP网络中有非常重要的地位,能够提供域名与IP地址的解析服务。
DNS将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
DNS 的分布式机制支持有效且可靠的名字到 IP 地址的映射。多数名字可以在本地映射,不同站点的服务器相互合作能够解决大网络的名字与 IP 地址的映射问题。单个服务器的故障不会影响 DNS 的正确操作。
DNS命名系统采用层次的逻辑结构, 如同一棵倒置的树,这个逻辑的树形结构称为域名空间,由于DNS划分了域名空间,所以各机构可以使用自己的域名空间创建DNS信息。

域名系统_百度百科

三、理解域和域名

3.1、域

DNS树的每个节点代表一个域,通过这些节点,对整个域名空间进行划分,成为一个层次结构。域名空间的每个域的名字,通过域名进行表示。

3.2、域名

通常由一个完全合格域名(FQDN)标识。FQDN能准确表示出其相对于DNS域树根的位置也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“.”分隔,对于DNS域baidu来说,其完全正式域名(FQDN)为 baidu.com。

四、域名结构树

域名结构 - 知乎

​​

五、DNS和域名有什么关系

域名只是一个标识,DNS是域名解析系统,当您输入一个域名时,DNS开始工作,向域名对应的IP地址请求,找到域名对应的IP(服务器)后,返回结果给访问者,你就看到了这个域名对应的网页。这些DNS系统是不公开的。

六、主域名服务器与辅助域名服务器的关系

6.1、理解

用户在访问某一个域名的时候实际不是直接访问到这个承载业务的这个服务器而是先解析获取到这个域名对应的公网IP地址,再用这个IP发送请求,这个解析会先在电脑本地缓存查询在没有的场景下会到上级的DNS服务器请求。
当区的辅助服务器启动时,它与该区的主控服务器进行连接并启动一次区传输,区辅助服务器定期与区主控服务器通信,查看区数据是否改变。如果改变了,它就启动一次数据更新传输。
设置DNS服务器时,服务器管理员可以选择是将DNS服务器指定为主服务器还是辅助服务器(也称为从服务器)。
在某些情况下,服务器可以是一个区域的主要服务器,也可以是另一个区域的辅助服务器。但是每个区必须有主服务器,另外每个区至少要有一台辅助服务器,否则如果该区的主服务器崩溃了,就无法解析该区的名称。

6.2、DNS主服务器

主服务器托管控制区域文件,该文件包含域的所有权威信息(这意味着它是重要信息的可信源,例如域的IP地址)。这包括重要信息,例如域的IP地址以及负责该域管理的人员。主服务器直接从本地文件获取此信息。只能在主服务器上更改区域的DNS记录,然后主服务器才能更新辅助服务器。

6.3、DNS辅助服务器

辅助服务器包含区域文件的只读副本,它们通过称为区域传输的通信从主服务器获取其信息。每个区域只能有一个主DNS服务器,但它可以有任意数量的辅助DNS服务器。无法在辅助服务器上更改区域的DNS记录,但在某些情况下,辅助服务器可以将更改请求传递到主服务器。

6.4、为什么要有辅助DNS服务器 / 辅助服务器的优点

6.4.1、容错能力
配置辅助服务器后,在该区主服务器崩溃的情况下,客户机仍能解析该区的名称。一般把区的主服务器和区的辅助服务器安装在不同子网上,这样如果到一个子网的连接中断,DNS客户机还能直接查询另一个子网上的名称服务器。

6.4.2、减少广域链路的通信量
如果某个区在远程有大量客户机,用户就可以在远程添加该区的辅助服务器,并把远程的客户机
配置成先查询这些服务器,这样就能防止远程客户机通过慢速链路通信来进行DNS查询。

6.4.3、减轻主服务器的负载
辅助服务器能回答该区的查询,从而减少该区主服务器必须回答的查询数。

主DNS服务器包含所有相关资源记录,并且可以处理域的DNS查询,(许多注册商需要)通常至少具有一个辅助DNS服务器。这些辅助服务器的好处是它们在主DNS服务器关闭时提供冗余,并且它们还有助于将请求的负载分配到域,以便主服务器不会过载,这可能导致拒绝服务。他们可以使用循环DNS来实现这一点,循环DNS是一种负载平衡技术,旨在为群集中的每个服务器发送大致相等的流量。

七、DNS服务器与缓存

7.1、DNS服务器

运行DNS服务器程序的计算机,储存DNS数据库信息。
DNS服务器会尝试解析客户机的查询请求。
在解答查询时,如果DNS服务器能提供所请求的信息,就直接回应解析结果
如果该DNS服务器没有相应的域名信息,则为客户机提供另一个能帮助解析查询的服务器地址。
如果以上两种方法均失败,则回应客户机没有所请求的信息或请求的信息不存在。

7.2、DNS缓存

DNS服务器在解析客户机请求时
如果本地没有该DNS信息,则可以会询问其他DNS服务器
当其他域名服务器返回查询结果时
该DNS服务器会将结果记录在本地的缓存中,成为DNS缓存。
当下一次客户机提交相同请求时
DNS服务器能够直接使用缓存中的DNS信息进行解析。​

八、本地DNS服务器

8.1、观点一

通过域名访问Internet上的网站或服务器需要使用DNS来进行解析。客户端电脑使用的DNS就是本地DNS服务器,本地DNS服务器会向权威DNS获取解析记录返回给用户,并按照解析记录TTL值缓存到自己服务器。本地DNS服务器一般是网络服务商提供的DNS,也可以自己修改为常用的公共DNS。

8.2、观点二

在通过浏览器缓存及host文件都无法解析域名的情况下,OS会将这个域名发送给计算机网络配置中DNS对应的地址(LDNS),即本地区的域名服务器。这个DNS通常都提供给你本地互联网接入的一个DNS解析服务,假如是在学校接入的互联网,那么这个本地区的域名服务器基本上是在学校中;如果是在小区接入的互联网,那么这个本地区的域名服务器就是提供给你接入互联网的应用服务上,也就是电信或联通。
--《深入分析java web 技术内幕》 许令波著

8.3、观点三

本地域名服务器(查询代理和DNS查询结果缓存): 只是一个查询代理

8.4、观点四

而我们电脑上设置的DNS,是指当我们本地电脑访问域名时,率先进入哪台服务器,进入哪些DNS系统。

本地DNS服务器是什么?-华为云

什么叫本地DNS服务器?这里的本地具体什么意思呢?_百度知道

本地dns服务器到底是什么?有没有精确的概念? - 知乎

九、DNS域名解析过程

9.1、从浏览器缓存中查询。
浏览器会存储一定时间的DNS记录,操作系统不会告诉浏览器每个DNS记录的保存时限,不同浏览器设置保存时限为一个固定值(不同浏览器情况不同,一般在2-30分钟)。检查在是否有相应的域名、IP对应关系,如果有,则向其IP地址发送请求。

9.2、从操作系统缓存中查询。
如果浏览器中没有包含想要的缓存记录,那浏览器就会发起操作系统请求,继续查询操作系统缓存。(hosts文件)

9.3、从路由器中查询DNS缓存。
请求持续发送到你的路由,它通常会有自己的DNS缓存。

9.4、从ISP中查询DNS缓存。
下一个被查询地方是ISP缓存DNS的服务器。

9.5、域名服务器迭代查询,根据返回的地址逐级向上查询。

浏览器客户端向本地DNS服务器发送一个含有域名https://www.baidu.com的DNS查询报文
本地DNS服务器把查询报文转发到根DNS服务器
根DNS服务器注意到其com后缀,于是向本地DNS服务器返回 com DNS服务器的IP地址
本地DNS服务器再次向 com DNS服务器发送查询请求,com DNS服务器注意到其https://www.baidu.com后缀并用负责该域名的权威DNS服务器的IP地址作为回应
最后,本地DNS服务器将含有https://www.baidu.com的IP地址的响应报文发送给客户端
从客户端到本地服务器属于递归查询,而DNS服务器之间的交互属于迭代查询
正常情况下,本地DNS服务器的缓存中已有com DNS服务器的地址,因此请求根域名服务器这一步不是必需的

​​

十、DNS正向解析和反向解析

10.1、正向解析

正向解析是指域名到IP地址的解析过程。

10.2、反向解析

反向解析是从IP地址到域名的解析过程。反向解析的作用为服务器的身份验证。

什么是DNS的正向解析与反向解析?代码实现?_dns正向解析和反向解析_程序猿编码的博客-CSDN博客

DNS的正向和反向解析_dns正向解析和反向解析_叁煌蛋的博客-CSDN博客

十一、DNS资源记录类别

DNS 资源记录类型

DNS资源记录的七类 - 爱码网

常见的DNS记录有哪些

十二、理解DNS劫持

DNS劫持_全球百科

域名劫持_百度百科

十三、欢迎交流指正,关注我,一起学习。

参考链接

网络:IP与MAC_web前端获取mac地址_snow@li的博客-CSDN博客

本地DNS服务器的配置_〆是凌风呀的博客-CSDN博客

DNS工作原理_dns为什么是树型_宝山的博客的博客-CSDN博客

DNS域名详细解析过程(最全面,看这一篇就够)_dns域名解析_bangshao1989的博客-CSDN博客

百度安全验证

从输入URL到浏览器显示页面的流程_white camel的博客-CSDN博客

详解浏览器解析一个URL的全过程_url解析_子木呀的博客-CSDN博客

DNS域名详细解析过程_dns域名解析过程_黄瓜炒肉的博客-CSDN博客

DNS解析过程及原理_百度百科

DNS域名解析过程_哔哩哔哩_bilibili

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/517406.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C基础 --- 因为整型提升导致的BUG

为什么会做整型提升 通常情况下,在对int类型的数值作运算时,CPU的运算速度是最快的。在x86上,32位算术运算的速度比16位算术运算的速度快一倍。C语言是一个注重 效率的语言,所以它会作整型提升,使得程序的运行速度尽可…

基于ChatGPT AI自动产生Shader,AI自动产生AICommand

AIEngine 基于ChatGPT AI自动产生Shader 代码地址:https://github.com/ManoKing/AIEngine 使用方法: 1,打开 Window/Package Manager 2,选择 /Add package from git URL… 3,添加URL: https://github.com/ManoKing/…

VMware Aria Automation Orchestrator 8.12 - 现代工作流程自动化平台

VMware Aria Automation Orchestrator 8.12 - 现代工作流程自动化平台 请访问原文链接:https://sysin.org/blog/vmware-aria-automation-orchestrator/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 现代工作流程…

民谣女神唱流行,基于AI人工智能so-vits库训练自己的音色模型(叶蓓/Python3.10)

流行天后孙燕姿的音色固然是极好的,但是目前全网都是她的声音复刻,听多了难免会有些审美疲劳,在网络上检索了一圈,还没有发现民谣歌手的音色模型,人就是这样,得不到的永远在骚动,本次我们自己构…

艺术家林曦老师新书《无用之美》即将发售,其中甘美提前与君共享~

十多年前,艺术家林曦老师做了一次主题为“无用之美”的演讲,从那时到现在,也一直教授着以“美”为核心的课程。经过十年的教学、和糯糯小朋友的相处,林曦老师觉得自己对这个主题有了更多的感触。      “有用的世界”繁复疲惫…

科技云报道:Serverless或许没有你想象中的安全

科技云报道原创。 随着云计算技术的进一步成熟,Serverless已成为引领云计算下一个十年的技术热点。 Serverless能够帮助开发者无需关注服务器、按照实际使用付费且可以享受服务自动弹性伸缩,将更多的精力放到业务逻辑本身。据Gartner预测,2…

Swift AsyncThrowingStream 和 AsyncStream Demo 演示

文章目录 前言什么是 AsyncThrowingStream?调整现有代码以使用流什么是 AsyncStream?AsyncThrowingStreamAsyncThrowingStream 迭代调试 AsyncStream取消一个 AsyncStream结论 前言 AsyncThrowingStream 和 AsyncStream 是 Swift 5.5 中由 SE-314 引入的并发框架的…

JUC并发编程15 | Java内存模型JMM与volatile

尚硅谷(56-70) JMM 引入一些大厂的面试题 Java内存模型JMM是什么JMM与volatile之间的关系是什么JMM有哪些特性or它的三大特性是什么为什么要有JMM,它为什么出现?功能和作用是什么?happens-before 先行发生原则是什么…

LaTeX极简入门

​LaTeX是什么? LaTeX是一种基于ΤΕΧ的排版系统,由美国计算机学家莱斯利兰伯特(Leslie Lamport)在20世纪80年代初期开发。 LaTeX是一款开源免费,并且应用相当广泛的排版工具。不但能够对文字、公式、图片进行精确而复…

电容笔和触控笔有什么区别?电容笔牌子排行榜

而现在,在无纸化教育的大热之下,电容笔这个配件,也被很多人所关注。许多人对电容笔与触控笔的不同之处感到困惑,事实上,这二者是非常容易分辨的,电容笔是适用在我们最常见的电容屏上才能进行操作&#xff0…

算法工程师面试题

1.关于边缘提取的算法有那些?各有什么优缺点? Canny算法:Canny算法是一种经典的边缘检测算法,具有较高的准确性和良好的鲁棒性。该算法利用高斯滤波器对图像进行平滑处理,然后计算图像中每个像素的梯度和方向&#xff…

TinyHttpd 运行过程出现的问题

最近拉了个 TinyHttpd 的工程下来,不过好像各个都有些改动,最后挑了篇阅读量最多的。工程也是从这里面给的链接下载的。 参考自:https://blog.csdn.net/jcjc918/article/details/42129311 拿下来在编译运行前,按这里说的&#x…

词云图制作(R)

词云图制作 文章目录 词云图制作[toc]1 工作准备2 实际操作 1 工作准备 材料准备: 文本数据txt文件,或者其他文本文件。R语言软件 2 实际操作 第一步:从网上相关新闻网站复制粘贴或下载相关文本数据,转化为txt格式文件或其他&…

【设计模式】桥接模式

【设计模式】桥接模式 参考资料: Java 设计模式:实战桥接模式 一起来学设计模式之桥接模式 《设计模式之美》设计模式与范式(结构型-桥接模式) 桥接模式在项目中的应用 文章目录 【设计模式】桥接模式一、桥接模式概述二、案例场…

GPT-4 开始内测32k输入长度的版本了!你收到邀请了吗?

要说现在 GPT-4 最大的问题是什么?可能除了一时拿他没有办法的机器幻觉,就是卡死的输入长度了吧。尽管在一般的对话、搜索的场景里目前普通版本 GPT-4 的 8000 左右的上下文长度或许绰绰有余,但是在诸如内容生成、智能阅读等方面当下基础版的…

京东短网址高可用提升最佳实践 | 京东云技术团队

作者:京东零售 郝彦军 什么是短网址? 短网址,是在长度上比较短的网址。简单来说就是帮您把冗长的URL地址缩短成8个字符以内的短网址。 当我们在腾讯、新浪发微博时,有时发很长的网址连接,但由于微博只限制140个字&a…

Android Studio中android: baselineAligned属性认识及用途

文章目录 使用Button控件来演示使用TextView控件来演示 android:baselineAligned 设置子元素都按照基线对齐&#xff0c;默认是true 使用Button控件来演示 在项目中经常使用layout_weight属性利用比重来设置控件的大小&#xff0c;代码如下&#xff1a; <?xml version&qu…

Baumer工业相机堡盟工业相机如何使用BGAPI SDK解决两个万兆网相机的同步采集不同步的问题

Baumer工业相机堡盟工业相机如何使用BGAPI SDK解决两个万兆网相机的同步采集不同步的问题 Baumer工业相机Baumer工业相机图像数据转为Bitmap的技术背景Baumer同步异常 &#xff1a;客户使用两个Baumer万兆网相机进行同步采集发现FrameID相同&#xff0c;但是图像不同步细节原因…

2023 年第八届数维杯数学建模挑战赛 A题详细思路

下面给大家带来每个问题简要的分析&#xff0c;以方便大家提前选好题目。 A 题 河流-地下水系统水体污染研究 该问题&#xff0c;初步来看属于物理方程类题目&#xff0c;难度较大。需要我们通过查阅相关文献和资料&#xff0c;分析并建立河流-地下水系统中有机污染物的对流、…

机器学习之聚类算法一

文章目录 一、简述1. 有监督和无监督的区别&#xff0c;以及应用实例2. 为什么是聚类3. 聚类都有哪些 二、k-means1.k-means&#xff0c;核心思想是什么1. 同一个簇内的样本点相似度较高&#xff0c;这里的相似度高&#xff0c;具体指什么2.问题来了&#xff1a;同一簇之间相似…