none
【排错】邮件大小限制导致的NDR问题排查 RRS feed

  • 常规讨论


  • 邮件大小限制是很多企业用户的一个常见需求。通过改变Exchange默认的邮件大小设置,可以让企业邮件系统更符合业务需求。然而,不合理的限制不仅不能实现预期的业务需求,反而会导致邮件传递失败,发件人收到各种退件信息。本文将针对这些不同的NDR退件信息来分析问题原因。

    首先,需要了解影响邮件大小的因素,各个因素间的优先级,以及一些不受限制的邮件类型。

    影响因素

    • 组织限制:
      Get-TransportConfig | Format-List MaxReceiveSize,MaxSendSize,MaxRecipientEnvelopeLimit
    • 连接器限制:
      Get-ReceiveConnector | Format-Table Name,Max*Size,MaxRecipientsPerMessage
      Get-SendConnector | Format-Table Name,MaxMessageSize
    • 服务器限制:邮箱服务器上的 web.config XML 应用程序配置文件中配置OWA/ActiveSync/EWS客户端的发送大小。
    • 收件人属性限制:
      Get-Mailbox <MailboxIdentity> | Format-List MaxReceiveSize,MaxSendSize,RecipientLimits
    • 传输规则:
      Get-TransportRule | where {($_.MessageSizeOver -ne $null) -or ($_.AttachmentSizeOver -ne $null)} | Format-Table Name,MessageSizeOver,AttachmentSizeOver

    优先级:

    邮件大小限制优先级的目标是尽可能早地拒绝传输管道中过大的邮件,以免浪费系统资源,所以对于内外部邮件的限制优先级有所不同:

    • 对于内部邮件的收发:用户限制的优先级最高。
    • 对于接收外部的邮件:组织限制优先级最高。

    免受大小限制的邮件:

    • 系统邮件
    • 代理生成的邮件
    • 传递状态通知邮件(即未送达报告NDR邮件)
    • 日记报告邮件
    • 被隔离的邮件

    下面分享几个案例:

    案例一:内部用户User1 发送一封带有大小为2.7M的附件的邮件给内部用户User2,发出后,

    I.收到的NDR邮件类型一:

    原因:

    通过报错“550 5.2.11 RESOLVER.RST.SendSizeLimit.Sender; message too large for this sender”,表明是由于邮件大小超过了发件人发送限制。

    解决方案:

    1. 通过检查发件人邮箱属性限制,确认发送限制是多少:
    2. 如图所示,最大发送限制设置为了1000KB,而发送的邮件大小为2802KB,所以发送失败。
    3. 更改最大发送限制,使之大于需要发送的邮件:

      Set-Mailbox User1 -MaxSendSize 5000KB

    II. 收到的NDR邮件类型二:

    原因:

    通过报错“550 5.2.3 RESOLVER.RST.RecipSizeLimit; message too large for this recipient”,表明是由于邮件大小超过了收件人的接收限制。

    解决方案:

    1. 检查收件人邮箱属性限制,确认接收限制的大小:
    2. 如图所示,最大接收限制设置为1000KB,而发送的邮件大小已超过其限制,所以无法成功投递。
    3. 更改最大接收限制,使之大于需要接收的邮件:

      Set-Mailbox User2 -MaxReceiveSize 5000KB

    案例二:内部用户User1发送一封邮件给User2User3两个用户,发出后,收到的NDR邮件如下:

    原因:

    由于收件人人数的限制为1,而邮件同时发送给了两个用户,导致发送失败。

    解决方案:

    1. 检查发件人邮箱的属性限制: 
    2. 如图所示,收件人数量限制设置为1
    3. 根据需求修改该限制:
      Set-Mailbox User1 -RecipientLimits 10

    案例三:内部用户User1 发送一封带有大小为2.7M的附件的邮件给外部用户,发出后,

    I.收到的NDR邮件类型一:

    原因:

    根据报错“550 5.3.4 ROUTING.SzieLimit; Message size exceeds fixed maximum size for route”,表明邮件在向外部用户投递的过程中,超过了某个邮件路由的限制。

    解决方案:

    1. 根据邮件流,需要检查邮件投递过程会用到的各种连接器限制:
    2. 如图所示,发送连接器上的最大邮件大小限制为2M,而邮件大小已超过该限制,所以导致传递失败。
    3. 修改发送连接器上的最大邮件限制,使之大于需要发送的邮件大小:

      Set-SendConnector “ConnectorName” -MaxMessageSize 5Mb

    II.收到的NDR邮件类型二

    原因:

    根据报错“550 5.2.12 RESOLVER.RST.SendSizeLimit.Org; Message too large for this organization, 表明邮件超出了组织允许的最大发送限制。

    解决方案:

    1. 运行下面指令检查组织限制:

      Get-TransprotConfig |fl Max*size,MaxRecipientEnvelopeLimit

    2. 发现最大发送限制为2MB,发送的邮件已超过该限制,所以导致发送失败。
    3. 根据需求修改组织限制:

      Set-TransprotConfig -MaxSendSize 5mb

    以上几种案例基本涵盖了平时会遇到的大多数由于大小限制导致的NDR邮件,对于一些特殊的客户端限制,比如OWA/ActiveSync/EWS,可以参考“配置客户端专属邮件大小限制”这篇文章进行检查和配置。

    参考资料:

    Message size limits in Exchange Server

    Configure client-specific message size limits

    关键词:邮件大小限制,邮件大小,Message LimitNDRMessage too large

    如果您遇到类似的问题且通过以上步骤仍未能解决,欢迎随时来我们论坛提问(点击文章页面左上角的提出问题按钮快速发帖)。


    如果帖子有帮到您的话,请点击左上方“投票”按钮。这将帮助到阅读这个帖子的其他用户。



    2019年7月11日 9:01
    版主