跳到主要内容

DNS 域名解析

问题

DNS 的解析过程是什么?有哪些记录类型?

答案

DNS 解析流程

查询顺序:浏览器缓存 → OS 缓存 → hosts 文件 → 本地 DNS → 递归/迭代查询。

DNS 记录类型

类型说明示例
A域名 → IPv4example.com → 1.2.3.4
AAAA域名 → IPv6example.com → 2001:db8::1
CNAME别名www.example.com → example.com
MX邮件服务器example.com → mail.example.com
NS域名服务器example.com → ns1.example.com
TXT文本记录SPF、域名验证
SRV服务发现指定服务的主机和端口

常见面试问题

Q1: 递归查询和迭代查询的区别?

答案

  • 递归查询:客户端 → 本地 DNS 服务器,只问一次,本地 DNS 负责全部查询过程
  • 迭代查询:本地 DNS → 根 → 顶级 → 权威,每次只返回下一步的地址,本地 DNS 自己跑下一步

通常客户端到本地 DNS 是递归,本地 DNS 到上级服务器是迭代。

Q2: DNS 使用 TCP 还是 UDP?

答案

  • 默认使用 UDP(端口 53):查询快,数据量小(< 512 字节)
  • 使用 TCP 的场景:响应数据超过 512 字节、区域传送(主从 DNS 同步)

相关链接