梯子实验室tizilab.net

梯子手机能用电脑不能用:同一个订阅的两种结果

简短回答

梯子手机能用电脑不能用,说明订阅和机场大概率正常,问题落在电脑这一侧。常见的原因有五类,电脑客户端的内核不认识节点协议、导入的订阅格式不对、电脑系统时间偏差过大、防火墙拦了内核进程、电脑所在网络限制了 UDP。一次只交换一个条件,比如让电脑连手机热点,就能把范围缩到一类。

背景:这个问题从哪来

常见的经过是这样的。机场给了一个订阅链接,手机上的 App 导入后节点有延迟、网页也打得开;同一个链接放进电脑客户端,要么导入就报错,要么节点列表齐全却全部超时,要么只有少数几个节点能连。

两台设备拿到的是同一份订阅,机场那一端基本可以排除。本文把电脑这一侧可能出错的地方分成五类,再给一套交换条件的方法,每次只动一个变量,看结果跟着哪一项变。

两端的内核是否认识同一种协议

订阅里每个节点都写着协议类型,客户端要靠内核去解析和连接。手机和电脑用的往往是两个不同的客户端,内核也就不同。

客户端 平台 内核(本站客户端页记录)
v2rayNG 安卓 Xray(仓库说明也支持 v2fly 内核)
v2rayN Windows、Linux、macOS Xray、sing-box、mihomo
Clash Verge Rev Windows、macOS、Linux mihomo
FlClash 安卓、电脑 mihomo
Clash for Windows Windows、macOS Clash Premium(闭源),已停更

mihomo 文档列出的出站类型里有 VLESS、Hysteria2、TUIC、AnyTLS 等较新的协议。按 Clash Verge Rev 文档的内核说明,Clash Premium 是闭源内核,mihomo 是开源内核。本站记录的 Clash for Windows 停在 2023 年 10 月的 0.20.39,我们的判断是它认不出之后才流行起来的协议,导入时会跳过或报错。

所以“手机能用电脑不行”里最常见的一种组合,是手机装着维护中的客户端,电脑还留着一个多年没更新的旧客户端。换到 电脑梯子软件页 里仍在维护的客户端,这一类问题通常就消失了。

订阅格式和客户端对不上

同一个机场往往给出几种订阅地址,分别对应 Clash 的 YAML、通用的 Base64 链接列表和 sing-box 的 JSON。手机上复制的那个地址,放进另一类客户端可能解析不出节点,或者只解析出一部分。

判断方法是看导入后的节点数量。电脑上节点数明显比手机少,或者提示格式错误,就去机场面板里换成和电脑客户端对应的那一种。三种格式的区别见 梯子订阅的三种格式。

电脑本机的三个可疑点

  • 系统时间。 VMess 握手要校验时间,V2Fly 文档给的容差是 UTC 上下 90 秒,和电脑设的哪个时区无关。手机一般自动对时,电脑如果关掉了自动设置时间,或者 BIOS 电池没电,VMess 节点会全部连不上。打开日期和时间设置,开启自动同步后再试。
  • 防火墙和杀毒软件。 Clash Verge Rev 的文档在 TUN 模式说明里提到,需要自己在系统防火墙里放行内核进程 verge-mihomo 和 verge-mihomo-alpha。微软的支持文档说明,防火墙拦住需要的程序时,可以在“允许应用通过防火墙”里为它添加例外。其他客户端的内核进程名不同,以各自的文档为准。
  • 系统代理和 TUN 的覆盖范围。 电脑上只开系统代理时,有些程序不读这项设置,看起来像“梯子不能用”。浏览器能打开而某个软件不行,属于这一类,见 梯子 TUN 模式是什么意思。

电脑所在的网络限制了 UDP

Hysteria2、TUIC 这类协议走 UDP。Hysteria 2 文档讲端口跳跃的部分记录了国内用户的情况,长时间保持的 UDP 连接可能被运营商封掉或降速,而且往往只针对当前那一个端口。

手机用移动数据,电脑接公司或学校的有线网络,两边出口不同,UDP 的待遇也可能不同。现象通常是电脑上走 TCP 的节点正常、走 UDP 的节点超时。客户端里和 UDP 有关的开关,另见 梯子 UDP 开关。

用交换条件定位

下面这张表每一行只改一个变量。结果跟着哪个变量变,问题就在哪一侧。

交换的条件 做法 结果变化说明什么
网络 电脑改连手机的移动数据热点 电脑恢复正常,问题在原来的网络
客户端 电脑换一个 mihomo 或 Xray 内核的维护中客户端 恢复正常,原客户端或内核不支持该协议
订阅格式 从机场面板复制与电脑客户端对应的订阅地址 节点数变多或恢复,原来的格式不对
节点协议 同时各挑一个 TCP 类和 UDP 类节点测试 只有 UDP 类失败,查网络的 UDP 限制
系统时间 开启自动对时后重连 恢复正常,原来时间偏差过大

自己怎么验证

  1. 看日志。 电脑客户端的日志页会记录每次连接失败的原因。出现不认识的协议类型或解析错误,对应第一、二类;连接超时或被拒绝,对应第三到第五类。报错里带 EOF 的,另见 梯子报 EOF 是什么意思。
  2. 核对时间。 手机和电脑并排放,比较两边显示的秒数,差距超过 1 分钟就先校时。
  3. 看是不是只有你。 如果手机后来也不行了,打开 机场跑路预警页 看这家的在线检测,检测间隔写在该页顶部。全部节点都超时的情况,按 全部节点超时的对照排查 从头查。

这篇没有覆盖的

本文的五类原因来自官方文档和客户端资料,本站没有做过同一份订阅在手机和电脑上的留档对照测试。iPhone 上的客户端、路由器透明代理、Linux 的防火墙配置都没有展开。内核支持的协议列表会随版本更新变化,以当前版本的文档为准。

本文引用的来源7 条 · 在新窗口打开

  1. mihomo 文档:代理(出站)类型wiki.metacubex.one
  2. Clash Verge Rev 文档:名词解释clashverge.dev
  3. v2rayN 官方仓库github.com
  4. v2rayNG 官方仓库github.com
  5. V2Fly 文档:VMessv2fly.org
  6. Hysteria 2 文档:端口跳跃v2.hysteria.network
  7. Microsoft 支持:Windows 安全中心的防火墙和网络保护support.microsoft.com

常见问题4 题

梯子电脑不能用但手机可以,要先联系机场吗

可以先不联系。两台设备用的是同一份订阅,手机能连上就说明节点在工作。先在电脑上换一个维护中的客户端、校准时间、连手机热点各试一次,三步都不行再把电脑端的日志截图发给客服,对方更容易判断。

电脑上一部分节点能用一部分不行,是同一个原因吗

多半和协议有关。把能用和不能用的节点各挑几个,在客户端里看它们的协议类型,如果不能用的全是同一种协议,就去查电脑客户端的内核是否支持它。节点分布没有规律的,更可能是线路本身的差别。

手机连电脑开的热点也不能用,说明什么

这时手机和电脑处在同一个出口网络,手机也失败的话,限制大概率来自这个网络,比如公司或学校的出口。反过来让电脑连手机的移动数据热点,电脑恢复正常,也能得出同样的结论。

Mac 和 Windows 的排查方法一样吗

交换条件的思路一样,具体入口不同。Mac 上要看的是客户端申请的网络扩展或权限有没有被允许,时间校准在系统设置的日期与时间里。本文的防火墙部分只按 Windows 的官方文档写。

本文最后一次核对来源是 。软件界面、服务政策和法规会变,发现和现在不一致的地方,请按更正与反馈里的方法告诉我们。

梯子UDP要开吗:游戏、语音通话和QUIC

梯子 UDP 要开吗,要看你用梯子做什么。本文按 QUIC、WebRTC 的 RFC 和 mihomo 文档,说明哪些应用走 UDP、客户端和节…

协议与内核更新约 4 分钟