在购买VPS后经常会遇到困惑,为啥Ping的延迟很低,但SSH登录上去后执行命令却非常卡顿。尤其是喜欢折腾国外VPS的MJJ们,大家都有一个公共的感觉,那就是白天登录欧美的服务器还算流畅,一到晚上就卡的要死,甚至执行一个命令就会掉线一次。遇到这种情况,就不要只参考Ping的延迟了,换MTR试试。
为什么Ping和Traceroute不准确?
- Ping: 只能体现出延迟,无法定位丢包
- Traceroute: 只显示路径,无法持续检查节点质量
MTR(Matt’s TraceRoute)可以将两者结合,持续发送数据包并试试显示路径上每个节点的丢包率、延迟和网络波动。
快速安装
- Windows : 下载WinMTR Redux(社区维护版)
- Linux:
- Ubuntu\Debian: sudo apt install mtr
- CentOS: sudo yum install mtr
- macOS: brew install mtr
看懂MTR报告的关键指标
运行mtr IP/域名 过一会儿就会看到响应信息,只需要着重看以下几个:
- Loss%: 丢包率 (应接近0%,如果超过5%需要谨慎)
- Snt:已发送包数 (建议大于100个包)
- Avg: 平均延迟 (长期稳定性的核心指标)
- Best/Wrst : 最佳/最差延迟 (Wrst过高说明又突发拥堵)
- StDev: 标准差(抖动) (<5ms 优秀, >20ms 体验差)
重点:StDev(标准差)比平均延迟更重要!延迟 100ms 但 StDev 为 2 的线路,体感远好于延迟 50ms 但 StDev 达 25 的线路。稳定胜过低延迟。
实战
本地网络问题
现象: 第一跳(192.168.x.x)就高丢包或高延迟
结论: 你的路由器、网线或 Wi-Fi 有问题
ICMP限速(虚假丢包)
现象: 某一跳丢包 30%,但后续所有跳的丢包率 ≤ 该跳或接近 0%
结论: 该节点对 ICMP 报文做了速率限制,属于正常策略,可以忽略
运营商骨干网拥堵
现象: 进入跨境骨干网(如电信 163 网的 202.97.x.x,联通 AS4837)后,该节点及后续节点丢包率和 StDev 持续升高
结论: 典型的晚高峰拥堵或 QoS 限速,除了换 CN2 GIA 线路基本无解
目标服务器问题
现象: 前面正常,只有最后一跳(目标 IP)严重丢包
结论: 可能是服务器防火墙、DDoS 攻击或负载过高
给玩VPS的进阶建议
1、晚高峰测试: 线路好坏要在 20:00-23:00 测,白天的数据参考价值有限
2、关注抖动而非延迟: 游戏和实时应用对 StDev 极其敏感,稳定的 100ms 远好于抖动的 50ms
3、双向测试: 本地到服务器是”去程”,服务器到本地是”回程”。可使用 Looking Glass 服务(搜索”looking glass 机房名”)或第三方 MTR 网站反向测试
4、识别真假丢包: 中间节点丢包但不影响后续节点 = 假丢包;连续多跳持续丢包 = 真问题
常见误区
误区 1: “丢包率 0% 就是好线路” → 测试时间太短(<1 分钟)可能看不出问题
误区 2: “中间某跳延迟突然增加 200ms” → 查看后续跳,如果恢复正常则是路由绕路,不一定影响实际体验
结语
MTR 是每个 VPS 玩家和运维人员的必备工具。下次服务器卡顿时,跑个 MTR 报告截图发给服务商,远比一句”你这服务器好慢”有力得多。记住:看延迟不如看抖动,看去程不如看回程。
提示: 将 MTR 报告保存为文本:mtr -r -c 100 目标服务器IP或域名 > mtr_report.txt
