DNS协议

1. 什么是DNS协议

2. 域名

3. DNS查询方式

4. 域名缓存

答:

  1. DNS(Domain Names System),域名系统,是互联网一项服务,是进行域名和与之相对应的 IP 地址进行转换的服务器

简单来讲,DNS相当于一个翻译官,负责将域名翻译成ip地址

2. 域名

域名是一个具有层次的结构,从上到下一次为根域名、顶级域名、二级域名、三级域名...

例如www.xxx.com,www为三级域名、xxx为二级域名、com为顶级域名,系统为用户做了兼容,域名末尾的根域名.一般不需要输入

在域名的每一层都会有一个域名服务器,如下图:

除此之外,还有电脑默认的本地域名服务器

3. 查询方式

DNS 查询的方式有两种:

4. 在域名服务器解析的时候,使用缓存保存域名和IP地址的映射

计算机中DNS的记录也分成了两种缓存方式:

5. 解析域名过程

补充

补充:DNS 是互联网的「地址簿」,负责把人类可读的域名翻译成机器可路由的 IP 地址。

补充要点:

  • 查询方式:
    • 递归查询:客户端把查询完全交给 DNS 服务器,服务器代为查询并返回最终结果。
    • 迭代查询:DNS 服务器返回「下一级应该问谁」,客户端继续查询,直到拿到结果。
  • 查询顺序:浏览器缓存 → 系统缓存(hosts / nscd)→ 本地域名服务器 → 根域 → 顶级域 → 权威域名服务器。
  • 记录类型:
    • A / AAAA:IPv4 / IPv6 地址。
    • CNAME:别名,指向另一个域名。
    • MX:邮件服务器。
    • NS:权威域名服务器。
    • TXT:任意文本(常用于 SPF / DKIM / 站点验证)。
    • TTL:缓存生存时间。
  • 优化:
    • DNS 预解析 <link rel="dns-prefetch" href="//example.com">。
    • 阿里 / Cloudflare 等公共解析服务,结合 ECS-EDNS 提升解析命中率。
    • DoH / DoT 加密 DNS,防止劫持。

补充:在 DevTools Network 面板里能看到每条请求的 DNS 解析耗时,是排查首屏延迟的常见环节。