MX发送邮件

邮件交换(MXMail Exchange)记录用于指出某个DNS区域中的邮件服务器的主机名(A记录),它相当于一个指针,因此在创建MX记录之前,你必须已经为邮件服务器创建了A记录;你可以针对相同的DNS域配置多个MX记录,但是邮件服务器优先级数值越低的MX记录具有越高的优先级。

首先了解一下邮件的传送过程,例如我现在通过[email protected]这个邮箱向[email protected]邮箱发送邮件,那么完整的邮件传送过程如下:

1、邮件客户端[email protected]连接到isacn.org域的邮件服务器mail.isacn.org(当然,连接的形式是多样化的,可以使用SMTP,也可以使用Web Mail等),然后告诉mail.isacn.org,说有一封邮件要发送至[email protected];如果mail.isacn.org允许这种行为,那么,邮件客户端[email protected]将完整的邮件信息发送给mail.isacn.org,此时,邮件客户端[email protected]将会提示用户邮件发送成功,注意,这仅仅代表从本地到你的邮件服务器发送成功,并不代表对方成功接收到你发送的邮件

2mail.isacn.org向自己的DNS服务器发起MX记录查询请求,查询目的邮件域winsvr.orgMX记录:

  • 如果查询到单个MX记录指向某个邮件服务器主机,例如MX记录指向邮件服务器的主机mail.winsvr.org,则连接此邮件服务器;
  • 如果具有多个MX记录指向不同的邮件服务器主机,则按照优先级顺序从高到低进行连接,直到连接成功为止;
  • 如果没有查询到MX记录,根据邮件服务器配置的不同,mail.isacn.org的行为可以分为以下两种:
    • 终止邮件发送,返回给用户邮件发送失败信息;
    • 查询邮件域名(在此是winsvr.org)的A记录,然后连接对应的主机。这就是为什么有时就算没有MX记录也能接收到邮件的原因,但是,这不是标准的行为,并且只有部分邮件服务器支持这种行为。

3mail.isacn.org连接对应的邮件服务器,例如mail.winsvr.org,然后发送邮件信息。如果连接不成功,mail.isacn.org会按照一定的时间间隔进行重试,直到某个时间周期为止(通常为1),此时,如果邮件仍然发送不成功,邮件服务器将终止邮件发送并向发送邮件的用户报告邮件发送失败,而有些比较高级的邮件服务器支持在一定时间周期内(例如30分钟)邮件发送不成功就报告用户;如果连接成功但是被对方邮件服务器因为某种原因拒绝,例如认为mail.isacn.org是垃圾邮件服务器或者发送到的邮箱不存在等等,那么mail.isacn.org会立即向发送邮件的用户报告邮件发送失败并告知原因;如果连接成功并且邮件发送成功,mail.isacn.org通常不会再次通知发送邮件的用户。因此,如果要想确认对方成功收到你发送的邮件,你可以通过以下方式进行:

  • 要求已读回执;这是推荐使用的方式,可以确认对方已经打开过邮件;
  • 查看邮件服务器日志;只能表示你发送的邮件成功到达对方邮件服务器,但不能代表对方已经阅读邮件;
  • 等待1天后(或更长)没有邮件发送失败的提示;仅在无法使用上述方式时使用,只能表示你发送的邮件应该成功的到达了对方邮件服务器,但不能代表对方已经阅读邮件;

你可能感兴趣的:(Web,Exchange)