域名解析实战:从 A 记录、CNAME 到 TTL,域名解析设置与不生效排查一次讲清


很多站长第一次建站,最容易被卡住的就是域名解析:域名买好了、服务器也装好了,浏览器里输入网址却迟迟打不开。其实域名解析本质上就是一本“电话簿”,负责把好记的域名翻译成机器能识别的 IP 地址。这篇文章从 DNS 查询原理讲到各类记录的设置方法,再给出解析不生效的完整排查思路,帮你把域名解析这件事一次搞懂。

域名解析是怎么工作的:一次完整的 DNS 查询

在浏览器输入 www.example.com 按下回车后,第一件事不是连接服务器,而是一次 DNS 查询:

  1. 浏览器先查本地缓存与系统缓存,未命中则询问运营商的递归 DNS;
  2. 递归 DNS 从根域名服务器问到 .com 顶级域服务器;
  3. 最终从 example.com 的权威 DNS 服务器拿到 A 记录中的 IP 地址;
  4. 拿到 IP 后,浏览器才开始真正发起 HTTP 请求。

这条链路上任何一环出问题,表现到用户面前都是“网站打不开”。理解查询顺序,是后面排查一切解析问题的基础。

常用记录类型怎么选:A、AAAA、CNAME、MX、TXT

  • A 记录:把域名指向一个 IPv4 地址,最常用,比如把 @ 指向 VPS 的公网 IP;
  • AAAA 记录:与 A 记录相同,只是指向 IPv6 地址;
  • CNAME 记录:把域名指向另一个域名,适合接入 CDN、对象存储等 IP 经常变化的服务;
  • MX 记录:指定邮件服务器,配置企业邮箱时必须设置;
  • TXT 记录:用于域名归属验证,申请 SSL 证书、对接站长平台都会用到;
  • NS 记录:指定域名由哪些 DNS 服务器负责解析,更换 DNS 服务商时才会修改。

新手最常见的两个错误:一是同一个主机名下同时存在 A 记录和 CNAME 记录,两者冲突会导致解析结果时好时坏;二是把 CNAME 的记录值填成了 IP 地址——CNAME 只能指向域名。

实操:添加一条把域名指向服务器的 A 记录

以常见的解析控制台为例,添加 A 记录只需要填四个字段:

  1. 主机记录:填 @ 表示 example.com 本身,填 www 表示 www.example.com;
  2. 记录类型:服务器是 IPv4 选 A,IPv6 选 AAAA;
  3. 记录值:填服务器的公网 IP,注意不要误填成内网 IP;
  4. TTL:默认 600 秒即可,TTL 越小修改后生效越快,但解析查询压力也越大。

保存后等待几分钟,在本机 ping 一下域名,返回的 IP 是服务器公网 IP,就说明解析已经生效。

解析多久生效:搞懂 TTL 与缓存

“解析为什么半天不生效”是高频问题,答案就藏在 TTL(Time To Live)里:它决定了这条记录在全球各级 DNS 服务器上缓存多久。TTL 设为 600 秒,意味着最坏情况下要等 10 分钟全网才会看到新记录。

实用技巧:准备迁移服务器前,提前 24 小时把 TTL 调小到 60 秒,迁移完成稳定后再调回默认值,既能快速切换,又不会长期增加查询压力。

解析不生效?按这个顺序五步排查

  1. 用 nslookup 域名 或 dig 域名 查看当前解析结果,确认返回的 IP 是否正确;
  2. 权威 DNS 上结果正确、本地查询不对,多半是本地缓存:Windows 执行 ipconfig /flushdns,macOS 执行 sudo dscacheutil -flushcache;
  3. 检查域名是否过期,或因未完成实名认证被注册商暂停解析;
  4. 检查是否修改过 NS 记录,NS 变更全球生效最长需要 48 小时;
  5. 解析结果正确但网站仍然打不开?问题已经不在解析层面,继续排查服务器与网络。

写在最后

域名解析是建站的地基,规则不复杂,但 TTL、记录冲突、NS 变更这些细节,踩过一次坑的人都会印象深刻。按照本文的顺序设置与排查,绝大多数解析问题都能自己解决,不需要到处求人。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

SSH 安全加固实战:从密钥登录到 fail2ban 防爆破一次讲清

网站打不开怎么办?从域名解析、端口到服务器日志,网站打不开排查思路一次讲清

评 论