域名解析是怎么一步步生效的

给新站点配域名,最容易让人怀疑人生的一步就是"我明明加了记录,为什么还是打不开"。
理清几个概念,判断起来就快了。
记录类型
最常用的几种:
| 类型 | 作用 | 例子 |
|---|---|---|
| A | 域名指向 IPv4 地址 | hahaha.asia → xxx.xxx.xxx.xxx |
| AAAA | 域名指向 IPv6 地址 | 有 IPv6 再配 |
| CNAME | 别名,指向另一个域名 | www → hahaha.asia |
| TXT | 文本记录,常用于验证所有权 | 申请证书、验证域名 |
要绑定服务器,加两条 A 记录就够了:主机记录 @(代表裸域名本身)和 www。
TTL 和缓存
TTL 是"这条记录允许被缓存多久"。国内域名商默认常见 600 秒,也就是 10 分钟。
这里的坑在于,解析要经过好几层缓存:
- 你本地系统/浏览器的 DNS 缓存
- 运营商递归 DNS 的缓存
- 各级权威 DNS
所以改完记录后,正确姿势是:
# 直接问权威 DNS,绕过所有中间缓存
dig @ns1.example-dns.com hahaha.asia A
# 再问公共 DNS,看它缓存了什么
dig @公共DNS地址 hahaha.asia A
前者返回新值、后者返回旧值,那就是在等缓存过期,等着就行;如果前者也是旧值,那才说明记录没保存成功。
判断"到底通不通"
按链路从下往上查,效率最高:
- 解析是否生效 —— DoH 查一下有没有 A 记录(能拿到 IP 就说明解析层没问题)
- 端口是否可达 ——
curl -I http://你的域名,卡住通常是安全组/防火墙没放行 - 服务是否响应 —— 直接打 IP:
curl -I http://服务器IP - 证书是否匹配 ——
curl -I https://你的域名,看有没有证书报错
第 1 步通、第 2 步不通,问题在云服务器安全组;第 2 步通、第 3 步不通,问题在服务本身在不在监听。
最后提醒一句:云厂商的安全组和系统内的防火墙是两套独立的东西,两边都要放行,只改一个照样进不来。