如何设置DNS A记录和CNAME记录?

HCRM技术_小炮 DNS 2025-11-03 8 0

A记录 vs CNAME记录

在设置之前,最关键的是要理解它们的作用:

A记录(Address Record)地址记录,它直接将一个域名指向一个IP地址(IPv4)。

比喻就像你的手机通讯录里,直接把“张三”这个名字对应到他的电话号码138xxxxxxx

例子example.com 指向服务器IP192.0.2.1

CNAME记录(Canonical Name Record)别名记录,它将一个域名指向另一个域名,而不是IP地址,让两个域名最终指向同一个地方。

比喻就像你的通讯录里有一个“张总”的名字,但你并不直接存他的号码,而是设置成“指向张三”,这样,无论“张三”的号码怎么变,“张总”的号码都会自动跟着变。

例子www.example.com 指向example.com

如何设置A记录和CNAME记录

设置DNS记录的地方是在您的域名注册商DNS托管服务商的管理后台(Cloudflare, DNSPod, 阿里云万网,GoDaddy等),虽然界面不同,但核心字段都是一样的。

设置A记录

您需要为根域名设置一个A记录。

常见场景:让访问者输入example.com 就能访问你的网站。

需要填写的字段:

主机记录/名称(Host/Name)

* 如果你要设置根域名example.com,这里通常填@ 或者留空(不同服务商要求不同,请参照提示)。

* 如果你要设置子域名,比如blog.example.com,这里就填blog

记录类型(Type)选择A

值/指向/目标地址(Value/Destination/Target)填写你的服务器IP地址192.0.2.1)。

TTL(Time-To-Live)缓存时间,一般选择“自动”或默认值(如3600秒,即1小时)即可。

示例配置:

主机记录 记录类型 记录值
@ A192.0.2.1
blog A192.0.2.1

这表示:

example.com ->192.0.2.1

blog.example.com ->192.0.2.1

设置CNAME记录

您会为www子域名 或其他服务设置CNAME记录。

常见场景1:让访问者输入www.example.com 也能访问你的网站,并且始终跟根域名保持一致。

需要填写的字段:

主机记录/名称(Host/Name)填写子域名的前缀,要为www.example.com 设置,就填www

记录类型(Type)选择CNAME

值/指向/目标地址(Value/Destination/Target)填写它要指向的另一个域名,通常这里填你的根域名example.com.注意:末尾的点. 通常系统会自动补全,如果手动输入则必须加上,代表全限定域名)。

TTL同样,选择自动或默认值。

常见场景2:使用第三方服务,比如GitHub Pages, Vercel, 或CDN服务,他们会给你一个他们自己的域名让你做CNAME指向。

示例将你的blog.example.com 指向GitHub Pages提供的yourname.github.io

示例配置:

主机记录 记录类型 记录值
www CNAMEexample.com.
blog CNAMEyourname.github.io.

这表示:

www.example.com ->example.com -> (A记录最终解析到)192.0.2.1

blog.example.com ->yourname.github.io. -> (GitHub的服务器IP)

一个典型的网站DNS配置方案

对于一个标准的网站,最常见的组合是:

1、为根域名设置一个A记录,指向你的服务器IP。

2、为www子域名设置一个CNAME记录,指向你的根域名。

这样,无论用户访问example.com 还是www.example.com,都能到达同一个网站。

配置示例:

主机记录 记录类型 记录值 说明
@ A192.0.2.1 解析example.com
www CNAMEexample.com. 解析www.example.comexample.com

⚠️ 重要注意事项

1、CNAME记录的冲突:一个主机名(如example.com)不能同时存在CNAME记录和其他记录(如A记录、MX记录等),这是因为CNAME代表“这就是这个主机的全部定义”,它会覆盖其他记录。

2、根域名的CNAME:根据DNS标准,根域名(@,即example.com)通常不应该设置CNAME记录,这被称为“CNAME Flattening”,一些先进的DNS服务商(如Cloudflare)通过技术手段支持了此功能,但传统DNS服务器不支持,最佳实践依然是根域名用A记录。

3、生效时间:DNS记录修改后需要一定时间才能在全球生效,这就是TTL所控制的,在修改期间,有些地方可能访问到的是旧IP,有些是新的,这是正常现象。

4、目标地址的格式

* A记录的值必须是IP地址

* CNAME记录的值必须是域名,且通常以点.

要指向服务器IP? -> 用A记录

要指向另一个域名,或者给域名起个别名? -> 用CNAME记录

经典搭配根域名@A记录www 子域名用CNAME记录 指向根域名。

希望这个详细的解释能帮助您完成设置!

文章摘自:https://idc.huochengrm.cn/dns/19630.html

评论