0
0
0

一文搞懂域名、子域名与 DNS 解析

2026-10-22
2026-10-22
文章摘要
|

买了一个域名后,还需要为 blog、api 单独买域名吗?主站服务器挂了,子域名还能访问吗?这篇文章以 lookstar.asia 为例,把域名、子域名和 DNS 的基本关系讲清楚。

一、主域名和子域名是什么

假设我购买了域名:

lookstar.asia

日常会把它叫作主域名。这里严格来说,.asia 是顶级域名,lookstar.asia 是注册域名(也常叫根域名)。

在这个域名下面,我还可以使用:

www.lookstar.asia
blog.lookstar.asia
api.lookstar.asia
test.lookstar.asia

这些都是 lookstar.asia 的子域名,可以分别用于主页、博客、接口服务和测试环境。

子域名不需要单独购买。 只要拥有 lookstar.asia 的 DNS 管理权限,就可以按照需要创建子域名。子域名本身通常不收费,但服务器、CDN、DNS 增值服务或付费证书可能产生费用。

子域名还能继续嵌套吗?

可以,例如:

lookstar.asia
blog.lookstar.asia
dev.blog.lookstar.asia

如果使用 DNSPod 管理 lookstar.asia,要创建 dev.blog.lookstar.asia,通常填写:

主机记录:dev.blog

实际工作中,直接说“子域名”更不容易混淆;二级域名、三级域名的叫法有时会因统计层级不同而引起误解。

二、DNS 是做什么的?

DNS(Domain Name System,域名系统)可以简单理解成:把域名转换成 IP 地址的查询系统。

例如:

blog.lookstar.asia → 123.123.123.123

人容易记住域名,而浏览器需要借助 DNS 查询出目标服务器的 IP 地址,才能尝试建立连接。

注意:DNS 只负责解析,不负责把 HTTP 请求转发给后端服务。 DNS 返回地址后,请求由浏览器直接发往目标 IP(这里说的是没有额外代理等特殊情况的普通访问)。

三、如何创建子域名

以腾讯云 DNSPod 为例,要让 blog.lookstar.asia 指向自己的服务器,可以添加一条 A 记录:

配置项

填写内容

记录类型

A

主机记录

blog

记录值

服务器公网 IPv4 地址

线路类型

默认

TTL

默认

常见主机记录:

主机记录

对应域名

@

lookstar.asia

www

www.lookstar.asia

blog

blog.lookstar.asia

api

api.lookstar.asia

dev.blog

dev.blog.lookstar.asia

添加后,DNS 记录生效时,访问 blog.lookstar.asia 就能解析到配置的 IP。解析成功不代表网站一定能打开,还要看服务器、端口、Web 服务等是否正常。

四、DNS 解析记录:A 记录与 CNAME 记录

DNS 解析记录用于指定域名如何找到对应的服务。其中,A 记录和 CNAME 记录是日常部署网站时最常用的两种类型。

1. A 记录

A 记录(Address Record,地址记录)用于将域名指向一个 IPv4 地址。

IPv4 是服务器在网络中使用的一种 IP 地址格式,例如 123.123.123.123。假设博客部署在这台服务器上,就可以配置:

blog.lookstar.asia  →  123.123.123.123

在 DNSPod 中填写:

配置项

填写内容

记录类型

A

主机记录

blog

记录值

123.123.123.123

作用: 让访问 blog.lookstar.asia 的客户端通过 DNS 找到服务器的 IPv4 地址。适合个人博客、Spring Boot 接口等直接部署在云服务器上的场景。

2. CNAME 记录

CNAME 记录(Canonical Name Record,规范名称记录)用于将一个域名指向另一个域名。 它不是直接填写 IP,而是指定目标域名,由 DNS 再继续查询该目标的 IP 地址。

假设 server.example.com 已经解析到 123.123.123.123,可以配置:

blog.lookstar.asia
        ↓ CNAME
server.example.com
        ↓ A
123.123.123.123

在 DNSPod 中填写:

配置项

填写内容

记录类型

CNAME

主机记录

blog

记录值

server.example.com

作用: 让自己的子域名使用另一个域名对应的服务地址。常用于 CDN、对象存储网站托管,以及要求绑定指定域名的第三方平台。

例如,第三方服务商调整了 server.example.com 对应的 IP,只要 CNAME 目标域名不变,通常就不需要修改 blog.lookstar.asia 的记录。

需要注意:CNAME 是 DNS 层面的别名,不是网页重定向。 浏览器地址栏仍然显示 blog.lookstar.asia,不会因为 CNAME 自动跳转到 server.example.com。目标服务器还必须正确配置接收该域名的 HTTP 请求,并为 HTTPS 配置匹配的证书。

3. 使用场景对比

对比项

A 记录

CNAME 记录

指向目标

IPv4 地址

另一个域名

示例

blog → 123.123.123.123

blog → server.example.com

常见用途

自己的云服务器

CDN、第三方平台

目标 IP 改变

通常需要修改记录

由目标域名维护解析,通常不用改自己的记录

如果博客直接部署在自己的腾讯云服务器上,使用 A 记录就足够了;如果接入 CDN,服务商一般会提供一个 CNAME 地址,按其要求配置即可。

注意:同一个 DNS 名称配置 CNAME 后,不能再同时配置 A 等普通记录。IPv6 地址对应的则是 AAAA 记录,不是 A 记录。

五、浏览器访问子域名时发生了什么

假设:

lookstar.asia       → 服务器 A
blog.lookstar.asia  → 服务器 B

当用户输入 blog.lookstar.asia 时,简化流程为:

浏览器访问 blog.lookstar.asia
          ↓
查询 DNS(可能命中本地缓存)
          ↓
得到服务器 B 的公网 IP
          ↓
浏览器连接服务器 B
          ↓
服务器 B 的 Web 服务处理请求并返回响应

这里有个重要结论:浏览器不会因为 blog.lookstar.asia 属于 lookstar.asia,就先访问主域名对应的服务器 A。

子域名和主域名可以指向完全不同的服务器。

六、主站服务器挂了,子域名还能用吗?

继续使用前面的例子:

lookstar.asia       → 服务器 A
blog.lookstar.asia  → 服务器 B

如果服务器 A 宕机,服务器 B 仍然正常运行,那么:

lookstar.asia       → 可能无法访问
blog.lookstar.asia  → 仍可正常访问

前提是子域名访问不依赖服务器 A,并且 DNS、服务器 B、网络与对应 Web 服务正常。

但如果实际架构是:

blog.lookstar.asia → 服务器 A(Nginx 转发)→ 服务器 B

服务器 A 就是请求链路的一环,它宕机时,博客也可能无法访问。

所以,是否互不影响,关键看 DNS 指向哪里、实际流量经过哪里,而不在于域名名字之间有没有父子关系。

七、两个常用排查命令

1. nslookup:检查 DNS 解析

nslookup blog.lookstar.asia

作用: 查询域名解析出的 IP 地址,判断 DNS 是否能正常解析,以及解析结果是否为预期的服务器 IP。

2. curl.exe -I:检查 HTTP 响应

curl.exe -I http://blog.lookstar.asia

作用: 向网站发送 HTTP HEAD 请求,查看返回的 HTTP 状态码和响应头,初步判断网站的 HTTP 服务是否能够响应。也可以将 http 改为 https 检查 HTTPS。

nslookup 正常只能说明 DNS 查询成功,不能证明网站正常;curl.exe -I 也可能因网站不支持 HEAD 请求而返回错误。在 Windows PowerShell 中明确使用 curl.exe,可避免 curl 别名引起混淆。

八、总结

  1. 买了 lookstar.asia,通常无需再购买 blog.lookstar.asia、api.lookstar.asia 等子域名。

  2. A 记录指向 IPv4;CNAME 指向另一个域名,不是网页重定向。

  3. DNS 负责查询地址,不负责处理网站请求。

  4. 主域名和子域名可以部署在不同服务器,不必先经过主站。

  5. 主站服务器故障是否影响子域名,取决于实际流量是否依赖它。

  6. DNS 解析正常 ≠ 网站一定能访问。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论