Ubuntu 上的 SMTP 速度缓慢

Ubuntu 上的 SMTP 速度缓慢

我正在使用 Linux 客户端机器连接到第三方外部邮件服务器。

当我尝试发送邮件时,邮件服务器需要很长时间才能响应。为了调试这个问题,我安装了 mailx 基本客户端并跟踪了客户端和服务器之间的通信。进一步缩小范围后,发现即使我提供了服务器的 IP 地址(即不涉及 DNS 查找),telnet 到端口 25 也是比较慢的步骤。

因此,我可以通过在 Linux 命令行提示符下运行以下命令来重现这种缓慢的情况:

% telnet 192.186.222.162 25 
Trying 192.186.222.162...

等待几秒钟后再中止或继续。

奇怪的是 - 这种缓慢现象仅出现在一些客户端电脑上 - 使用 Xubuntu 14.04。

% uname -a 
Linux myPC 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

在 Fedora 系统上不会出现这种缓慢现象。当我通过不同的 ISP 连接到同一邮件服务器时,也不会在同一系统上看到这种现象。这可能是因为第一个 ISP 是一个办公网络,其中许多用户同时尝试将他们的邮件客户端连接到同一邮件服务器。

如有任何提示我将不胜感激。

答案1

您所描述的情况最有可能的原因是:

  1. 远程服务器对客户端 IP 地址进行反向 DNS 查找时出现问题
    IP_Address->[ PTRDNS 记录]->name->[ A/ AAAADNS 记录]->IP_Address

  2. Ident 查询超时 [从远程主机到 smtp 客户端主机的 TCP 连接]
    默认 Ident 超时为 30 秒,据我所知,现代 sendmail 使用 5 秒超时。

答案2

您将希望快速响应反向 DNS。

您可以使用本地 DNS 服务器执行以下一项操作(如果它正在运行绑定)

$ORIGIN 0.168.192.in-addr.arpa. 
$GENERATE 1-254 $ PTR 192-168-0-$.lan.example.com.

$ORIGIN lan.example.com. 
$GENERATE 1-254 192-168-0-$.lan.example.com. IN A 192.168.0.$

相关内容