我有一台运行 Mailcow 的 Debian 11 服务器。它运行良好,但我的一个客户端时不时会报告连接错误。此连接错误仅在他们使用 wifi 连接时出现 - 使用移动数据可以暂时解决问题。
他们收到的连接错误的具体表述取决于浏览器,但它大致是这样的
“无法访问此站点 - xxxxxx.com 响应时间过长。请尝试检查连接、代理和防火墙。ERR_CONNECTION_TIMED_OUT”
或者
“无法访问此站点。xxxxx.com 拒绝连接。请尝试检查连接。ERR_CONNECTION_REFUSED”
Wi-Fi 网络已正常连接到互联网,客户端始终可以访问网络上的所有其他网站,但不能访问我的服务器。
似乎没有 ISP 模式,或者任何其他我能识别的常见因素。它只是有时会随机发生在客户身上。
我告诉他们重置他们的 wifi 路由器,有时这会暂时起作用,有时则根本不起作用。
Mailcow 使用 ipv6,但我最近禁用了它并恢复到 ipv4,认为这可能是问题所在。工作了一段时间,然后 BAM,今天我又有另一个客户抱怨同样的问题。
令人恼火的是,我自己无法重现这个问题 - 我的 wifi 以及我尝试连接的每个 wifi 网络都运行正常。
我已经联系了我的服务器托管提供商(二进制通道),但他们毫无帮助,什么也没给我。
有人知道是什么原因造成的吗?这非常令人沮丧,我在网上找不到任何关于如何调试或修复这个问题的方法。
答案1
需要明确的是,该错误是否出现在连接到您无法管理的远程 wifi 网络的客户端设备上?
此连接错误仅在使用 Wi-Fi 连接时出现 - 使用移动数据可暂时解决问题
因此,您拥有来自用户的大量数据样本,经常那些使用移动数据和有线连接的用户,这证明问题只出现在 Wifi 上?还是只是大多数用户大部分时间都在使用 Wifi?我怀疑是后者。在这种情况下,假设问题与 Wifi 有关是非常误导的。
路由器之外的 IP 数据包传输介质应该不会对网络内部的连接产生任何影响(除了固有的拥塞/带宽/数据包丢失)。如果用户无法通过 Wi-Fi 连接但可以使用移动数据连接,则说明他们的服务提供商、Wi-Fi 网络或设备存在问题。您在此处报告的错误表明不存在 DNS 问题。
事实上,这是一个观念问题。
我知道解决这种看法的最好方法是提供第三方监控服务(有很多)来检查您的服务。有很多可供选择,许多都提供免费套餐供您入门(我使用 uptimerobot)。但出于偏好,您需要一个可以发布可用性的服务。
从技术角度来看(同样基于此处提供的信息),客户端似乎在特定网络路径方面存在问题 - 您可以配置多个网络路径。最简单的方法是通过 CDN。同样,有很多选择。只需确保您使用的是一个可以在不同子网上发布端点并在 DNS 中配置这些端点的 CDN。
答案2
我想通了——智商低下的问题。
我的 mailcow 服务器正在使用 fail2ban 阻止客户端的 IP 地址。
客户的计算机正在运行 Outlook,并不断尝试使用错误的密码登录。
当他启用 VPN 或使用移动数据时,新的 IP 地址会连接一段时间,然后停止工作。