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

域名解析(DNS 解析)

1. 本地缓存查询(浏览器 / 操作系统)

补充说明

  • 浏览器缓存的有效期由域名的 TTL(Time To Live,单位秒)决定,过期后会重新发起解析。
  • 系统级缓存优先于网络查询,比如 Windows 的hosts文件、Linux/macOS 的/etc/hosts,一旦在这些文件中配置了域名与 IP 的映射,会直接生效(常用于开发中临时绑定域名)。

工具命令

  • 查看系统 DNS 缓存:
    • Windows:ipconfig /displaydns
    • Linux/macOS:sudo systemd-resolve --statistics 或 sudo nscd -g
  • 清理缓存(解决解析异常时常用):
    • Windows:ipconfig /flushdns
    • macOS:sudo killall -HUP mDNSResponder
  • 修改 hosts 文件路径:
    • Windows:C:\Windows\System32\drivers\etc\hosts
    • Linux/Mac:/etc/hosts

2. 本地 DNS 服务器(递归解析的起点)

补充说明

  • 本地 DNS 服务器通常由网络服务商(如电信、联通)提供,也可手动设置公共 DNS(如 Google 的 8.8.8.8、Cloudflare 的 1.1.1.1)。它的角色类似 “中间人”,会替用户完成后续的所有查询步骤。
  • 这一步是多数解析的终点 —— 因为本地 DNS 会缓存大量常用域名的解析结果,不用每次都查全球服务器。

工具命令

  • 指定 DNS 服务器查询:nslookup www.example.com 8.8.8.8(用 Google 的 DNS 查百度域名)
  • 更详细的解析信息:dig @8.8.8.8 www.example.com(能看到解析过程中的服务器、TTL 等细节)

3. 根域名服务器(Root Server)

补充说明

  • 全球共 13 组根服务器(标记为 A 到 M),每组有多个镜像节点分布在全球各地。它们不直接存储具体域名的 IP,只负责告诉本地 DNS:“去查这个顶级域名(比如.com)的服务器”。
  • 根服务器的 IP 是固定的,本地 DNS 出厂时就预存了这些 IP,不用额外查询。

工具命令

  • 查看根服务器列表:dig . NS
  • 直接向根服务器查询(比如 A 根服务器的 IP 是 198.41.0.4):dig www.example.com @198.41.0.4

4. 顶级域名服务器(TLD Server)

补充说明

  • 顶级域名(如.com、.org、.cn)由专门机构管理,比如.com 由 Verisign 运营,.cn 由 CNNIC 管理。
  • 顶级域名服务器的作用是告诉本地 DNS:“负责这个域名(比如example.com)的权威服务器是谁”。

工具命令

  • 查看.com 的顶级域名服务器:dig com. NS
  • 查看example.com的权威服务器:dig example.com NS

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

补充说明

  • 这是真正存储域名解析记录的地方,包括 A 记录(域名→IP)、CNAME(别名)、MX(邮件服务器)、TXT(验证信息)等。
  • 权威服务器通常由域名注册商提供(如阿里云、腾讯云的 DNS 服务),也可以是自己搭建的服务器(如 PowerDNS、Bind)。

工具命令

  • 直接向权威服务器查询:dig www.example.com @ns1.example.com(ns1.example.com是该域名的权威服务器)
  • 查看该域名的所有解析记录:dig ANY example.com

6. 结果返回与缓存

补充说明

  • 本地 DNS 服务器拿到权威服务器返回的 IP 后,会按 TTL 值缓存起来,下次同一域名查询时直接用缓存结果,减少重复步骤。
  • 浏览器也会自己缓存一份,所以有时候改了 DNS 记录,本地仍显示旧 IP,就是缓存没过期导致的。

工具命令

  • 在浏览器开发者工具的 Network 面板中,查看 Timing 标签可看到 DNS 解析的耗时。
  • 用基础命令验证:ping www.example.com(返回的 IP 就是解析结果)、nslookup www.example.com

特殊:CNAME 解析

补充说明

  • CNAME(别名记录)是让一个域名指向另一个域名,比如www.example.com指向server.example.com。
  • 这种情况需要多一步解析:先查www.example.com得到 CNAME 记录,再解析server.example.com,直到拿到最终 IP。
  • 常见场景:CDN 会用 CNAME 让域名指向边缘节点,实现负载均衡。

工具命令

  • 查看 CNAME 跳转:dig www.example.com(结果中会显示 CNAME 字段)

调试与开发实践

用途命令示例(Windows/Linux)
查某域名所有解析dig example.com ANY
查某域名的邮件服务器dig example.com MX
验证邮件 SPF 记录dig example.com TXT
跟踪完整解析过程dig +trace www.example.com
Windows 快速查询nslookup www.example.com
查看网络路径tracert www.example.com(Win)或traceroute www.example.com(Linux)

想记住整个过程其实不难:DNS 解析就像 “找地址”—— 先翻自己的小本儿(浏览器、系统缓存),找不到就问小区保安(本地 DNS),保安不知道就一层层往上问:先问国家总局(根服务器),总局说去查省厅(顶级域名服务器),省厅说去找具体负责的街道办(权威服务器),最后街道办告诉你门牌号(IP)。中间每一步都会记下来(缓存),下次就不用再跑一趟了

ok结束

http://www.dtcms.com/a/294060.html

相关文章:

  • Typora 2025 最新版 1.10.8 激活版
  • 「源力觉醒 创作者计划」深度讲解大模型之在百花齐放的大模型时代看百度文心大模型4.5的能力与未来
  • 为什么设置 git commit签名是公钥而不是私钥?
  • Flutter学习笔记(四)---基础Widget
  • 大厂总结常用分析问题方法之CMMI-IDEAL模型
  • 【unitrix】 6.13 类型级整数的按位取反(Not)操作实现(not.rs)
  • C++(面向对象封装、继承、多态)
  • 0018-基于单片机颜色识别系统设计
  • 数据结构系列之二叉搜索树
  • 单片机-----基础知识整合
  • 【图论,拓扑排序】P1347 排序
  • Rocky9部署Zabbix7(小白的“升级打怪”成长之路)
  • MySQL用户管理(15)
  • AI安全“面壁计划”:我们如何对抗算法时代的“智子”封锁?
  • 漏洞生命周期管理:从发现到防护的全流程方案
  • Linux权限机制:设计哲学、实现原理与安全实践
  • 如何加固Endpoint Central服务器的安全?(下)
  • adb: CreateProcessW failed: 系统找不到指定的文件
  • RAG项目实战:LangChain 0.3集成 Milvus 2.5向量数据库,构建大模型智能应用
  • uniapp+vue3小程序点击保存图片、保存二维码
  • 盘古信息PCB解决方案:重构PCB制造基因,开启智造新纪元
  • 半导体 CIM(计算机集成制造)系统
  • 三大论坛联动,2025合成生物学盛会助力生物制造高质量发展
  • 设备仿真合集 | 工业制造数字孪生协同管控
  • Docker详解及实战
  • 【轨物洞见】光伏逆变器数据:分布式电站价值回归的“第一块多米诺骨牌”
  • mac测试ollama llamaindex
  • Log4j CVE-2021-44228 漏洞复现详细教程
  • fastdds:默认qos入门
  • LeetCode|Day23|326. 3 的幂|Python刷题笔记