您现在的位置是:首页 > 文章详情

调整SMTP会话连接时间解决邮件无法接收问题

日期:2017-02-25点击:582

最近一个朋友反映,他们公司在和欧洲某公司的邮件通讯过程,收到用户的投诉说:对方发过来的邮件,有时会有一两封收不到,但发送测试邮件,回复都没有问题!经过进一步了解,发过去的邮件,没有反映收不到,只是对方发过来的邮件,有时会收不到,但不是经常,只是偶尔发生!好吧,作为IT人员,最怕的就是偶发问题,无法重现故障,无法找到有价值的证据去排错!还好,在双方的共同努力下,最后也找到原因,调整相关参数,问题解决,下面将排错方法和过程分享给大家!

针对这个问题,首先让对方提供更有价值的信息,比如说:最近一次没收到的邮件,是谁、什么时候,发给谁的!还好,对方提供了欧洲某公司发过来的截图,有具体的发件人、收件人、发送时间,这下就好办了,马上查看SMTP LOG!当然,前提是你有开启详细的SMTP LOG记录(默认是没有开启的,条件允可的情况下,建议开启详细的SMTP LOG ,方便排错),如下:

clip_p_w_picpath002

首先通过对方提供的邮件地址,查询到对方的SMTP 会话IP为:213.150.22X.XXX,经过IP地位,此IP确实来自欧洲的奥地利:

clip_p_w_picpath004

在SMTP LOG中在查找此IP,发现确实有很多这个IP发过来的邮件,而且大多都是成功的!在反复过滤、查询后,终于LOG中发现了”Timed out“,这正是用户反应的问题,如下图:

clip_p_w_picpath006

从时间上分析,timed out为16:02:05,而SMTP会话开始时间为:15:52:01,即:大约10分钟后,出现Timed out!查看Exchange对应的SMTP参数:

Get-ReceiveConnector -Identity "Mail\Default SMTP" |FL

clip_p_w_picpath008

发现ConnectionTimeout 限制确实为10分钟!所以,问题找到,即:双方服务器在通过SMTP传送邮件的过程中,由于网络问题,或是邮件大小问题,超过SMTP连接限制的时间,导致邮件接受失败!

既然找到问题,就尝试修改限制时间来解决!参考下面的PowerShell:

https://technet.microsoft.com/en-us/library/bb125140.aspx?f=255&MSPPError=-2147217396

考虑到中国大陆到欧洲的网络问题,先将此参数调整为30分钟:

Set-ReceiveConnector -Identity "Mail\Default SMTP" -connectionTimeout 00:30:00

重启Microsoft Exchange Transport服务。

经过调整后,再观察几天,对方没有再反映此问题了!为了验证调整是否有效,分析调整后第二天的SMTP LOG,发现如下信息:

clip_p_w_picpath010

同样是上一次邮件地址和邮件服务器IP过来的SMTP会话,从8:34:57开始,到8:50:45结束,此SMTP Connection 会话持续了15分钟!证明上面的调整是正确、有效!

至于SMTP的ConnectionTimeout时间限制为多少合适呢?这个官方既然默认是10分钟,所以我们尽量还是以官方的为准,如果碰到这样的问题,建议一次不要调太高,要依你的网络质量、限制的邮件大小来调整,如此案例:邮件,大约5M,用时15分钟左右才完成,而邮件大小限制为10M,所以,相应的调整为30-40分钟,是合理的范围。

原文链接:https://blog.51cto.com/hubuxcg/1901249
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章