动态 IP 和 MX 记录

动态 IP 和 MX 记录

我已读到我“不能”在 MX 记录条目中使用 CNAME。

我的内部邮件服务器通过提供商连接到互联网,其 IP 每两三个月更改一次。我mail.mydomain.com设置了一个子域,稍后我会在我的 MX 条目中引用它mydomain.com IN MX 10 mail.mydomain.com。我是组织中唯一知道如何执行此操作的人。几天前我离开时 IP 发生了变化,显然邮件没有到达邮件服务器。

然后我想用 CNAME 和 dyndns 之类的东西来解决我的问题。我的路由器会自动更新 dyndns 信息,我会将条目更改为mail.mydomain.com(指向我的 dyndns 地址)并完成它。MX 条目将保持不变,指向子域。ACNAME

我已经实施了此解决方案,并且运行良好,除了一个特定的邮件服务器(我知道的)显然无法解析域名。如果我使用条目,它可以A

有没有“正确”的方法来做这件事?不用借助 zoneedit 之类的服务?

谢谢

答案1

据推测,mail.mydomain.com这是一个指向dyndns.org(或类似的)A记录的 CNAME,它是您动态更新的记录。

正确的做法是将该dyndns.org记录列为您的 MX。引用“不得”就像是某个路过的严厉官员随意颁布的禁令一样,这很好,但如果我没记错的话,这是对 RFC974 的逐字引用,因此具有权威性。这意味着任何其他邮件服务器都可以忽略您的 MX 记录。显然,大多数服务器都很友好、宽容,不会忽略它;但至少有一个服务器会忽略它,并且这样做是有错的。

编辑:是的,mydomain.com IN MX myip.dyndns.org.我就是这个意思。你为什么觉得这是不好的做法?因为 MX 是你的域名之外的 A 记录?这不是问题,我有很多这样的记录,它们工作得很好。即使是大公司也会这样做,他随机挑选了一个说:

astrazeneca.com.    86400   IN  MX  10 mail79.messagelabs.com.
astrazeneca.com.    86400   IN  MX  10 mail124.messagelabs.com.

尽管在他们的情况下这样做是为了外包内容过滤而不是因为他们买不起静态地址!

答案2

看起来你的做法很困难。我已经使用动态 IP 地址多年了,使用动态 IP 地址托管电子邮件和网站从未遇到任何问题。我也使用 DynDNS.org 作为我的 DNS。以下是我所做的(这似乎很标准):

  1. 为您当前的 IP 地址创建 A 记录。您如何命名它并不重要,如果您想将其命名为 mail.Yourdomain.TLD,那么就这样命名。邮件服务器没有必须命名为 mail.YourDomain.TLD 的要求,但如果这样对您来说更方便,那就这样吧。确保设置合理的 TTL,例如 1 小时。

  2. 创建一个指向步骤 1 中创建的 A 记录的 MX 记录。确保设置合理的 TTL,例如 1 小时。

  3. 使用动态 DNS 客户端实用程序(安装在您的一台内部计算机上)在动态 IP 地址发生变化时更新 A 记录。

  4. 完成。您再也不需要手动执行任何操作了。

答案3

MadHatter 的解决方案完全没问题,但是您可以考虑其他可能性:

  1. 使用 SMTP 转发服务。这是一项托管服务(动态 DNS 公司(如 no-ip.com)往往会单独收费提供该服务),它会为您接收传入的 SMTP 邮件,然后将其转发到您自己的 SMTP 服务器。这样,当您的服务器停机时,邮件不会丢失 - 它们会在 SMTP 转发器上收集,一旦您的服务器可用,就会推送到那里。

  2. 使用 POP 邮箱轮询。使用您的 ISP 或 Google Apps 或任何其他邮件服务为您的域名开设帐户。电子邮件将发送到您的邮箱,然后您的邮件服务器可以定期轮询此 POP 邮箱并向您的用户发送电子邮件。(轮询邮件服务器可以将消息从单个 POP 邮箱发送到多种的您可以使用内部帐户来管理电子邮件。这是一个“经济”的解决方案,但它的优点是永远不会丢失电子邮件。

  3. 使用支持动态 DNS 的 DNS 提供商托管您的域名(例如dyn.com或者我自己的网我网)。这样你的动态DNS记录就可以了mail.mydomain.com

相关内容