day*_*oli 94 domain-name-system email-server a-record ip-address mx-record
我了解您不应将 MX 记录直接指向IP 地址,而应将其指向A记录,而该记录又指向您的邮件服务器的 IP 地址。
但是,原则上,为什么需要这样做?
Mic*_*ton 93
MX记录背后的整个想法是指定主机或主机可以接收邮件的域。根据RFC 1035 中的规定,MX 记录包含一个域名。因此,它必须指向自己可以在 DNS 中解析的主机。无法使用 IP 地址,因为它会被解释为无法解析的不合格域名。
在 1980 年代最初编写规范时的原因与今天的原因几乎相同:一台主机可能连接到多个网络并使用多个协议。
早在 80 年代,将邮件网关连接到使用 TCP/IP 的(相对较新的)互联网和其他经常使用其他协议的传统网络的情况并不少见。以这种方式指定 MX 允许 DNS 记录,这些记录可以识别如何到达 Internet 以外的网络(例如Chaosnet)上的此类主机。然而,在实践中,这几乎从未发生过。几乎每个人都重新设计了他们的网络,成为互联网的一部分。
今天的情况是主机可以通过多个协议(IPv4 和 IPv6)以及每个协议中的多个 IP 地址访问。单个 MX 记录不可能列出多个地址,因此唯一的选择是指向一个主机,然后可以在其中查找该主机的所有地址。(作为性能优化,如果有权威记录,DNS 服务器将在响应附加部分中发送主机的地址记录,从而节省往返时间。)
当您的邮件交换器由第三方(例如 Google Apps 或 Office 365)提供时,也会出现这种情况。您将 MX 记录指向它们的主机名,但服务提供商可能需要更改邮件服务器的 IP 地址。由于您已指向主机,因此服务提供商可以透明地执行此操作,您无需对您的记录进行任何更改。
Håk*_*ist 20
DNS 作为协议具有一些不同类型的值,这些值不可互换。
需要注意的是,DNS 是一种二进制协议,在记录类型和此类记录保存的数据类型之间具有严格的映射关系。
例如:
一条A记录包含一个 IPv4 地址(4 个字节的数据,固定长度)。
一条AAAA记录保存一个 IPv6 地址(16 字节数据,固定长度)。
的MX记录,在另一方面,保持名(标签上的格式的序列<int number of bytes> <label> <int number of bytes> <label> <int 0>,长度可变)。
这不是可能的一个MX记录有一个IP地址作为其数据。
我会抛出这个作为猜测。当然,我在家得了流感,所以也许我疯了。
RFC 974 规定:
LOCAL 的邮件程序的第一步是为 REMOTE 发出对 MX RR 的查询。强烈建议每次邮件程序尝试发送邮件时都执行此步骤。希望域数据库中的更改将被邮件程序迅速使用,因此域管理员将能够通过简单地更改域数据库来为有缺陷的主机重新路由传输中的消息。
通过要求名称而不是 IP,它有力地鼓励了这种做法。名称可以保持不变,并且在负载平衡或 DR 的情况下,您不必担心更改 MX 记录本身和等待 DNS 传播。
| 归档时间: |
|
| 查看次数: |
56873 次 |
| 最近记录: |