信息技术大学
DNS 与 CDN
计算机基础面试八股 · 第 1 章 计算机网络
按 空格/→ 演示下一步
全部页面点击任意一页,跳回舞台从这页播放
信息技术大学
DNS 与 CDN
计算机基础面试八股 · 第 1 章 计算机网络
DNS 递归与迭代解析流程
域名变 IP 的两级问路:客户端要求「查到底」是递归,各级服务器逐级指路是迭代。
递归查询
客户端只问一次,本地 DNS 负责查到底给结果
迭代查询
根域不代劳,逐级指给 .com 与权威服务器
缓存层级
浏览器、系统、本地 DNS 逐级缓存,命中即返回
DNS 两级查询路线
递归是代劳,迭代是指路——一层一层问到权威。
图解渲染中…
a1:发起查询的主机b1:代问且缓存结果c1:只指路不代查d1:存放最终记录
常见 DNS 记录类型
一条域名背后是不同用途的记录表:A 指路 IP,MX 交邮件,CNAME 起别名。
A / AAAA
域名到 IPv4 / IPv6 地址的映射
CNAME
别名指向另一域名,常用来接 CDN 调度
MX / TXT
MX 指邮件服务器;TXT 存验证与防伪信息
NS
声明该域由哪些权威服务器负责解析
CDN 命中与回源机制
CDN 把内容搬到离用户最近的边缘节点:命中就地返回,没命中回源站取。
边缘节点
全球分布的缓存机群,就近服务降低时延
命中
边缘有缓存直接返回,毫秒级出内容
回源
未命中回源站拉取,顺路缓存供下次使用
失效策略
TTL 到期或主动 purge,保证内容新鲜
DNS 负载均衡
DNS 应答里放多个 IP 轮着返回:最古老的负载均衡,一次解析就完成调度。
轮询
多条 A 记录轮换返回,流量自然均摊
地理调度
按来源 IP 返回最近机房,CDN 的地基
局限
缓存让调度滞后,粗粒度也不感知实时负载
本节要点
- ✓递归代劳、迭代指路,缓存逐级命中
- ✓A/AAAA 指 IP,CNAME 起别名接 CDN
- ✓CDN 就近命中,未命中回源补货
- ✓DNS 轮询与地理调度是最早的负载均衡
延伸主题:dig 一次完整解析看看自家域名的 CNAME
课后思考
先自己回答,再展开参考答案——能讲出来才算真懂。
1为什么根域名服务器只指路不代查?
参考答案全球根要扛下所有解析的起点,代查会把根压垮;迭代指路让查询分散到各级服务器,层级缓存进一步削峰,这是可扩展性的关键设计。
2改了 DNS 记录,为什么常常要等很久才生效?
参考答案各级 DNS 都按 TTL 缓存旧答案,到期才回来刷新;想快速切换要提前调小 TTL。生效慢不是协议失灵,而是缓存机制在按契约工作。
3CDN 为什么偏爱 CNAME 接入而不是直接改 A 记录?
参考答案CNAME 把调度权交给 CDN:同一域名可按用户位置与负载动态返回不同边缘 IP;写死 A 记录就把流量钉在一个地址,失去就近调度能力。