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

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
.cn 域名,1个 12个月
全局流量管理 GTM,标准版 1个月
简介: DNS:DNS域名解析过程及原理

一、理解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劫持_全球百科

域名劫持_百度百科

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

相关文章
|
10天前
|
存储 缓存 算法
HashMap深度解析:从原理到实战
HashMap,作为Java集合框架中的一个核心组件,以其高效的键值对存储和检索机制,在软件开发中扮演着举足轻重的角色。作为一名资深的AI工程师,深入理解HashMap的原理、历史、业务场景以及实战应用,对于提升数据处理和算法实现的效率至关重要。本文将通过手绘结构图、流程图,结合Java代码示例,全方位解析HashMap,帮助读者从理论到实践全面掌握这一关键技术。
49 13
|
26天前
|
域名解析 缓存 网络协议
减少域名dns解析时间
域名解析中的TTL值设置多少合适
52 5
|
29天前
|
运维 持续交付 云计算
深入解析云计算中的微服务架构:原理、优势与实践
深入解析云计算中的微服务架构:原理、优势与实践
64 1
|
5天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
37 1
|
10天前
|
域名解析 弹性计算 安全
阿里云服务器租用、注册域名、备案及域名解析完整流程参考(图文教程)
对于很多初次建站的用户来说,选购云服务器和注册应及备案和域名解析步骤必须了解的,目前轻量云服务器2核2G68元一年,2核4G4M服务器298元一年,域名注册方面,阿里云推出域名1元购买活动,新用户注册com和cn域名2年首年仅需0元,xyz和top等域名首年仅需1元。对于建站的用户来说,购买完云服务器并注册好域名之后,下一步还需要操作备案和域名绑定。本文为大家展示阿里云服务器的购买流程,域名注册、绑定以及备案的完整流程,全文以图文教程形式为大家展示具体细节及注意事项,以供新手用户参考。
|
1月前
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
54 6
|
1月前
|
域名解析 网络协议 安全
反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性
在网络世界中,反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性。它在邮件服务器验证、网络安全等领域至关重要,帮助识别恶意行为,增强网络安全性。尽管存在配置错误等挑战,但正确管理下,反向DNS解析能显著提升网络环境的安全性和可靠性。
103 3
|
29天前
|
存储 供应链 算法
深入解析区块链技术的核心原理与应用前景
深入解析区块链技术的核心原理与应用前景
56 0
|
1月前
|
JavaScript 前端开发 API
Vue.js响应式原理深度解析:从Vue 2到Vue 3的演进
Vue.js响应式原理深度解析:从Vue 2到Vue 3的演进
58 0
|
1月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
77 2

热门文章

最新文章

推荐镜像

更多