We can’t send mail farther than 500 miles (2002)
统计系邮件系统距离限制事件总结 (Summary of the Statistics Department Email System Distance Restriction Incident)
本文讲述了作者Trey Harris在校园邮件系统中遇到的一个奇怪问题:统计系无法发送超过500英里(约520公里)的邮件。
事件经过:
- 问题报告: 统计系主任报告称,该系的邮件系统无法发送超过500英里的邮件。
- 初步调查: 作者起初难以置信,并询问为何未尽早报告。统计系主任表示,他们通过统计学家的地理分析确定了距离限制,并等待数据收集完成才报告。
- 实验验证: 作者登录统计系服务器进行测试,发现确实存在距离限制:距离近的城市(如Richmond、Atlanta、Princeton)可以发送邮件,但距离较远的城市(如Memphis、Boston、Detroit)则无法发送。
- 配置检查: 作者检查了
sendmail.cf文件,发现该文件实际上是他自己编写的,并且与他本地的配置相同。 - 问题根源: 作者通过Telnet连接 SMTP 端口,发现服务器使用的 Sendmail 版本是 SunOS 提供的 Sendmail 5,而不是作者标准化的 Sendmail 8。原来,顾问在“修复”服务器时,实际上将其升级到了旧版本的 SunOS,导致 Sendmail 版本被降级。
- 技术原理: Sendmail 5 虽然能读取 Sendmail 8 的
sendmail.cf文件,但无法正确处理 Sendmail 8 中引入的较长、自文档化的配置选项,导致这些选项被忽略,并被设定为零。其中一个被设为零的选项是连接远程 SMTP 服务器的超时时间,在特定的网络环境下,这个超时时间被设置为极短(约3毫秒),导致超过一定距离的邮件发送失败。 - 网络环境影响: 校园网络当时是完全交换式的,这意味着邮件包到达出口前不会经历路由器延迟,因此连接远程主机的速度很大程度上取决于光速距离。
总结:
统计系邮件系统出现距离限制的根本原因是服务器版本升级导致 Sendmail 版本降级,从而使得 Sendmail 无法正确解析作者编写的 sendmail.cf 文件中的配置选项,最终导致超时时间过短,限制了邮件的发送距离。事件揭示了系统版本升级可能带来的意外后果,以及网络环境对邮件传输速度的影响。
统计系邮件系统距离限制事件总结 (Chinese Translation)
本文讲述了作者Trey Harris在校园邮件系统中遇到的一个奇怪问题:统计系无法发送超过500英里(约520公里)的邮件。
事件经过:
- 问题报告: 统计系主任报告称,该系的邮件系统无法发送超过500英里的邮件。
- 初步调查: 作者起初难以置信,并询问为何未尽早报告。统计系主任表示,他们通过统计学家的地理分析确定了距离限制,并等待数据收集完成才报告。
- 实验验证: 作者登录统计系服务器进行测试,发现确实存在距离限制:距离近的城市(如Richmond、Atlanta、Princeton)可以发送邮件,但距离较远的城市(如Memphis、Boston、Detroit)则无法发送。
- 配置检查: 作者检查了
sendmail.cf文件,发现该文件实际上是他自己编写的,并且与他本地的配置相同。 - 问题根源: 作者通过Telnet连接 SMTP 端口,发现服务器使用的 Sendmail 版本是 SunOS 提供的 Sendmail 5,而不是作者标准化的 Sendmail 8。原来,顾问在“修复”服务器时,实际上将其升级到了旧版本的 SunOS,导致 Sendmail 版本被降级。
- 技术原理: Sendmail 5 虽然能读取 Sendmail 8 的
sendmail.cf文件,但无法正确处理 Sendmail 8 中引入的较长、自文档化的配置选项,导致这些选项被忽略,并被设定为零。其中一个被设为零的选项是连接远程 SMTP 服务器的超时时间,在特定的网络环境下,这个超时时间被设置为极短(约3毫秒),导致超过一定距离的邮件发送失败。 - 网络环境影响: 校园网络当时是完全交换式的,这意味着邮件包到达出口前不会经历路由器延迟,因此连接远程主机的速度很大程度上取决于光速距离。
总结:
统计系邮件系统出现距离限制的根本原因是服务器版本升级导致 Sendmail 版本降级,从而使得 Sendmail 无法正确解析作者编写的 `