域名注册与 DNS 解析:从买下名字到能 ping 通
买域名是建站第一步,也是最容易踩坑的一步:坑不在价格,而在谁来解析、要不要实名、服务器在境内还是境外。这篇把我自己走通的流程记下来。
一、后缀怎么选
先说结论:个人站点优先 .com,其次 .net / .dev / .me;纯国内业务再考虑 .cn。
| 后缀 | 首年参考价 | 续费价 | 备注 |
|---|---|---|---|
| .com | 60~90 元 | 80~120 元 | 通用性最好,转手也最容易 |
| .net | 70~100 元 | 100~130 元 | 与 .com 同级别,适合网络类站点 |
| .dev | 90~120 元 | 120~150 元 | 强制 HTTPS,浏览器内置 HSTS |
| .me | 90~140 元 | 130~180 元 | 适合个人品牌 |
| .cn | 30~50 元 | 40~60 元 | 必须实名,境内解析体验最好 |
别只看首年价格。注册商最常用的套路就是首年 29 元、续费 129 元,买之前一定翻到续费价那一栏。
二、注册商:境内还是境外
- 境内注册商(万网/腾讯云等):
.cn必须实名认证,通常 1~3 个工作日;好处是解析到国内服务器时延迟低、备案流程衔接顺。 - 境外注册商(Cloudflare Registrar、Namesilo、Spaceship 等):不用实名,Cloudflare 按成本价卖(无溢价),自带免费 WHOIS 隐私;缺点是人民币付款和发票麻烦一些。
我的做法:域名放在 Cloudflare Registrar,解析也交给 Cloudflare,服务器用境外的轻量机——这样整条链路不用碰备案。
如果服务器在中国大陆(阿里云/腾讯云轻量等),域名必须完成 ICP 备案才能用 80/443 端口对外服务。这个卡的是服务器所在地,不是注册商。
三、把 DNS 托管到 Cloudflare
- 注册后在控制台
Add a domain,选 Free 套餐即可; - Cloudflare 会扫出原有记录,检查有没有漏掉(尤其是 MX 邮件记录);
- 它会给你两个 NS 地址,例如
lola.ns.cloudflare.com; - 回到注册商后台,把域名的 NS 记录换成这两个;
- 等待生效,一般 10 分钟 ~ 24 小时,绝大多数情况半小时内完成。
dig +short NS example.com
# 期望输出:
# lola.ns.cloudflare.com.
# tim.ns.cloudflare.com.四、几种必须认识的记录类型
| 类型 | 作用 | 典型写法 |
|---|---|---|
| A | 域名 → IPv4 | example.com → 1.2.3.4 |
| AAAA | 域名 → IPv6 | example.com → 2001:db8::1 |
| CNAME | 域名 → 另一个域名 | www → example.com |
| MX | 邮件服务器 | @ → mx1.example.com,优先级 10 |
| TXT | 校验/SPF/DKIM | v=spf1 include:... ~all |
| NS | 指定权威 DNS | @ → ns1.xxx.com |
| CAA | 限定可签发证书的 CA | @ → 0 issue "letsencrypt.org" |
三个高频坑:
- 根域名不能写 CNAME(标准不允许)。想让
example.com指向某个服务,用注册商提供的 ALIAS/ANAME,或者直接用 A 记录。Cloudflare 支持根域名 CNAME 的 flatten,会自动解析成 A。 - Cloudflare 的小云朵:橙色(Proxied)表示流量走 CDN,会隐藏源站 IP;灰色(DNS only)表示纯解析。源站直连调试时先改灰色,否则你会以为解析没生效。
- TTL 不是越小越好。调试期设 300s(5 分钟)没问题,稳定后建议 1800s 以上,能减少递归查询、也降低解析失败概率。
五、用 dig 排查,不要靠刷新浏览器
# 看解析到的 IP
dig +short A example.com
# 看完整应答,确认 TTL 和权威服务器
dig example.com A
# 指定公共 DNS 对比,判断是不是本地缓存问题
dig @1.1.1.1 example.com A +short
dig @223.5.5.5 example.com A +short
# 从根服务器开始追踪,定位到底哪一级没生效
dig +trace example.com AWindows 上没有 dig 可以用 nslookup example.com 8.8.8.8;另外推荐 DNS Checker 看全球生效情况。
记得清本地缓存再测:
# macOS
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
# systemd-resolved(多数 Linux 发行版)
sudo resolvectl flush-caches
# Windows
ipconfig /flushdns六、上线前的安全小检查
- 开启 DNSSEC(Cloudflare 控制台一键开,需要注册商支持写入 DS 记录);
- 打开 WHOIS 隐私保护,减少垃圾邮件;
- 给域名开注册锁(Transfer Lock),防止被恶意转移;
- 配一条 CAA 记录,只允许指定 CA 给你签发证书。
dig +short CAA example.com走完这套流程,域名就真正属于你了。下一步是搞一台服务器:拿到裸机之后前十分钟该做什么。
