
什么是DNS?
DNS代表域名系统(Domain Name System)。它是一个系统,将域名(如www.example.com)翻译成托管这些网站的服务器的IP地址,以便浏览器知道在哪里连接。
把DNS看作互联网的电话簿。当你在浏览器中输入域名时,DNS会查找匹配的IP地址并自动引导你访问该网站 — 这一切在不到一秒的时间内完成。
DNS如何工作?
当你在浏览器中输入域名时,DNS解析过程分以下步骤进行:
- 你的浏览器向DNS解析器发送请求(通常来自你的ISP、Google DNS或Cloudflare)
- DNS解析器查询根名称服务器以查找域名的位置
- 根服务器转发到TLD名称服务器(例如.com或.th)
- TLD服务器转发到域名的权威名称服务器
- 权威名称服务器使用服务器的IP地址响应
- 你的浏览器连接到该IP并加载网站
常见DNS记录类型
每种DNS记录类型都有不同的用途。下表列出了最常用的类型、每种的功能和实际示例。了解每种记录类型的作用有助于你第一次正确配置DNS,无需反复试验:
| 记录类型 | 用途 | 示例 |
|---|---|---|
| A记录 | 将域名指向IPv4服务器地址 — 每个网站都需要的最基本记录 | example.com → 103.1.2.3 |
| AAAA记录 | 将域名指向IPv6服务器地址 — 的作用类似A记录,但用于下一代IP | example.com → 2001:db8::1 |
| CNAME | 将一个域名指向另一个域名(别名) — 理想用于应该跟随主域名的子域 | www → example.com |
| MX记录 | 指定域名的邮件服务器,带有优先级值以排序备用服务器 | mail.example.com 优先级 10 |
| TXT记录 | 存储SPF、DKIM、DMARC的文本或各种服务的域名验证 | v=spf1 include:... -all |
| NS记录 | 指定管理域名DNS的名称服务器 — 告诉互联网该域名的DNS服务器在哪里 | ns1.asiagb.com |
| TTL | 不是记录,而是时间值(以秒为单位),告诉解析器在重新查询前缓存结果多长时间 | 3600 = 1小时 |
如何设置A记录指向托管服务
如果你的域名和托管服务由不同的提供商注册,你需要设置A记录将域名指向托管服务器的IP地址。方法如下:
- 登录你的域名注册商并进入DNS管理面板
- 从欢迎邮件或控制面板中查找托管服务器的IP地址
- 添加新的A记录:名称 = @(或yourdomain.com),类型 = A,值 = 你的托管IP
- 添加另一个A记录:名称 = www,类型 = A,值 = 相同的IP(或指向@的CNAME)
- 保存更改并等待24–48小时进行DNS传播
如果你的域名和托管都是在AsiaGB注册的,DNS将自动配置 — 无需手动设置。
逐步设置A记录和CNAME
现在你已经了解了每种记录类型的作用,让我们逐步完成实际设置 — 分别说明A记录(指向IP)和CNAME记录(指向另一个域名)。这是你启动网站时使用最多的两种记录。
如何添加A记录
- 打开管理你的域名DNS的提供商的DNS管理面板
- 点击"添加记录"并选择类型A
- 在名称 / 主机字段中,输入
@表示根域(example.com)或子域如blog表示blog.example.com - 在值 / 指向字段中,输入服务器的IPv4地址,例如103.1.2.3
- 将TTL设置为3600(1小时)或自动,然后保存
如何添加CNAME
CNAME将子域指向另一个域名而不是直接IP。优点是当目标IP更改时,你无需编辑CNAME — 它会自动跟随目标域名:
- 点击"添加记录"并选择类型CNAME
- 在名称 / 主机字段中,输入所需的子域,例如
www - 在值 / 目标字段中,输入目标域名,例如
example.com(某些系统需要末尾点) - 保存记录并等待DNS传播
注意:根据DNS标准,不要在@(根域)上创建CNAME,因为它会与MX和NS等其他记录冲突。如果你需要根域指向其他地方,请改用A记录。
DNS传播需要多长时间 / 什么是TTL?
DNS传播是全球DNS服务器逐步获取你的新记录值的过程 — 这不会同时在所有地方发生。每个解析器根据之前设置的TTL缓存前一个结果,因此某些位置会快速看到新值,而其他位置在缓存过期前仍然看到旧值。
TTL(生存时间)是一个秒数值,告诉解析器在再次查询前缓存DNS结果多长时间。低TTL(例如300秒 = 5分钟)使更改快速生效但增加查询负载,而高TTL(例如86400 = 24小时)减少DNS负载但使更改应用速度较慢。
迁移服务器前的提示:至少提前一天将你计划更改的记录的TTL降低到300秒。当你进行实际切换时,A记录更改将在几分钟内生效 — 然后在迁移完成后将TTL提高到较高值。
重要:更改DNS设置或添加新记录后,请留出24–48小时进行DNS传播 — 全球DNS服务器更新其记录所需的时间。在此期间,对你的网站的访问可能不一致,具体取决于访问者的位置。在得出配置错误的结论之前,请等待完整的传播期。
AsiaGB每个域名都包括免费DNS管理
每个在AsiaGB注册的域名都附带免费DNS管理。你可以随时通过客户端区域添加、编辑或删除DNS记录,支持A记录、CNAME、MX、TXT、NS等。
AsiaGB还通过DNS面板支持电子邮件转发和URL重定向,让你对域名有完全控制,无需依赖外部服务。
域名定价:.com从500泰铢/年,.co.th从800泰铢/年,.in.th从600泰铢/年 — 所有域名都包括免费DNS管理和WHOIS隐私保护。
常见DNS问题及其解决方法
当你配置了DNS但网站仍然不如预期工作时,原因通常是几个经常出现的问题之一。以下是最常见的问题及其解决方法:
已更改DNS但网站仍不加载
这通常意味着DNS仍在传播 — 先等待完整的期限,或者尝试清除本地DNS缓存(例如Windows上的ipconfig /flushdns)并从不同网络测试,例如通过4G/5G移动网络打开网站以绕过ISP的旧缓存。
错误的名称服务器
如果注册商处的NS值与实际的DNS提供商不匹配,你的任何记录都将不起作用。验证域名注册页面上的NS值与你实际使用的DNS提供商的名称服务器相匹配。
网站可以访问但电子邮件不到达
这经常发生在A记录正确但忘记设置MX记录,或者MX指向错误的服务器时。检查MX记录及其优先级是否指向正确的邮件服务器,并确认SPF的TXT记录。
www可以访问但裸域不行(或反之)
这是由只为其中一个设置记录引起的。确保你同时有@(根域)和www的记录 — 要么有两个A记录,要么在www上有指向根域的CNAME。
关于DNS的常见问题
DNS传播需要多长时间?
全球DNS服务器完全更新通常需要24–48小时,尽管在许多情况下更改在几小时内可见,具体取决于之前设置的TTL和每个用户的解析器。
A记录和CNAME之间有什么区别?
A记录将域名直接指向IP地址,而CNAME将域名指向另一个域名(别名)。对于根域和当你知道确切IP时使用A记录;对于应该自动跟随目标域名值的子域使用CNAME。
我可以在根域上设置CNAME吗?
根据DNS标准,你不应该在根域(@)上设置CNAME,因为它与MX和NS等记录冲突。改为在根域上使用A记录。如果你需要根域指向另一个域名,某些提供商提供ALIAS/ANAME功能作为替代方案。
更改DNS会导致临时停机吗?
如果在切换前正确配置了新记录,网站不会关闭。在传播期间,某些用户将到达旧服务器,某些用户将到达新服务器。提前降低TTL并在两台服务器上保持相同的内容使迁移无缝进行。