当前位置: 首页 > news >正文

(计算机网络)DNS解析流程及两种途径

在计算机网络中,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.xdnf.cn/news/1468837.html

相关文章:

  • 51单片机-串口通信
  • 系统性学习数据结构-第三讲-栈和队列
  • 通信安全员【单选题】考试题库及答案
  • Android的DTBO详解
  • SQL Server 原生备份与第三方备份:哪个更适合您的组织?
  • 服务器测试网速教程:基于iperf进行测试带宽
  • 基于单片机金属探测器设计
  • 「数据获取」《中国包装业发展研究报告(2008)》
  • 人大金仓:创建数据库分区
  • AI助力决策:告别生活与工作中的纠结,明析抉择引领明智选择
  • 基于单片机老人居家环境健康检测/身体健康检测设计
  • EI会议:第三届大数据、计算智能与应用国际会议(BDCIA 2025)
  • 解释一下roberta,bert-chinese和bert-case有啥区别还有bert-large这些
  • 大基座模型与 Scaling Law:AI 时代的逻辑与困境
  • AAB包转apks转apk
  • docker重启redis报错:iptables failed
  • 边缘计算设备+深度学习辅导
  • 信息系统安全保护措施文件方案
  • Selenium元素定位终极指南:8种方式全面解析+实战代码,告别找不到元素的烦恼!
  • IPD变革,是中国企业实现产品与技术领先之路
  • 使用tomcat本地部署draw.io
  • 项目管理方法与企业战略目标如何对齐
  • VQ-VAE-2:开启高保真多样化图像生成的新范式
  • maven只使用本地仓库依赖
  • Maven常见问题解决方案
  • 关于Homebrew:Mac快速安装Homebrew
  • 七彩喜微高压氧舱:科技与体验的双重革新,重新定义家用氧疗新标杆
  • AI配音工具哪个好用?7款热门配音软件推荐指南!
  • 数据加盐处理(密码加盐)
  • webpack笔记