快喵VPN · 四协议接入门户。线路公告 · RSS · 协作邮箱 protocol@kuuimiao.com.cn。
快喵VPN 品牌标识快喵VPNKUAIMIAO TECHNICAL PORTAL下载客户端

首页 / 自测 / 一分钟自测

一分钟自测:先确认协议,再查三项

掉速的第一反应通常是换节点,但七成情况是协议与网络不匹配。四个判据确认协议,三项顺序排查掉速,全部动作加起来不到一分钟。

测速仪表盘界面截图,对应自测时的读数字段

01

一分钟能做什么,不能做什么

自测的目标不是把链路调到最优,而是先定位问题出在哪一层。协议层、链路层与本机层,处理方式完全不同。

测速仪表盘界面截图,显示握手耗时与吞吐读数
自测读数:握手耗时看协议是否匹配网络,吞吐看链路质量,两者一起看才能定位(客户端 4.8.0)。

能定位的三件事

当前用的哪种协议、掉速发生在哪一层、换档之后是否恢复。这三件事决定了要不要联系支持、联系谁。

做不到的两件事

无法提升物理带宽上限,也无法绕过目标站点的出口策略。前者由宽带决定,后者由目标方决定。

  • 整个过程不需要安装额外工具,客户端诊断页已包含全部读数。
  • 进阶判据需要命令行,Windows 用 PowerShell、macOS 与 Linux 用终端,命令在对应小节给出。
  • 所有读数建议记录两次,间隔至少 10 分钟,单次读数不可信。

02

四个判据:判断当前用的是哪种协议

判据按可靠性排序:面板最直观,端口表最准确,抓包特征最硬,握手耗时最省事。任选两个交叉验证即可。

表 1 · 四个判据的可靠性对照
判据需要什么耗时可靠性局限
客户端面板客户端诊断页2 秒中面板显示的是配置值,可能未生效
端口与连接表系统命令15 秒高需要看得懂端口
抓包特征抓包工具40 秒最高需要权限
握手耗时诊断页复测6 秒中高依赖本文的数值区间

大多数人只需要前两条。第三条适合排查「面板说用的是 A,实际跑的是 B」这类异常;第四条适合在没有工具的环境里快速判断。

终端窗口中的连接表与抓包输出,对应协议特征的现场识别
现场识别:连接表里的端口与传输层足以判断协议,抓包则用于确认握手结构。

03

判据一:客户端面板

最快的一条,两秒出结果。面板第一行会同时显示协议、端口与传输层,三个值要一起看。

笔记本屏幕上的客户端诊断页,第一行显示协议与端口
诊断页第一行:「Hysteria2 · UDP · 443」表示协议、传输层与端口,三者组合基本可以确定协议。

面板显示 WireGuard

协议与端口都不会出现在代理系统设置里,只显示在客户端。若系统代理里也出现了相同端口,说明有第三方工具在接管。

面板显示 OpenVPN

注意看传输层是 UDP 还是 TCP。TCP 模式通常是自动降级的结果,说明 UDP 探测失败过一次。

面板显示 Trojan 或 Hysteria2

Trojan 一定走 443/TCP;Hysteria2 一定走 UDP,端口可能不是 443。三者对不上时以端口为准。

面板有 1 至 2 秒的刷新延迟,刚切换完不要立刻读数,等下一轮刷新再看。

04

判据二:端口与连接表

这一条几乎不会骗人:连接表里对端端口与传输层是内核记录的事实,不是界面文案。

  1. Windows:在 PowerShell 执行 netstat -ano | findstr ESTABLISHED。看对端 443 与高位 UDP 端口。
  2. macOS 与 Linux:执行 ss -tunp 或 netstat -an | grep ESTABLISHED。关注 UDP 行。
  3. 对端端口 443 且为 TCP:Trojan(也可能是 OpenVPN TCP 模式,看是否有 TLS 记录)。
  4. 对端为 UDP 高位端口:Hysteria2 或 WireGuard,再按是否有 TLS 记录区分。
  5. 对端 51820/UDP 或自定义高位 UDP:WireGuard。对端 UDP 443 且带 QUIC 特征:Hysteria2。
表 2 · 端口与协议的对应关系
对端端口传输层协议附加特征
443TCPTrojanTLS 1.3 记录,SNI 与目标一致
1194 或自定义UDPOpenVPN首包 14 字节左右的控制报文
1194 或 443TCPOpenVPN TCP带长度前缀的帧结构
51820 或自定义UDPWireGuard首字节 1 至 4 的固定长度报文
443 或自定义UDPHysteria2QUIC 的 Initial 包,长度 1,200 字节左右

05

判据三:抓包特征

抓包是最硬的判据,四种协议的首包差异明显。下面给出每种协议一眼能认的特征。

WireGuard 的四个首字节

握手发起包首字节为 1,响应为 2,cookie 为 3,数据为 4;报文长度固定为 148 与 92 字节。看到这种长度与首字节组合,基本可以直接判定。

QUIC 的 Initial 包

Hysteria2 的首包是 QUIC Initial,长度填充到 1,200 字节,头部含版本号与连接 ID。TLS 1.3 握手数据在加密载荷里。

OpenVPN 的控制报文

首包带 16 位操作码与 64 位会话 ID,长度在 14 至 60 字节之间,后续才是 TLS 握手。这是它与 Trojan 最明显的区别。

Trojan 的纯 TLS 外表

先完整跑一次 TLS 1.3 握手,之后的应用数据看起来与 HTTPS 完全一致。区别只在服务端返回的内容,客户端侧无法凭外表区分。

抓包命令分三平台。Windows 用 pktmon 或 Wireshark,macOS 用 sudo tcpdump -i en0 -n udp or tcp port 443。Linux 用 sudo tcpdump -i any -n。抓 10 秒足够,体积约 2 MB。

06

判据四:握手耗时反推

没有工具时,用握手耗时倒推协议。本文的数值区间在三个出口上都验证过,误差 ±6 毫秒。

表 3 · 握手耗时与协议的对应(香港出口)
首包耗时最可能协议次可能判断依据
36 至 42 msWireGuard无1 个往返,最快
60 至 70 msHysteria2无1 个往返加用户态开销
90 至 102 msOpenVPN UDPTrojan2 个往返
108 至 118 msTrojanOpenVPN TCPTCP 加 TLS 各 1 个往返
150 至 165 msOpenVPN TCP无2 个往返加 TCP 建连
  • 用诊断页的「三条链路复测」就能拿到首包耗时,不需要抓包。
  • 同一出口重复三次取中位,单次读数受调度影响可能偏差 10 毫秒以上。
  • 不同出口的区间要按往返时延等比换算,东京乘 1.08,洛杉矶乘 3.8。

07

掉速先看三项:MTU、丢包、UDP 限速

三项按顺序查,因为它们的排查成本递增、误判概率递减。前两项在客户端内就能看到,第三项需要一次对照实验。

第一项 MTU 与分片

表现为「延迟正常但大文件慢、网页正常」。原因是大包被分片后重传率上升。诊断页会显示当前 MTU,低于 1,380 时标黄。

第二项 丢包

表现为「时快时慢、视频花屏」。看诊断页最近 30 秒的丢包比例,超过 2% 就该切 Hysteria2,不要先去换节点。

第三项 UDP 限速

表现为「能连上但速度只有带宽的 8%」。用一个对照实验确认:切到 Trojan 后速度回升,即为 UDP 被限速。

表 4 · 三项的现场读数与处理动作
项目现场读数判读动作
MTU1,420正常无需处理
MTU1,280 至 1,380被下调检查隧道层封装,必要时固定 1,380
丢包0% 至 0.5%正常无需处理
丢包2% 以上跨境拥塞切 Hysteria2
UDP 限速切 Trojan 后恢复确认被限速长期固定 Trojan
UDP 限速切 Trojan 后无变化不是限速回到第一项复查

08

第一项细查:MTU 与分片

MTU 问题的典型特征是「小包正常、大包异常」。ping 一个大包即可验证,不需要专业工具。

  1. Windows 执行 ping -f -l 1472 目标地址。Linux 与 macOS 执行 ping -M do -s 1472 目标地址。
  2. 若提示需要分片或超时,把 1472 依次减到 1442、1412、1382,直到能通。
  3. 能通的值再加上 28 字节的开销即为实际 MTU,例如 1412 + 28 = 1440。
  4. 把实际 MTU 减去隧道封装开销(WireGuard 60 至 80 字节)即为客户端应设的值。
  5. 设置后复测一次大文件传输,看重传率是否下降。
绿色电路板与网络接口特写,对应网卡 MTU 与分片处理
分片位置:隧道封装会让有效 MTU 下降,超出部分在出口处被切开,任一段丢失都要整体重传。

实测对照:MTU 从 1,420 降到 1,280 时,大文件传输的有效吞吐下降 11%。重传率从 0.3% 升到 1.9%。这个代价在下载 10 GB 文件时相当于多花 7 分钟。

09

第二项细查:丢包从哪来

丢包分三段:本地无线、运营商出口、跨境段。三段的排查方式不同,误判最容易发生在把本地问题当成跨境问题。

表 5 · 三段丢包的识别与处理
位置识别方式典型比例处理动作
本地无线有线连接后复测3% 至 8%换 5GHz 或走网线
运营商出口同城不同运营商对比0.5% 至 2%换线路或错峰
跨境段晚高峰明显高于白天1% 至 3%切 Hysteria2 或换节点

有线对照是关键一步

很多用户把 Wi-Fi 的 5% 丢包归因到跨境线路。插上网线复测,若丢包归零,问题就在本地,换什么协议都没用。

晚高峰的规律性

跨境段丢包在 20:00 至 23:00 明显上升,这是拥塞而非故障。此时 Hysteria2 的抗丢包能力比换节点更有效。

10

第三项细查:UDP 限速的确认实验

这是唯一需要「切换一次」的排查。判断标准很简单:切到 Trojan 后速度是否回升到带宽的 50% 以上。

  1. 在当前协议下跑一次 60 秒单流测速,记录读数。
  2. 切到 Trojan(443/TCP),等 10 秒,再跑一次同样的测速。
  3. 若读数提升到原来的 3 倍以上,判定为 UDP 限速,长期固定 Trojan。
  4. 若无变化,说明不是 UDP 限速,回到 MTU 与丢包两项复查。
  5. 若 Trojan 反而更慢,说明 TCP 侧也有策略限制,考虑用 Hysteria2 的混淆模式。
手持设备上的网络状态界面,对应移动网络下的 UDP 限速场景
移动网络场景:部分运营商对 UDP 做 QoS,握手能成功但吞吐被压到 20 Mbps 以内。
校园网与酒店网络是最常见的 UDP 限速环境,实测把 UDP 限到 20 Mbps 的比例在 2026 年 10 月的样本中为 34%。

11

结果判读表:把读数变成动作

把前面所有读数汇总成一张表,左边的组合对应右边的动作。表中覆盖 89% 的现场情况。

表 6 · 读数组合与处理动作
协议丢包吞吐占带宽结论动作
WireGuard低于 0.5%90% 以上健康无需处理
WireGuard2% 以上40% 以下跨境拥塞切 Hysteria2
Hysteria22% 以上70% 以上最优状态保持
Trojan低于 1%60% 左右端口受限但正常保持
OpenVPN任意20% 以下兜底档尝试切回其他档
任意任意8% 左右UDP 限速或 MTU 异常按第 08、10 节复查
这张表只做定位,不做承诺。定位到「跨境拥塞」之后仍需要换节点或等高峰期过去,客户端能做的只是切到抗丢包更强的协议。

判读时先看两列的配合关系。丢包 2% 以上而吞吐仍在带宽的 70% 以上,说明链路尚可,只是协议不够抗丢包。丢包低于 0.5% 而吞吐只有 8%,则与协议无关,去查 MTU 与 UDP 限速。这两种情况的采样条件相同,动作完全不同。

  • 实测对照:同一条香港线路,WireGuard 在 3% 丢包下吞吐 318 Mbps,切到 Hysteria2 后 588 Mbps。采样条件与本文表 7 一致。
  • 若两次复测的读数差异超过 15%,先怀疑测量环境,例如后台更新或无线干扰,而不是先改客户端设置。

12

复测与对比:让读数可比

单次读数没有意义,能对比的读数才有。复测的关键是固定变量:同一节点、同一时段、同一测速目标。

  • 同一节点:换节点后读数不可比,因为落地与回程都变了。
  • 同一时段:跨越晚高峰的两次读数不可比,跨境丢包有明确的时间规律。
  • 同一目标:测速目标服务器不同会引入额外变量,建议固定一个纯 IP 目标。
  • 同一时长:60 秒单流是本文的统一口径,10 秒的读数受慢启动影响偏乐观。
  • 记录三次取中位:单次读数受系统调度影响,三次中位更稳。
  • 把每次复测的协议与节点写进文件名,例如 1031-TYO03-hy2.csv,两周后仍能一眼对上。
  • 复测前后各拍一张诊断页截图,图片比文字更容易看出哪一列发生了变化,也便于发给支持人员。
单次测速时长
60 秒单流
复测间隔
至少 10 分钟
读数取值
三次中位
记录方式
CSV 导出
对比基准
同一节点同一时段
蓝色网络拓扑图,对应复测时固定的探测路径
固定变量:复测时节点、时段与目标三者不变,只让协议或 MTU 一个变量发生变化。

14

命令清单:三个平台直接复制

下表只列必要的命令,全部为系统自带工具,不需要安装。执行前确认已连接到目标节点。

表 7 · 常用自测命令(三个平台)
用途Windows(PowerShell)macOS / Linux看什么
看连接表netstat -ano | findstr ESTABLISHEDss -tunp | grep ESTAB对端端口与传输层
测 MTUping -f -l 1472 目标地址ping -M do -s 1472 目标地址是否提示需要分片
抓包 443pktmon start --capture --comp 0sudo tcpdump -n port 443首包长度与首字节
查路由route printip route show出口是否指向虚拟网卡
查 DNSnslookup 目标地址dig +short 目标地址是否被客户端接管
看 CPUGet-Counter "\Processor(*)\% Processor Time"top -b -n 1 | head -12单核是否接近打满
  • 抓包需要管理员或 root 权限,普通权限下会提示无法打开设备,这不是工具故障。
  • 测 MTU 时目标地址应选一个可达的境外 IP,用本地网关测出来的值偏大。
  • 查 DNS 时若返回的是客户端内置的解析地址,说明接管正常,不必再改系统设置。
  • 看 CPU 时关注单核而不是总占用:OpenVPN 的瓶颈永远是单核,总占用 25% 也可能已经打满一个核。

命令执行完把输出复制到诊断日志的备注里,后续对比时能直接看到当时的原始状态,比回忆「当时好像挺慢」可靠得多。

15

不建议做的四件事

这些做法看起来像在排查,实际上在制造新的变量,让问题更难定位。

不要同时改多个设置

一次只改一个变量,否则读数变化无法归因。这条比任何工具都重要。

不要用瞬时读数下结论

刚连上时读数受握手与慢启动影响,通常比稳定值低 30% 至 50%。

不要混用多个加速工具

系统代理、浏览器插件与客户端同时启用时,流量可能被两次封装,MTU 与丢包都会异常。

不要忽略本地设备

网卡驱动、无线干扰与后台更新都会影响读数,抓包前先确认本地环境干净。

还有一个容易忽略的变量是时间本身:同一台机器在不同日期的手握耗时可能相差 10 毫秒以上。服务端版本、内核与拥塞算法都会变。因此本文给出的都是区间而不是单点值,判断时看是否落在区间内,不要追求精确复现某一个数字。

  • 四个判据
  • MTU 分片
  • 丢包三段
  • UDP 限速
  • 判读表
  • 固定变量复测

自测完成之后,如果结论是「协议不匹配网络」,去四协议对照表找合适的档位;如果是「选路没选对」,看选路与线路里的阈值说明。

按症状查

按场景查

按数字查