在计算机网络中,DNS(Domain Name System)用于 将域名解析为 IP 地址。一个完整的解析过程涉及 递归查询迭代查询,以及多个关键角色(LDNS、本地域名服务器;根服务器;顶级域名服务器;权威服务器)。


1. DNS 中的关键角色

1.1 本地域名服务器(LDNS, Local DNS Server)

  • 由运营商(电信、联通、移动)或企业网络提供,离用户最近。

  • 当客户端发起域名解析请求时,第一步就是问 LDNS

  • LDNS 会查缓存,有结果就直接返回,否则去找根服务器继续解析。

1.2 根域名服务器(Root DNS Server)

  • DNS 系统的起点,全球一共 13 组(A–M),分布在世界各地。

  • 作用:告诉你 顶级域名服务器的地址(如 .com.cn)。

  • 不存放最终 IP,只起导航作用。

1.3 顶级域名服务器(TLD DNS Server)

  • 按域名后缀分类,例如:

    • .com.net.org → 通用顶级域名

    • .cn.jp → 国家顶级域名

  • 作用:告诉你具体 权威服务器的地址

1.4 权威域名服务器(Authoritative DNS Server)

  • 存放最终的域名 → IP 映射关系。

  • 网站管理员在这里配置解析记录:

    • A 记录:域名 → IPv4 地址

    • AAAA 记录:域名 → IPv6 地址

    • CNAME 记录:域名别名映射

  • 作用:返回最终 IP 地址。


2. 递归查询(Recursive Query)

定义

  • 客户端向 DNS 服务器发出请求,要求它 必须返回最终结果

  • 中间查询由该服务器自己完成,客户端只需等待结果。

特点

  • 对客户端友好,只发一次请求。

  • 服务器压力较大。

示例

  • 电脑问 LDNS:“www.example.com 的 IP 是多少?”

  • LDNS 自己去问根、TLD、权威服务器,最终把结果返回给客户端。


3. 迭代查询(Iterative Query)

定义

  • 客户端向 DNS 服务器请求,服务器 只返回自己知道的最优答案,如果不知道,就告诉客户端“去问谁”。

  • 客户端需要多次询问,直到得到结果。

特点

  • 服务器压力小。

  • 客户端需要多次发请求。

示例

  1. 客户端问根服务器:“www.example.com 的 IP 是多少?”

    • 根服务器答:“我不知道,但 .com 服务器可能知道。”

  2. 客户端问 .com 服务器。

    • .com 服务器答:“去问 example.com 的权威服务器。”

  3. 客户端问权威服务器,最终拿到 IP。


4. DNS 解析流程

以访问 www.csdn.com 为例:

  1. 客户端 → LDNS:递归查询,LDNS 必须返回最终 IP。

  2. LDNS → 根服务器:迭代查询,根告诉 LDNS 去找 .com 服务器。

  3. LDNS → 顶级域名服务器 (TLD):迭代查询,TLD 告诉 LDNS 去找 csdn.com 的权威服务器。

  4. LDNS → 权威服务器:迭代查询,权威服务器返回 IP(如 93.184.216.34)。

  5. LDNS → 客户端:把结果返回客户端,并缓存以供下次查询。

说也就是说,DNS解析的时候,既要有客户端的递归,也要有服务端的迭代。


5. 递归 vs 迭代 对比

方式谁来完成查询客户端请求次数服务器压力使用场景
递归查询DNS 服务器一次客户端 → LDNS
迭代查询客户端(或 LDNS)多次LDNS → 根/TLD/权威

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构——队列(Java)

一.基本概念 队列用来存储逻辑关系为“一对一”的数据,是一种“特殊”的线性存储结构。 特点: •先进先出:队列中元素的添加(入队enqueue)和移除(出队dequeue)遵循先进先出的原 则。 •端点&…

【Go】:mac 环境下GoFrame安装开发工具 gf-cli——gf_darwin_arm64

当前主要是关于gf_darwin_arm64的安装步骤 如何快速给mac电脑安装gfgf是什么安装步骤方法1:去github下载gf-cli去git上下载对应电脑版本的gf-cli验证下载文件是否二进制文件授予该文件权限方法2:去goframe官网教你下载步骤验证gf是否安装成功可能遇到的问…

【新】ApiHug官方文档-ApiHug Spring Security 扩展-补充说明

概述 在上次说明中我们写了ApiHug 如何做授权的, 这里有个概念的混淆, 其实 apihug 不是在spring security 上做的安全扩展, 应该是 apihug spring, 安全设计框架, 和本身 spring security 没有半毛钱关系, 而如果你…

【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇

概述:本篇是接着上一篇,细分出说明书的编写部分,实现这个功能的需求,是内部很多同事反馈,需要有个地方存工具,并且可以写说明书,如果需要的人,那么可以在界面上直接下载工具和查看工…

Mac设置中的安全性缺少“任何来源”

问题:用Mac安装软件,隐私性与安全性,想切换“任何来源”用来下载网站的app,但是菜单栏找不到“任何来源”选项,无法安装dmg的文件终端中一行代码设置出来:sudo spctl --global-disable (禁用Mac…

uniapp开发小程序,列表 点击后加载更多数据

一、需求 1.初始显示限制:将每页条数limit改为5,确保初始只显示5条数据 2.查看更多功能:添加了loadMore方法,点击"查看更多"时加载下一页数据 3.实现查看更多功能,点击后加载更多数据 4.添加loading状态防止重复请求 添加hasMore状态判断是否还有更多数据 …

Windows 部署 Gerrit 与 Apache24 配置

Windows 部署 Gerrit 与 Apache24 并配置反向代理 准备工作 下载并安装 Java JDK 确保配置 JAVA_HOME 环境变量博主这里安装openjdk21 https://jdk.java.net/archive/下载所需软件 Apache24:https://httpd.apache.org/download.cgi Gerrit:https://www.g…

从 Excel 趋势线到机器学习:拆解 AI 背后的核心框架​

引言:你其实早就 “玩转” 过机器学习?提到 “机器学习”,你是不是第一时间联想到复杂的代码、密密麻麻的公式,还有那些让人头晕的 “算法”“模型”“训练” 术语?仿佛它是高高在上的技术,离我们的日常无比…

Lenovo联想YOGA Pro 16 IAH10 2025款笔记本电脑(83L0)开箱状态预装OEM原厂Win11系统

适用机型(MTM):【83L0】 链接:https://pan.baidu.com/s/1tDpeBb93t1u0XIgqAZ3edg?pwdqy2r 提取码:qy2r 联想原装系统自带所有驱动、出厂主题壁纸、系统属性联机支持标志、系统属性专属LOGO标志、Office办公软件、联想浏览器、电脑管家、…

Android 开发 - 一些画板第三方库(DrawBoard、FingerPaintView、PaletteLib)

一、DrawBoard 1、Dependencies 模块级 build.gradle implementation com.github.jenly1314:drawboard:1.1.02、Test &#xff08;1&#xff09;Activity Layout activity_draw_board.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout …

捷多邦揭秘超厚铜板:从制造工艺到设计关键环节​

一、超厚铜板制造工艺要点超厚铜板&#xff08;3oz 及以上&#xff09;的制造工艺对精度和稳定性要求严苛&#xff0c;核心环节需突破多重技术壁垒。蚀刻工艺中&#xff0c;因铜箔厚度达 105μm 以上&#xff0c;需采用高浓度酸性蚀刻液&#xff08;氯化铜浓度控制在 180-220g/…

【MYSQL | 高级篇 MyCat实现分库分表】

摘要&#xff1a;本文围绕分库分表展开&#xff0c;先分析单库性能瓶颈&#xff0c;介绍垂直与水平拆分策略及实现技术&#xff0c;再详述 MyCat 中间件的概述、环境准备、目录结构&#xff0c;讲解其入门配置与测试&#xff0c;深入说明核心配置文件&#xff0c;最后演示垂直和…

Docker部署Drawnix开源白板工具

Drawnix简介 Drawnix 是一款开源的在线白板工具&#xff08;SaaS&#xff09;&#xff0c;集思维导图、流程图绘制、自由画图等多种功能于一体&#xff0c;支持协作与插件扩展&#xff0c;适用于个人创作、团队协作和远程办公场景。它完全免费且开源&#xff0c;提供丰富的编辑…

Griffin|增强现实数据集|无人机数据集

Griffin|增强现实数据集|无人机数据集 数据来源&#xff1a;huggingface 百度网盘 构建方式 Griffin数据集的构建采用了模块化架构&#xff0c;结合了CARLA和AirSim平台&#xff0c;通过模拟真实世界中的无人驾驶环境和无人机动态&#xff0c;收集了超过30,000帧图像数据&am…

力扣.1054距离相等的条形码力扣767.重构字符串力扣47.全排列II力扣980.不同路径III力扣509.斐波那契数列(记忆化搜索)

目录 力扣.1054距离相等的条形码 力扣767.重构字符串 力扣47.全排列II 力扣980.不同路径III 力扣509.斐波那契数列&#xff08;记忆化搜索) 力扣.1054距离相等的条形码 是否策略正确 但是假如 1 2 2 此时 1_2 此时中间只能填写2&#xff0c;但是就不对了&#xff0c;所…

「docker」二、3分钟快速理解docker核心要素

上一节中我们知道docker的作用&#xff0c;这节我们介绍一下docker的要素。 镜像 docker的核心要素里面有个叫镜像&#xff08;images&#xff09;的概念&#xff0c;镜像的作用就类似我们安装虚拟机用到的iso镜像文件。镜像里包含了我们要运行的应用&#xff0c;如&#xff…

搭建基于 Solon AI 的 Streamable MCP 服务并部署至阿里云百炼

一、快速搭建 Solon 项目&#xff0c;引入 Solon AI 1. 开发环境准备 JDK 8 或以上版本。Maven 3.8.6 或以上版本。通义千问 API Key&#xff08;用于模型调用&#xff09;。 2. 创建名为 mcp-server-demo 的项目 创建时选择 Archetype 为 Solon AI&#xff08;可以减少些活&am…

免费的SSL和付费SSL 证书差异

免费的 SSL 和付费的 SSL&#xff08;TLS 证书&#xff09;本质上提供的加密能力是一样的&#xff0c;因为 SSL/TLS 协议本身是开放标准&#xff0c;核心加密算法不会因为是否收费而不同。主要区别在于以下几个方面&#xff1a;&#x1f511; 1. 加密强度免费 SSL&#xff1a;一…

代码随想录算法训练营第六天 -- 字符串1 || 344.反转字符串I / 541.反转字符串II / kamacoder54.替换数字--第八期模拟笔试

代码随想录算法训练营第六天 -- 字符串1 || 344.反转字符串I / 541.反转字符串II / kamacoder54.替换数字--第八期模拟笔试344.反转字符串I思路541.反转字符串II题目理解解题思路边界细节reverse()函数的实现[kamacoder54.替换数字 -- 第八期模拟笔试](https://kamacoder.com/p…

计算机视觉——光流法

系列文章目录 本系列开篇文章&#xff0c;暂时没有目录啦&#xff5e; 文章目录系列文章目录前言一、问题假设二、方程推导三、计算Ix,Iy,ItI_x,I_y,I_tIx​,Iy​,It​四、计算光流u,vu,vu,v4.1 传统算法Lucas-Kanade算法五、孔径问题5.1 直观理解5.2 数学角度5.3 解决方法总结…