我有一个 OpenVPN 连接,最初是通过 UDP 连接的。一段时间后,我在隧道内运行 ssh 时开始出现严重问题。
从隧道内部可以看到,ssh 数据包丢失了,出现了主机不可达 ICMP 消息 - 所有这些都导致连接一直挂起(然后恢复正常,一段时间后再次挂起)。
从运营商界面来看,我看到加密数据包不断流出(DATA_V1
和DATA_V2
)。OpenVPN 服务器很稳定(客户端没有断开/重新连接)。
我切换到 TCP 并且所有问题都消失了。
我现在想了解连接的哪个部分有故障。
从拓扑上讲,客户端和服务器相距约 10 跳,RTT 为 12 毫秒。网络大概是稳定的(客户端离开稳定的公司网络后,进入 Level3,与 Orange 对等,后者本身提供 FTTH)。
是否有合理的方法来检查 UDP 问题是否接近任一端(公司或家庭)?
注意:我理解 UDP 本质上是一种预期丢失的协议。但由于网络的“稳定性”,丢失似乎太重要了。