ToolkitX
知识库工具箱

DNS 深入理解

DNS 解析过程、记录类型、DNS 安全

25min·进阶

01. DNS——互联网的电话本

DNS 就是互联网的「电话本」。你输入 google.com,电脑根本不认识这个名字,得去问 DNS 服务器:「google.com 的 IP 是多少?」DNS 查完了告诉你 142.250.x.x,然后浏览器才去连接它。 没有 DNS 的话,你得把全世界网站的 IP 地址都背下来——那画面太美不敢想。

02. DNS 查询的完整旅程

DNS 查询的过程,就像在一个巨大的公司里找人: 你的电脑先翻自己的「备忘录」(浏览器缓存、系统 hosts 文件) 找不到就去问「前台」——本地 DNS 服务器(通常是路由器或运营商提供的) 本地 DNS 也没有,就一层层往上问: 先问根域名服务器:「谁是管 .com 的?」 再问 .com 的域名服务器:「谁是管 google.com 的?」 最后问 google.com 的权威 DNS,它才给答案:「IP 是 xxx」 整个链路可能七八跳,但因为到处都有缓存,常用的域名秒级就能解析出来。
bash
# 追踪 DNS 查询全过程
dig +trace google.com

# 查不同类型的记录
dig google.com A        # IPv4 地址(最常用)
dig google.com AAAA     # IPv6 地址
dig google.com MX       # 邮件服务器
dig google.com NS       # 这个域名归谁管
dig google.com CNAME    # 别名
dig google.com TXT      # 文本记录(验证、SPF 等)

03. DNS 记录类型速查

各种 DNS 记录类型,各干各的事: A 记录——域名映射到 IPv4 地址,最常用 AAAA 记录——域名映射到 IPv6 地址 CNAME 记录——别名,比如 www 指向主域名 MX 记录——指定谁来处理这个域名的邮件 NS 记录——指定这个域名由哪些 DNS 服务器管理 TXT 记录——存一段文本,常用于 SPF 防垃圾邮件、域名验证 SRV 记录——指定某服务用哪个端口

04. DNS 常见的坑

DNS 也会出各种问题: DNS 劫持——你的 DNS 查询被中间人偷偷改掉,想去淘宝结果去了钓鱼网站 DNS 污染——某些查询被「投毒」了,返回虚假结果 DNS 缓存——改了 DNS 记录后因为缓存没刷新,部分用户还是访问旧地址 DNS 延迟——DNS 服务器在国外,每次查询几百毫秒 解决方案:换靠谱的 DNS(Cloudflare 1.1.1.1、阿里云 DNS、114DNS),或者开启 DoH/DoT 把 DNS 查询也加密。
推荐把备用 DNS 设成 1.1.1.1 (Cloudflare) 或 8.8.8.8 (Google),速度快还能防劫持。

知识测验

1/5正确 0

DNS 的 A 记录是干嘛的?

下一节

负载均衡

下一节