在单个服务器或具有一个 IP 地址的 VPS 上设置 Web / 邮件服务器时,几乎每个在线指南都遵循相同的 DNS 结构:
example.com. IN A 192.0.2.0
hostname.example.com. IN A 192.0.2.0
mail.example.com. IN A 192.0.2.0
example.com. IN MX 10 mail.example.com.
0.2.0.192.in-addr.arpa. IN PTR hostname.example.com
我用过几次,它总是对我有用。但我想知道邮件服务器指向不同名称的原因是什么?是否可以将 MX 记录指向主机名,然后简单地将 hostname.example.com 用于 SMTP 和 POP3?
答案1
是的,这是可能的,但是如果你选择这样做,你将失去一些重要的优势:
如果将所有服务指向同一个 DNS 名称,则不能再将它们放在单独的服务器上,除非重新配置引用它们的任何客户端。
举个例子:使用不同的名称,当服务器上的负载过大时,您可以简单地将邮件服务卸载到另一台服务器,而不会影响客户端。您所要做的就是调整您的 DNS 记录。
答案2
您可以为您的邮件服务器使用任何您喜欢的主机名,但是您确实需要有一个 MX 条目。
话虽如此,我确实喜欢为不同角色使用不同名称的想法。首先,如果/当需要更改主机时,您可以更好地控制 DNS,并且由于外部 DNS 缓存而遇到的问题会更少。
答案3
您的邮件服务器将需要一条PTR
指向它的记录。这将允许反向 DNS 工作。我不信任使用二级域名的邮件服务器,因为example.com
太多垃圾邮件发送者试图声称他们的名字是知名域名之一。您最好使用像这样的名称mail.example.com
。如果您使用,请在您的主域中mail.example.com
添加一个,表示将接收邮件。顺便说一句,和都不能是条目。MX
example.com
mail.example.com
mail.example.com
example.com
CNAME
您可以在同一个域名上运行所有东西。但是,如果我说服您使用mail.example.com
作为邮件服务器,您可能希望使用www.example.com
作为 Web 服务器,而不是mail.example.com
。如果您使用,www.example.com
则可以轻松为不从 Web 服务器接收 cookie 的静态内容添加并行域。
通常将父域的 IP 地址example.com
解析为 Web 服务器的地址。如果您的 Web 流量不大,则可以为您的 Web 域使用 CNAME 记录。上面未列出的其他服务(例如 POP 和 IMAP)可以由 CNAME 记录处理。如果您稍后添加不同的服务器,则可以用 A 记录替换 CNAME 记录,或者只需调整 CNAME 记录即可。使用 CNAME 记录可以轻松添加 IPV6,因为您无需向所有域添加 AAAA 记录。
我喜欢为主机名设置 DNS 记录。如果这样做,您可以使用该域而不是邮件作为您的MX
。在您的示例中,我将删除记录并在您的记录中mail.example.com
使用。添加 CNAME 记录,您就大功告成了。 hostname.example.com
MX
www.example.com
您的邮件服务器应使用PTR
服务器记录所使用的任何名称。您可能需要让您的 IP 提供商进行相应更改PTR
。A
也为该名称添加一条记录。
hostname.example.com
考虑为和都添加 SPF 记录example.com
。
答案4
按照rfc5321如果缺少 MX,则邮件将发送到 A 地址。因此,SMTP 运行不需要以下几行:
mail.example.com. IN A 192.168.0.1
example.com. IN MX 10 mail.example.com.
也可以看看:https://en.wikipedia.org/wiki/MX_record#Fallback_to_the_address_record