域名系统(Domain Name System,DNS)相当于互联网的目录:它把 example.com 这样的域名,转换成计算机用来找到你的网站、投递邮件和验证服务的地址与设置。只要有一条记录缺失或设置错误,即使服务器本身运行正常,网站也可能打不开,邮件也可能收不到。
DNS 如何运作(通俗说明)
每个域名都有一组 DNS 记录,通常称为区域(zone)。每条记录回答一个问题,比如“网站放在哪台服务器上?”访客打开你的网站时:
- 浏览器向解析器查询,解析器通常由访客的网络运营商或公共 DNS 服务提供。
- 解析器找到权威域名服务器,也就是存放你的记录的服务器。
- 域名服务器返回记录,例如网站服务器的 IP 地址。
- 解析器将结果缓存一段设定的时间。
域名注册商、DNS 托管商和网站托管商是不同角色
不少中小企业在同一家供应商购买全部服务,各个角色的边界就容易混淆。迁移之前,最好先弄清楚:
- 域名注册商:注册和续费域名的地方。注册商账户还决定域名使用哪些域名服务器。
- DNS 托管商:用其域名服务器存放你的记录的供应商。它可以是注册商、网站托管商、CDN 供应商,也可以是独立的 DNS 服务。
- 网站托管商:存放并运行网站的服务器或平台。
- 邮件服务商:为你的域名收发邮件的服务,通常和网站托管商分开。
更换其中一项,不会自动更换其他项。换了网站托管商,邮箱不会跟着迁过去。
常见 DNS 记录类型
- A:把名称指向 IPv4 地址,例如 example.com 的网站服务器。
- AAAA:作用相同,指向 IPv6 地址。
- CNAME:把一个名称设为另一个主机名的别名,例如把 www 指向平台或 CDN 的主机名。同一名称通常不能同时存在 CNAME 和其他记录。
- MX:列出接收该域名邮件的邮件服务器,每台都有一个优先级数值。
- TXT:自由文本记录,用于域名验证和邮件身份认证。SPF 列出哪些服务可以代表该域名发信;DKIM 发布一个公钥,供收件方校验邮件签名;DMARC 告诉收件方在上述校验不通过时如何处理,以及报告发送到哪里。
- NS:指定对该域名或子域名具有权威性的域名服务器。
TTL 与 DNS 传播
每条记录都有一个 TTL(time to live,生存时间),单位是秒,用来告诉解析器这条记录可以缓存多久。修改记录后,在解析器的缓存过期之前,部分访客仍可能被带到旧的目标地址,这段延迟一般称为“传播”。更换域名服务器需要的时间,可能比修改单条记录更长。常见做法是在迁移前提前调低要修改的记录的 TTL,提前量至少等于当前的 TTL;迁移稳定后再调高。
迁移网站或邮箱时的常见问题
- MX 记录错误或缺失:迁移后邮件被退回,或者仍然进入旧邮箱。
- 更换域名服务器时没有复制全部记录:转移 DNS 托管时如果没有逐条重建记录,MX、TXT 或子域名记录可能会丢失。
- 在旧服务商处修改记录:只有域名服务器所指向的 DNS 托管商才是生效的,在别处修改不会起作用。
- 忘记续费域名:域名一旦过期,网站和邮箱都可能同时停止工作。
- 注册商账户无法登录:如果账户在已离职员工或前供应商手上,找回控制权可能要花时间。
- 证书没有准备好:新的托管商可能要等 DNS 指向它之后,才能签发 SSL 证书。
以下为说明用例子:一家公司迁移网站,把域名服务器切换到新供应商,但只重建了 A 和 CNAME 记录。网站可以正常访问,外部发来的邮件却收不到了,因为 MX 记录还留在旧的 DNS 托管商那里。
迁移前简要检查清单
- 确认注册商账户归谁所有、能否登录,以及域名何时到期续费。
- 查看域名服务器,确定目前由哪家服务商托管 DNS。
- 导出或记录所有现有记录,包括 MX、TXT 和子域名。
- 商定哪些记录要改、由谁来改、什么时候改。
- 提前调低将要修改的记录的 TTL。
- 修改后测试网站、表单、邮件收发和证书。在流量完全切换之前,保留旧服务继续运行。
迁移完成后,网站监测可以帮助你及早发现网站或证书失效。如果你正在计划新网站或网站迁移,可以了解 technine.io 的网站与 Web 应用开发服务。
常见问题
DNS 和我的域名是一回事吗?
不是。域名是你注册的名称;DNS 记录则说明这个名称对应的网站、邮件和其他服务指向哪里。
更换网站托管商时,需要修改 DNS 吗?
通常至少要更新网站的 A 或 CNAME 记录。除非同时更换 DNS 托管或邮件服务,否则不需要转移 DNS 托管,也不用改动邮件相关记录。
设置了 SPF、DKIM 和 DMARC,就能保证邮件进入收件箱吗?
不能保证。这些记录帮助收件系统核实邮件确实来自你的域名。能否送达还取决于发信服务、邮件内容和收件方的过滤机制。具体要发布哪些记录,可以向你的邮件服务商确认。
