跳到主要内容

在网络游戏里,很少有什么比丢包更让人觉得不公平。画面看起来正常,ping 数值也正常,可角色却被拉回原位,技能没有生效,语音聊天变成机器人似的杂音。原因在于:ping 衡量的是一个数据包到达花了多久,而丢包统计的是根本没有到达的数据包。一条连接可以 ping 很低,却每一百个包丢三个。

当 VPN 也是设置的一部分时,大家的第一反应是怪它,有时确实如此。但丢包可能从五个地方开始:你的 Wi-Fi、路由器、宽带运营商、VPN 服务器,或者通往游戏的线路。本文给出一套分步方法,用于诊断开着 VPN 玩游戏时的丢包,包含命令、要比较的数字,以及指向可疑环节的判断表。丢包的通用背景见VPN 丢包一文,这里则专注于游戏中的症状和测试顺序。

先认清症状再测试

不同问题的表现可能很相似,先把你实际看到的情况记下来。

  • 瞬移回拉。 你向前移动,随后被拉回。这通常意味着游戏服务器没有收到你的更新,于是纠正了你的位置。
  • 命中不算。 射击、点击或技能在你的屏幕上似乎命中,对方屏幕上却没有。
  • 画面卡住后突然补上。 短暂冻结然后一口气追上,通常意味着数据包晚到并且成堆到达(抖动),而不是丢失。
  • 语音断断续续。 语音使用小而快的数据包,等不起,所以比游戏本身更早暴露丢包。
  • 游戏内网络图表。 很多游戏提供显示 ping 和丢包的叠加层,在出问题时打开观察。
  • 周期性规律。 每隔十秒或三十秒出现一次卡顿,说明有某种规律性的事情在发生,比如后台任务或 Wi-Fi 扫描,而不是随机丢包。

还要把丢包与延迟、抖动区分开。ping 高但不丢包,感觉是迟钝;丢包的感觉是跳帧;抖动的感觉是延迟忽大忽小。三个概念的对照可以看VPN 延迟详解。

先在不开 VPN 时建立基线

如果不知道网络单独运行时的表现,就无法评价 VPN 的影响。从这里开始。

  1. 关闭其他流量。 暂停所有设备上的下载、云备份和视频。
  2. 尽量使用有线连接。 以太网消除了随机丢包的最大来源。如果只有 Wi-Fi,测基线时请靠近路由器。
  3. 关闭 VPN。
  4. 对路由器做长 ping。 Windows 上用 ping -n 100 192.168.1.1,macOS 或 Linux 上用 ping -c 100 192.168.1.1,把地址换成你路由器的地址,它通常印在路由器上,或可在网络设置里看到。100 个包是下限,十个包几乎说明不了问题。
  5. 对一个公共地址做长 ping,比如一个广为人知的公共 DNS 地址。
  6. 对游戏服务器做长 ping,前提是游戏或其支持页面给出了地址。有些服务器不响应 ping,这不是故障。

记下丢包百分比,以及平均和最大耗时。预期结果是路由器和公共地址都是 0% 丢包。100 个里丢几个是警告,而不是结论。

读基线:丢包从哪里开始

按数据包沿途的顺序比较三个结果。

路由器 公共地址 游戏服务器 可能的含义
丢包 丢包 丢包 问题在你的 Wi-Fi、路由器或网线,先解决这里
0% 丢包 丢包 问题在家与更广阔互联网之间,也就是运营商或它的线路
0% 0% 丢包 问题在通往游戏的路径上,或者服务器不响应 ping
0% 0% 0% 测试时没有出现,或者原因是突发性的,需要更长时间的测试

如果丢包从路由器就开始,原因就不是 VPN,改 VPN 设置也没用。靠近路由器,更换 Wi-Fi 信道或频段,更换损坏的网线,或者使用以太网。许多路由器在二十台设备挤在同一频段时表现更差,游戏设备在较空的 5 GHz 频段上可能更好。指南提高连接稳定性里还有更多习惯。

如果路由器响应干净而公共地址不干净,问题在家之外。查看运营商的状态页面,换一个时段测试,并带着数字联系客服。运营商对“连续三天晚上八点到这个地址丢包 3%”比对“我家网络很差”回应得好得多。

开启 VPN 后重复测试

现在连接 VPN,重复公共地址和游戏服务器的测试。这里对路由器的 ping 没有意义,因为发往路由器的流量只在你的本地网络内。

  1. 连接 VPN 并等待十秒,让隧道稳定下来。
  2. 对公共地址运行 ping -n 100 或 ping -c 100。 把丢包和平均耗时与基线比较。
  3. 对游戏服务器运行,如果你知道地址。
  4. 换一个连接点重复,先选近的,再选另一个,其余一概不改。
  5. 做一次路径测试。 Windows 上用 pathping 加地址,需要几分钟;macOS 或 Linux 上如果装了 mtr 就用它,否则用 traceroute。它们会显示沿途每一跳的丢包。

解读结果:

  • 只在开着 VPN 时丢包,且每个连接点都如此。 怀疑你设备上的隧道:冲突的应用、防火墙、被加密隧道放大的不稳定 Wi-Fi 链路,或下文所述的 MTU 问题。
  • 某个连接点开着 VPN 丢包,另一个不丢。 VPN 服务器或它到游戏的链路是薄弱点。用没问题的那个,问题在实际中就解决了。
  • 有无 VPN 丢包一样多。 VPN 不是原因,回头检查线路、运营商和 Wi-Fi。
  • 只在高峰时段开着 VPN 才丢包。 很可能是服务器负载。试试人少的连接点或换个时间。

在路径测试中,如果中间某一跳显示丢包但后面的跳没有延续,通常无害:许多路由器会降低对测试包的响应优先级,同时照常转发游戏流量。而从某一跳开始并延续到之后每一跳的丢包才是真的。

常见原因与对应的处理

大致知道丢包从哪里开始后,采用对应的办法,并且一次只改一项。

Wi-Fi 干扰或距离太远。 靠近路由器,切换频段,减少设备数量,或使用以太网。仅这一步就解决了大部分游戏丢包。

数据包过大(MTU)。 隧道会给每个数据包增加一个小的头部。如果尺寸限制对不上,大包会被拆分或丢弃,游戏就会一阵一阵地受影响。阅读 VPN 的 MTU 问题,以及 RFC 1191 对路径探测的描述。只有在你能测试结果并能撤销时才改动 MTU 设置。

繁忙或距离远的 VPN 服务器。 选择离你近的连接点。选择依据是稳定性和短距离,而不是为了显示在别处。

后台流量。 云备份、系统更新或流媒体盒子都可能占满上行线路。上行拥堵是家里忙碌时出现丢包的常见原因,看起来像是 VPN 的问题。

路由器过载。 很旧的路由器在会话很多时会丢包,尤其是同时有隧道和很多设备时。重启它,更新固件,看看丢包是否下降。

冲突的软件。 第二个 VPN 客户端、安全套件或网络监控工具可能与 VPN 应用打架。文章与 VPN 冲突的应用说明了如何排查。

VPN 协议或传输方式。 一些 VPN 应用允许选择连接类型。基于 UDP 的模式通常比跑在 TCP 上的模式更适合游戏,因为 TCP 的重传会让延迟叠加。如果你的应用提供协议设置,除非有理由,否则保持默认;如果丢包仍然存在,再试一种替代方案。许多现代游戏和语音系统使用基于 UDP 的传输,RFC 9000 描述了其中一个例子,即 QUIC。

一个完整的排查例子

小妮晚上在笔记本上通过 Wi-Fi 玩游戏,并开着 VPN。晚上九点她遇到了瞬移回拉。

她关闭 VPN,对路由器运行 ping -n 100:丢包 4%。对公共地址:4%。对游戏:4%。丢包从路由器就开始了,与 VPN 无关。她把笔记本从卧室搬到放路由器的房间,对路由器的丢包降到 0。随后她连接 VPN 重复测试:公共地址 0%,游戏服务器 0%,ping 高出 12 毫秒。问题出在 Wi-Fi,而不是 VPN。

她的朋友阿泰情况不同。他对路由器的测试干净,为 0%,公共地址的测试也干净,但开着 VPN、使用默认连接点时,对公共地址丢包 3%。换到附近的另一个连接点后丢包为 0。他就用第二个。第一个位置的 VPN 服务器在他玩的时段负载过高。

当问题其实不是丢包

有几种问题感觉像丢包,其实不是。

  • 高抖动。 ping 在 20 到 200 毫秒之间波动,即使丢包为 0% 也像是跳帧。做更长时间的测试,观察数值的分布范围。
  • 服务器 tick 问题。 过载的游戏服务器会让所有人卡顿,改动网络无济于事。
  • 帧率低。 显卡瓶颈可能看起来像网络问题。检查帧率和温度。
  • 缓冲膨胀(bufferbloat)。 线路满载时,延迟暴涨,但并没有丢包。暂停大的上传任务,再观察。
  • 服务器太远。 在离你很远的服务器上玩会增加延迟。正确的做法是让游戏在你自己所在地区选择近的服务器。

关于最后一点:不要用 VPN 进入其他地区的服务器,或改变匹配系统看待你的方式。这通常违反游戏条款,并可能危及账号。我们的目标是在你自己所在地区获得稳定的连接。

求助前的清单

如果问题依旧,把下面这些整理好发给 VPN 客服或你的运营商。

  1. 问题出现的日期和时间。
  2. 设备、连接类型(Wi-Fi 或以太网)以及 VPN 应用版本。
  3. 开启和关闭 VPN 时,对路由器、公共地址和游戏的丢包与平均 ping。
  4. 使用的连接点,以及换一个连接点是否改变了结果。
  5. 路径测试的输出(如果你能运行)。
  6. 你已经按顺序尝试过的方法。

这样能把含糊的抱怨变成客服可以处理的信息。

总结

丢包指的是根本没有到达的数据包,与 ping 高是两回事。要找出开着 VPN 玩游戏时丢包从哪里开始,请分段测试:先在不开 VPN 时对路由器、公共地址和游戏建立基线,再在开启 VPN 时做同样的测试,然后更换连接点。如果丢包从路由器开始,修复 Wi-Fi 或线缆;如果从家外开始,联系运营商;如果只出现在某一个 VPN 连接点,换另一个。每次只改变一个变量,在问题出现的时段测试,并在自己所在地区玩游戏,而不是用 VPN 进入其他地区的服务器。

如果你想在自己的网络上试用按天计的预付 VPN,可以查看价格页面,选择合适的套餐。

常见问题

游戏中丢包多少算太多?

持续丢包在快节奏游戏里都会被感觉到。大致上,目标是 0%,约 1% 就可能让射击类游戏明显卡顿,达到几个百分点则多数网游几乎无法正常玩。偶尔一两次的丢包不如每隔几秒重复出现的丢包要紧。

VPN 会导致丢包吗?

正常情况下它本身不会,但它多了一个可能丢包的环节:隧道、VPN 服务器以及服务器到游戏的链路。如果只有开着 VPN 才丢包,先换一个连接点或改用有线,再下结论。

怎样用 ping 测试丢包?

先对路由器、再对公共地址、最后对游戏服务器(如果知道地址)各发一次较长的 ping,例如 100 个包,比较每一段的丢包百分比,先关闭 VPN 测一轮,再开启 VPN 测一轮。

为什么只在某些时段丢包?

常见原因是晚间运营商网络拥堵、VPN 服务器繁忙,或者别人在占用你的 Wi-Fi。要在出问题的时段测试,因为中午测可能一切正常。

应该换地区去找丢包更少的游戏服务器吗?

不应该。用 VPN 进入其他地区的服务器或改变匹配,通常违反游戏条款。请选择较近的连接点以获得稳定性并测试,让游戏在你自己所在地区选择服务器。

关于作者

Bob Kanokphon Thongdee,XPASS VPN 创始人

Bob Kanokphon Thongdee

  • XPASS VPN 创始人
  • eSIMonline.asia 联合创始人
  • 7 年以上网络营销经验
  • Cojourney Visa 与 Cojourney Travel 创始人

短途出行或忙碌的一个月,需要 VPN?

XPASS 提供按天数计算的预付通行证。一次付款,不会自动续费。

查看通行证

继续阅读

故障排除

VPN 丢包的原因与排查方法

数据包发出后没有到达,会造成通话断续、画面卡住和网页加载停顿。本文说明 VPN 丢包的常见原因,以及一套能找出丢包位置的简单测试流程。

阅读约 10 分钟

VPN 基础

VPN 能降低延迟(Ping)吗?延迟、抖动与丢包详解

VPN 会在路径上多加一站,所以 Ping 通常会略微升高。本文说明原因、何时可能改善,以及如何在自己的网络上测量。

阅读约 9 分钟

故障排除

VPN 延迟详解:为什么 ping 会变高

延迟是数据开始到达之前的等待时间。本文讲解每一毫秒的来源、VPN 为什么会改变它、抖动的含义,以及不同活动需要多低的 ping。

阅读约 9 分钟

故障排除

如何提升 VPN 连接稳定性

经常掉线或卡住的 VPN,通常是在对周围的网络或设备作出反应。这些步骤帮你找到并修复薄弱环节。

阅读约 5 分钟

故障排除

VPN 的 MTU 问题:症状与解决办法

VPN 会给每个数据包再包一层,路径承载不了更大的包时,有的页面正常,有的就卡住。本文教你辨认并测试这个问题。

阅读约 9 分钟