积极答复者
咨询SMTP认证和发件流程

问题
-
环境 server 2016+exchange2016
使用587 和25端口进行SMTP配置和发件操作
用户user01 主数据库在server06上 用户连接server01上
现象1:
server01 接收连接器server01\Client Proxy server01 (465端口)MessageRateLimit 值为10 ,server06 的接收连接器server06\Client Proxy server06 (465端口)值为5 时,连续使用587端口发送到第6封邮件时出现报错,因频率限制无法发送。
现象2:
server01\Client Frontend server01 (587端口)MessageRateLimit 值为5 ,server06 的接收连接器server06\Client Proxy server06 (465端口)值为10 时,连续使用587端口连续发送10封邮件则没有问题。
问题:
1.想知道详细SMTP的发件逻辑关系?(以下是我的理解)
例如:此示例 用户在server01的587端口认证,server01 的Client Frontend server01 接收连接器 发件代理到用户主动主机库服务器的接收连接器server06\Client Proxy server06 (465端口) 再发送发件
2. 为什么server01\Client Frontend server01 (587端口)MessageRateLimit 值为5 的限制失效,理论上第二种 情况也只能在1分钟内最多发送5封邮件,但实际上可以发送10封?
- 已编辑 Caesar_CL 2021年11月29日 14:08
答案
-
您好,
1.想知道详细SMTP的发件逻辑关系?(以下是我的理解)
根据我的了解,您的理解是对的。使用587端口发送邮件时,先由前端传输服务中的接收连接器Client Frontend (587)接收请求,然后请求会被代理到邮箱服务器传输服务中的接收连接器Client Proxy(465),再将邮件发出。以下英文博客中有部分相关解释,您可以参考看看(博客是关于Exchange 2013的,但基本概念对Exchange 2016依然适用):
Exchange 2013 Mail Flow Demystified…Hopefully!
2. 为什么server01\Client Frontend server01 (587端口)MessageRateLimit 值为5 的限制失效,理论上第二种 情况也只能在1分钟内最多发送5封邮件,但实际上可以发送10封?
针对您的这个疑问,搜索下来没有能找到针对这个场景进行具体解释的官方说明文档。但根据我这边的本地测试,当我用Send-MailMessage指定通过587端口发送邮件后,邮件跟踪日志(Get-MessageTrackingLog)的查询结果显示,邮件流中只涉及到了Client Proxy(465)这个接收连接器:
我这里在单台服务器的环境中,对Client Frontend(587)和 Client Proxy(465) 的MessageRateLimit调整后,观察到的也是和您一样,实际发送邮件时是按Client Proxy(465) 的MessageRateLimit生效的。如,Client Frontend的MessageRateLimit保持默认值5,Client Proxy的MessageRateLimit改为8,发到第9封邮件时才会出现速率限制的报错。
根据以上线索,我的理解是只有 Client Proxy(465) 这个连接器实际参与到了邮件发送过程,所以在您提到的“现象2”中,也只用到了接收连接器server06\Client Proxy server06 (465端口)的值10。
此致,
Yuki Sun
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 Yuki SunMicrosoft contingent staff 2021年11月30日 5:48
- 已建议为答案 Yuki SunMicrosoft contingent staff 2021年12月2日 23:50
- 已标记为答案 Caesar_CL 2021年12月14日 15:20
全部回复
-
您好,
1.想知道详细SMTP的发件逻辑关系?(以下是我的理解)
根据我的了解,您的理解是对的。使用587端口发送邮件时,先由前端传输服务中的接收连接器Client Frontend (587)接收请求,然后请求会被代理到邮箱服务器传输服务中的接收连接器Client Proxy(465),再将邮件发出。以下英文博客中有部分相关解释,您可以参考看看(博客是关于Exchange 2013的,但基本概念对Exchange 2016依然适用):
Exchange 2013 Mail Flow Demystified…Hopefully!
2. 为什么server01\Client Frontend server01 (587端口)MessageRateLimit 值为5 的限制失效,理论上第二种 情况也只能在1分钟内最多发送5封邮件,但实际上可以发送10封?
针对您的这个疑问,搜索下来没有能找到针对这个场景进行具体解释的官方说明文档。但根据我这边的本地测试,当我用Send-MailMessage指定通过587端口发送邮件后,邮件跟踪日志(Get-MessageTrackingLog)的查询结果显示,邮件流中只涉及到了Client Proxy(465)这个接收连接器:
我这里在单台服务器的环境中,对Client Frontend(587)和 Client Proxy(465) 的MessageRateLimit调整后,观察到的也是和您一样,实际发送邮件时是按Client Proxy(465) 的MessageRateLimit生效的。如,Client Frontend的MessageRateLimit保持默认值5,Client Proxy的MessageRateLimit改为8,发到第9封邮件时才会出现速率限制的报错。
根据以上线索,我的理解是只有 Client Proxy(465) 这个连接器实际参与到了邮件发送过程,所以在您提到的“现象2”中,也只用到了接收连接器server06\Client Proxy server06 (465端口)的值10。
此致,
Yuki Sun
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 Yuki SunMicrosoft contingent staff 2021年11月30日 5:48
- 已建议为答案 Yuki SunMicrosoft contingent staff 2021年12月2日 23:50
- 已标记为答案 Caesar_CL 2021年12月14日 15:20
-
您好,
关于这个问题,请问您那边的情况怎么样了呢?如果还有任何相关疑问,您可以再随时回帖讨论。
此致,
Yuki Sun
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.