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

DNS有关知识(根域名服务器、顶级域名服务器、权威域名服务器)

windows电脑电脑查看dns:ipconfig /displaydns​

windows电脑电脑查看对应域名DNS解析出的IP地址 :nslookup+对应的域名

DNS

DNS(Domain Name System,域名系统)即“域名系统”。DNS是整个互联网服务的基础系统之一,同时也是企业内网服务的重要基础服务系统之一,负责将人们访问的互联网域名和企业内网域名转换为IP地址,这一转换的过程叫做“域名解析”, 所以DNS又称“域名解析系统”,相当于网络访问的指路牌。DNS作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问网络资源和网络服务,而不用去记住能够被机器直接读取的IP数串。DNS协议运行在UDP协议之上,使用端口号53。DNS从服务的网络环境来区分,分为公网DNS和内网DNS。DNS从解析链路扮演的功能角色来区分,分为权威DNS和递归 DNS。

CNAME记录

DNS系统

由多个服务器组成,包括根服务器、顶级域服务器(如.com、.org等)和权威DNS服务器,它们共同协作完成域名到IP地址的解析过程。这个过程通常是自动完成的,用户不需要手动进行任何操作。

电脑配置DNS后,访问网页时的一个数据流程:

用户输入域名 → 2. 查本地缓存(浏览器 / 系统)→ 3. 查本地 DNS 服务器 → 4. 本地 DNS 服务器逐级查询(根→顶级.com/.cn...→权威baidu.com)→ 5. 获得 IP 地址 → 6. 与服务器建立 TCP 连接 → 7. 发送 HTTP/HTTPS 请求 → 8. 服务器返回数据 → 9. 浏览器解析并展示网页。

域名服务器类别

权威 DNS 服务器(Authoritative DNS Server)是直接负责管理特定域名及其对应 IP 地址等解析记录的服务器,它存储着该域名最权威、最准确的解析信息,是域名解析流程中最终提供正确结果的 “源头”。

1. 根域名服务器(Root Name Server)

地位:DNS 系统的 “顶层管理者”,是全球域名解析的起点。

数量与分布:全球共 13 组根服务器(用字母 A-M 标识),由不同机构管理,通过 anycast 技术在全球多地部署镜像节点(实际物理节点远超 13 个),确保高可用性。

功能:不直接存储具体域名的 IP 地址,仅负责告知 “顶级域名服务器” 的地址。例如,当查询www.baidu.com时,根服务器会返回.com顶级域名服务器的 IP。

作用:引导解析请求进入正确的顶级域名体系(如.com、.cn、.org等)。

2. 顶级域名服务器(TLD Server,Top-Level Domain Server)

地位:管理 “顶级域名”(如.com、.cn、.net、.org)及下属二级域名的服务器。

分类:

用顶级域名(gTLD):如.com(商业)、.org(组织)、.net(网络)等;

国家 / 地区顶级域名(ccTLD):如.cn(中国)、.us(美国)、.jp(日本)等。

功能:存储二级域名(如baidu.com、qq.com)对应的 “权威 DNS 服务器” 地址。例如,.com顶级服务器会告知 “baidu.com的权威 DNS 服务器地址是 xx.xx.xx.xx”。

作用:将解析请求从 “顶级域名” 引导至 “二级域名的管理服务器”。

3. 权威域名服务器(Authoritative Name Server)

地位:特定域名(及子域名)解析记录的 “最终数据源”,由域名所有者直接管理或委托服务商管理。

功能:直接存储域名对应的 IP 地址及其他解析记录(如 A 记录、AAAA 记录、CNAME 记录、MX 记录等)。例如,百度的权威 DNS 服务器存储www.baidu.com→180.101.50.242、map.baidu.com→xxx.xxx.xxx.xxx等记录。

特点:

仅对自己管理的域名负责(如baidu.com的权威服务器不会处理google.com的请求);

解析记录由域名所有者通过 DNS 管理平台(如域名注册商的控制台)直接修改,修改后会实时生效(或按 TTL 时间更新)。

本地域名服务器(Local DNS Server,也常称为 “递归 DNS 服务器”)

  • 权威域名服务器:是域名解析的 “最终数据源”,负责存储某个特定域名的官方解析记录(如 A 记录、CNAME 记录等)。例如,example.com的权威服务器由其域名注册商或管理者指定,仅存储example.com及其子域名(如www.example.com)的解析信息,且这些信息是该域名的 “官方答案”,具有唯一性。

  • 本地域名服务器:是用户设备(电脑、手机等)“直接打交道” 的服务器,负责替用户发起解析请求并获取结果。它本身不存储某个域名的官方记录,而是作为 “中介”,接收用户的解析请求后,通过查询各级服务器(包括权威服务器)找到答案,再返回给用户。

  • 举例:

用户访问百度流程

核心是 “从本地到全球,逐级查询权威记录”:

步骤 1:优先查询本地缓存(非服务器层面)

用户设备(电脑 / 手机)会先检查本地存储的解析结果,避免直接向服务器发起请求:

浏览器缓存:浏览器(如 Chrome、Edge)会暂存近期解析过的域名 - IP 对应关系(TTL 通常为几分钟),若存在则直接使用;

操作系统缓存:若浏览器无结果,系统会查询自身缓存(如 Windows 的ipconfig /displaydns可查看)和hosts文件(本地静态映射表,优先级高于 DNS 服务器)。

步骤 2:向递归 DNS 服务器发起 “递归查询”

若本地缓存无结果,用户设备会向已配置的递归 DNS 服务器(如运营商 DNS 或114.114.114.114)发送请求,明确要求:“请返回www.baidu.com的 IP 地址”。

递归 DNS 服务器会先检查自身缓存:若之前解析过该域名且记录未过期(未超过 TTL),则直接返回 IP,流程结束;

注:电脑网络设置中会配置 “首选 DNS 服务器” 和 “备用 DNS 服务器”(通常由宽带运营商提供或手动设置,如 8.8.8.8)。

  • 系统会优先向 “首选 DNS 服务器” 发送查询请求,询问目标域名对应的 IP 地址。
  • 若首选 DNS 服务器无响应,才会切换到 “备用 DNS 服务器” 重试。

若自身缓存无结果,则进入 “向上级服务器发起迭代查询” 阶段。

步骤 3:递归 DNS 服务器向根服务器发起 “迭代查询”

递归 DNS 服务器需逐级向上级服务器查询,直至获取权威记录:

第一步:查询根服务器

递归服务器(这里指:我们配置网卡的dns地址)向根服务器发送请求:“请问www.baidu.com的 IP 是什么?”

根服务器回复:“我不直接存储,但.com顶级域名服务器的地址是 xx.xx.xx.xx,你去问它。”

第二步:查询顶级域名服务器(.com)

递归服务器向.com顶级服务器发送请求:“请问www.baidu.com的 IP 是什么?”

顶级服务器回复:“baidu.com的权威 DNS 服务器地址是 yy.yy.yy.yy,你去问它。”

第三步:查询权威 DNS 服务器(baidu.com)

递归服务器向baidu.com的权威 DNS 服务器发送请求:“请问www.baidu.com的 IP 是什么?”

权威服务器直接返回:“www.baidu.com对应的 IP 是180.101.50.242”(即最终结果)。

步骤 4:返回结果并缓存

递归 DNS 服务器将从权威服务器获取的 IP 地址返回给用户设备;

同时,递归服务器会将该解析结果缓存(按记录的 TTL 时间,通常为几小时到几天),以便后续其他用户查询同一域名时直接复用,减少重复查询。

步骤 5:用户设备使用 IP 访问目标服务器

用户设备拿到 IP 后,通过该 IP 与目标服务器(如百度的 web 服务器)建立连接,最终完成网页加载。

DNS缓存

DNS缓存是将解析数据存储在靠近发起请求的客户端的位置,也可以说DNS数据是可以缓存在任意位置,最终目的是以此减少递归查询过程,可以更快的让用户获得请求结果。

递归DNS解析

迭代DNS解析

递归查询(Recursive Query)

迭代查询(Iterative Query)

总结

·类型核心:根服务器→顶级服务器→权威服务器构成 “全球层级体系”,负责存储和指引解析路径;递归服务器(本地 DNS)是 “用户代理”,负责全程处理查询并返回结果。

·访问逻辑核心:从本地缓存到递归服务器,再通过迭代查询逐级向上(根→顶级→权威)获取最终 IP,缓存机制贯穿全程以提升效率。

上面的内容,你应该也可以看出来为什么需要部署内网或者本地DNS服务器的作用了吧

http://www.cnnetsun.cn/news/2862448.html

相关文章:

  • RK3566-OS11自动更新时区
  • Unity毛发系统终极指南:从0.9.0到0.18.3的重要版本更新详解 [特殊字符]
  • VivienneVMM配置详解:如何自定义调试框架的15个参数
  • Docker-Jellyfin插件生态:扩展媒体服务器功能的10个必备插件终极指南 [特殊字符]
  • Retrieval-based-Voice-Conversion-WebUI实战指南:12个深度技巧与性能优化策略
  • scodec核心功能解析:为什么它是Scala开发者处理二进制数据的首选工具
  • JavaScript计时器和嵌套循环:JavaScript Challenges Book中的异步编程挑战
  • OhMyREPL.jl与FZF集成:高效搜索REPL历史的完整教程
  • 音频特征提取实战:LPS、MFCC、Log-Magnitude Spectrum在Awesome-Speech-Enhancement中的实现
  • GORB与Consul集成指南:实现自动服务发现和动态注册
  • StateSmith开发指南:从源码解析到贡献代码,成为开源项目参与者
  • Plotly.NET.ImageExport教程:轻松实现图表静态图片导出
  • 3步解锁旧Mac新生命:OpenCore Legacy Patcher终极指南
  • 终极指南:BlackHole macOS音频回环驱动器的完整使用教程
  • Google Java Format:企业级Java代码架构标准化的战略价值
  • Kubernetes Descheduler v1alpha2架构深度解析与生产级部署最佳实践
  • 深度实战:使用NetHook2与SteamKit2进行Steam网络通信分析
  • 终极指南:3步掌握Grounded-SAM-2视频目标跟踪与分割技术
  • CSR-II (WSJ1) Complete数据集介绍,官网编号LDC94S13A
  • 【干货】DeepSeek / 豆包数学公式完美转 Word 攻略!告别乱码,效率翻倍!AI 导出鸭一键快速转换公式
  • AI Agent 面试题 857:Agent系统的部署流水线的安全扫描集成
  • AI Agent 面试题 861:如何设计智能客服Agent的整体架构?
  • 【零基础秒上手】ESP32视觉分类模型实战:基于EdgeImpulse的端到端训练部署教程
  • 2026年如何免费降AI率?10款亲测有效工具必收藏
  • 如何去除腾讯元宝输出文本中带 *、# 的小技巧,选用 AI 导出鸭一键清符,结合行业数据筛选最优导出方案
  • 鸿蒙原生应用实战(三):笔记详情与编辑页面的路由与CRUD
  • SQL中繁琐的Case When 如何优化?
  • 用安信可ESP32S3开发板做个无线监控:手把手教你驱动USB摄像头并实现Wi-Fi图传
  • 保姆级教程:在S32K3上玩转EIM和ERM,手把手教你注入并捕获ECC错误
  • FOC 位置环 PI 调参实战:让电机指哪停哪