面向 Web 开发人员的 DNS 记录速成课程 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 备忘单

2025-05-24

面向 Web 开发人员的 DNS 记录速成课程

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

备忘单

这最初是在推特上发布的:https://twitter.com/chrisachard/status/1188870256971915265

对 DNS 记录感到困惑?A、CNAME、ALIAS……

我也是😬

让我们改变它!(最后有备忘单)

🔥 面向 Web 开发人员的 DNS 记录速成课程 👇

1.

为了访问www.example.com,您的计算机需要知道该服务器在互联网上的位置

这意味着:它必须知道要与哪个 IP 地址通信

它的查找方式是域名系统 (DNS)

DNS 图表

2.

注册域名时,您可以设置多种类型的 DNS 记录

每条记录都有一个类型、一个主机和一个值

  • “类型”是预定义的
  • “主机”代表根域 ( @) 或子域 ( www)
  • “值”是 IP 或网址,或其他值

DNS 记录类型、主机和值

3.

A记录将子域名映射到 IPv4 地址

这最常用于根目录,因此它会告诉您的浏览example.com

AAAA记录对 IPv6 也起到同样的作用

DNS A 记录

4.

CNAME将子域名映射到另一个域名

这可以是同一站点上的另一个子域(例如将 www 转发到根目录)

或者其他域名,例如 heroku - 您的应用所在的域名

CNAME DNS 记录

5.

但有一个问题CNAME

一旦为子域(主机)定义了一条CNAME记录,就不能为同一子域定义另一条记录

因此,您不能CNAME在根级别使用(您需要其他记录存在)

不要在根目录使用 CNAME

6.

为了解决这个问题,有时ALIAS使用ANAME

ALIAS类似于CNAME,但它是一种非标准的 DNS 类型

因此,您可以使用ALIAS将根域 ( example.com) 转发到应用的服务器 ( example.herokudns.com)

在域的根目录下使用 ALIAS

7.

这样您就可以将其他记录放在根目录下,例如:

TXT记录,为任何读取 DNS 记录的计算机提供额外信息

TXT记录通常用于证明您拥有域名 - 因为只有域名所有者才能设置 DNS 记录。

TXT记录信息

8.

或者:

MX记录(邮件交换),用于指定处理您的电子邮件的另一个服务器(如谷歌)

MX记录是唯一的,因为您可以设置多个服务器,每个服务器都赋予一个“优先级”

MX记录

9.

还有许多其他记录类型,但这些是你最常自己设置的记录类型。

对于每条记录,您还指定生存时间 (TTL)

这会告诉 DNS 服务器缓存 DNS 值多长时间

TTL 决定缓存

10.

TTL 是新域名记录需要一些时间才能“传播”的原因

DNS 服务器、你的 ISP,甚至你自己的计算机都可以缓存 DNS 记录,提供“旧”值,直到 TTL 用完

DNS缓存

备忘单

希望这能让您在设置下一个域时 DNS 不那么混乱!

总而言之,这里是此速成课程的 PDF 备忘单:https://chrisachard.com/cheatsheets/dns-cheatsheet.pdf

🎉

 

喜欢这篇文章吗?

您可以在 Twitter 上找到更多信息:@chrisachard
或加入时事通讯📬 https://chrisachard.com/newsletter/

感谢阅读!

文章来源:https://dev.to/chrisachard/dns-record-crash-course-for-web-developers-35hn
PREV
ES6 迷你速成课程:如何编写现代 JavaScript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
NEXT
对 git 感到困惑?这里有一个 git 速成课程来解决这个问题 🎉 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.