当我们的服务器或互联网连接中断时,我们会使用 pop 帐户作为备份。我们最近升级到了 sbs 2008。
我已经通过 SBS 控制台 pop 连接器添加了我们的备份 pop 帐户。现在当我点击检索时,它给出了一个错误。
在事件日志中,错误描述如下:
The TCP/IP connection with the '[pop sever]' server was terminated while
trying to access the '[[email protected]]' mailbox. The cause may be
server problems, network problems, a long period of inactivity, a
connection time limit, or incorrect connection settings.
仅当帐户中有消息时才会发生这种情况。如果帐户为空,则不会出现任何错误并显示已成功完成。消息可以是任意大小,但仍然会抛出此错误。它会在一分钟内超时。
查看弹出的详细日志,它在超时之前到达下载消息阶段。即,它进行身份验证,检查有多少条消息并开始下载。
我知道这不是防火墙问题,因为硬件文件墙和服务器上的相关端口都是打开的。
当我直接在 Outlook 中设置一个 Pop 帐户时,我可以从这些 Pop 帐户下载邮件。
我也不认为这是一个病毒扫描问题,因为即使我禁用服务器上的 Symantec Endpoint Protection 11(这就是我们使用的),我仍然会遇到这个问题。
有人有什么想法吗?
答案1
从以下位置下载网络监视器http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=983b941d-06cb-4658-b7f6-3088333d062f并使用它来监视与 POP3 服务器的连接。
POP3 是一种简单的协议,POP3 命令是纯文本。在网络监视器的输出中,您将能够看到服务器发送的命令和 POP3 服务器的响应。应该很容易就能准确地看到问题所在。
最新版本的网络监视器使用起来很麻烦,但是帮助相当不错,并且有示例。
JR
----8<---- 回复 Charlie 的评论:
我怀疑丢失的数据包并不重要。TCP 是一种容错协议,即使数据包丢失,TCP 也会纠正丢失。
如果跟踪确实显示了邮件,则 POP3 连接器正在下载邮件。邮件之前的数据包应该是从您的服务器发送到 POP3 服务器的数据包,其中包含 RETR 命令。POP3 服务器通过发送邮件来响应 RETR。在包含邮件的数据包之后,您的服务器应该发送 DELE 命令,最后发送 QUIT 命令。
如果邮件发送到您的服务器后没有数据包,则表明您的服务器无法识别邮件的结尾,因此挂起等待。这听起来有点熟悉,就像 SBS 2003 一样。我对此只有模糊的记忆,但我相当确定我在 2003 年见过类似的事情,那是由于防病毒软件造成的。有人安装了处理邮件下载的 AV,这会干扰连接器。
您是否考虑过从服务器上卸载 AV 以查看是否有帮助?我们只安装了几个 SBS 2008,其中只有一个使用 POP3 连接器,但它确实有效。作为最后的手段,我实际上编写了一个 POP3 下载程序,我很乐意将其发布到 Sourceforge 上。
答案2
您需要在交换控制台中执行以下操作:
设置连接器“pop3 连接器名称”-ConnectionTimeout 小时:分钟:秒 设置连接器“pop3 连接器名称”-ConnectionIdleTimeout 小时:分钟:秒
这将增加 Exchange 认为连接器已空闲所需的时间 - 即使连接器仍在忙于下载邮件。如果服务器的互联网连接速度较慢和/或他们经常收到可能导致连接器超时的大型邮件,则这一点尤其必要。
这解决了我的问题。希望它也能解决你的问题!
问候,
安德鲁
答案3
我建议(如果您还没有这样做的话)尽可能在单独的主机上尝试不同的 pop3 帐户,以排除主机的任何问题或两者之间的某种不兼容性。