我搬家后遇到了一个非常奇怪的问题。我使用 OpenVPN 连接从日本远程工作,并通过远程桌面连接到我的工作计算机。我最近搬了公寓。在旧公寓里,一切都运转良好。现在,当我使用移动数据时,一切正常。但是当我使用新的互联网时,我遇到了非常奇怪的问题:
VPN 连接已成功创建,我可以通过远程桌面进行连接。直到昨天,这部分工作没有任何问题。从今天开始,我将在大约 1 分钟后失去与远程桌面的连接。总是无一例外。这是使用 Parallels 远程桌面客户端时的情况。使用Windows远程桌面客户端时,我根本无法连接。
我无法从我的主机连接到我公司的任何内部网站。我可以 ping 和跟踪它们,看起来不错。
但是当我用手机创建热点并使用本地数据时,一切都工作得很好。
公寓配有入墙式锐捷AP180-AC路由器。我尝试在AP模式和路由器模式之间切换,但没有什么区别。
我真的很感激任何帮助,因为我根本不知道这里发生了什么。对我来说这似乎是一种非常奇怪的行为,而且我的网络知识也非常有限。
当您遇到神秘的网络问题(有些功能有效,其他功能无效,东西看似随机启动和停止,连接随机失败)时,问题通常是(严重)数据包丢失。IP 数据包碎片是导致数据包丢失的潜在因素。为了不产生数据包碎片,必须降低 MTU。
这也适用于某些 VPN 隧道,例如 OpenVPN。由于您的隧道是基于 UDP 的,因此隧道连接无法从丢失的数据包中恢复。数据包丢失也体现在隧道内部。有些软件对数据包丢失的反应很差。
对于 OpenVPN,有多种方法可以解决这个问题,所有这些都进入客户端配置文件:
link-mtu 1300
(tun-mtu 1300
但不能同时使用两者)显式降低 MTUmtu-disc yes
启用路径 MTU 发现,但这显然仅适用于 Linuxmtu-test
启用不同的 MTU 发现机制,该机制可能适用于所有操作系统,但需要很长时间fragment 1300
让 OpenVPN 在内部进行分段此外,
mssfix 1300
可用于使隧道 TCP 连接正常工作,但这只是性能优化。对于这些选项中的任何一个选择太低的限制都可能严重影响隧道内的吞吐量。OpenVPN 手册建议在遇到问题时以 1300 作为起点。
您可以在 Network Engineering 的 Q/A 中阅读有关 IP 分段的更多信息。
您仍然应该检查您的常规互联网连接是否有明显的数据包丢失。百分之几还可以接受,但是一旦达到10-20%甚至更高,就变得非常烦人了。如果您遇到过多的数据包丢失,则可能是某个地方的连接不良。对于 DSL,这可能是坏的/旧的内部电话线路。电缆对此也很敏感,此外还有阻抗不匹配、缺少端接或信号放大器不良等问题。