Shadowrocket(小火箭)的连接开关打开,只能说明客户端已启动连接流程,不能单凭开关判断服务器、DNS 和网站均可用。本文适用于已经有自己的服务商与订阅、能够打开客户端但无法正常访问网页的用户。按“基础网络 → 服务器 → Global Routing → DNS → Rule”的顺序,每次只改一个变量,用同一个网址复测,最后保留能解释故障的记录。
先建立可复测的基线
排查前记录当前网络、Home 中选中的服务器、Global Routing 的取值,以及 Config 中正在使用的配置文件。先备份配置,再开始修改。不要一上来同时更新订阅、更换服务器和替换 DNS,否则即使恢复,也无法判断是哪一步起作用。
以下路径以 iPhone / iPad 界面的 Home、Config、Settings 为操作参照。其他平台应核对对应设置项,不把移动端的系统 VPN 提示当作所有设备的共同界面。测试网址使用你平时能访问、当前确实遇到问题的网站,不用陌生链接作为判断依据。
-
暂停按需连接
先记下 Settings → On Demand 的原有状态,排查期间暂停自动触发,避免手动关闭连接后又被重新开启。测试结束后恢复原设置。
-
检查基础网络
关闭 Home 的连接开关,打开一个平时可直接访问的网页。若仍失败,先处理 Wi-Fi 登录认证、路由器断网或蜂窝数据权限,不继续修改规则。
-
固定测试目标
选一个可直接访问的网址和一个出现故障的网址,分别记录结果。每轮测试都重新加载同一完整地址,避免把不同网站的状态混在一起。
-
重新建立连接
确认其他 VPN 连接未同时运行,再打开 Shadowrocket 连接开关。切换设置后重新发起请求,不以浏览器已经缓存的页面作为恢复依据。
确认服务器实际可用
Home 中存在服务器条目,不等于该服务器仍然有效。先确认选中的是自己准备使用的条目,再做 Connectivity Test。测试结果取决于测试方法和目标:出现延迟只代表这次测试通过,不能证明所有域名、协议和网站都能访问;一次超时也不能直接证明整个订阅失效。
打开条目的编辑信息,与自己的服务商提供的参数逐项核对。地址、端口、认证信息、加密方式以及 TLS 相关字段应保持配套。服务器端口没有统一默认值,不要把网页常用的 443 直接填成所有协议的端口。若使用域名作为服务器地址,还要先保证该域名能够解析。
- 所有条目均超时:先从 Wi-Fi 切到蜂窝网络复测。若仅一个网络失败,检查该网络的访问限制,而不是批量改写服务器参数。
- 只有一个条目失败:用自己订阅中另一个已知可用的条目对照;向原服务商确认失败条目的状态、额度和有效期。
- 更新后仍指向旧地址:在 Home 对自己的订阅执行更新,核对更新结果与条目内容;更新成功只说明数据取回并解析,不代表远端服务可用。
- 更新本身失败:保留原配置,先确认自己的订阅链接有效和访问网络正常。不要把私人订阅 URL 发到公开讨论区,其中的 token 可能具有账户权限。
如果错误详情里出现下列原文,可按对应方向缩小范围。不同协议和系统的提示可能不同,这些是错误线索,不是要求界面一定显示的固定文案。
报错:connection refused
原因与解法:连接被远端或中间设备明确拒绝,常见于端口未监听或访问策略拒绝。核对服务器地址与端口,向自己的服务商确认监听状态,不通过反复修改 DNS 处理端口拒绝。
报错:i/o timeout
原因与解法:操作在时限内没有完成,可能涉及网络路径、远端响应或解析等待。先辨认日志中超时发生在哪一步,再换网络或换自己已有的可用条目对照,不能仅凭这条提示认定密码错误。
报错:no such host
原因与解法:域名解析没有得到可用结果。先核对报错中的域名是服务器域名还是目标网站域名,再检查拼写、DNS 设置及对应域名是否仍然存在。
用模式隔离规则问题
进入 Home → Global Routing,先读取当前值,再做短时对照。Proxy、Direct、Config、Scene 不是连接质量等级,也不意味着越靠后越稳定。尤其不要因为连接开关打开,就推断当前请求一定经过代理服务器。
| 取值 | 检查含义 | 排查用法 |
|---|---|---|
Proxy | 以代理路径处理请求,不按常规配置规则逐条分流。 | 用于验证所选服务器是否能完成目标访问;仍需考虑 DNS、协议及系统路由等因素。 |
Direct | 以直连路径处理请求。 | 用于对照当前网络的直接访问能力,不会因为开关打开就自动变成代理访问。 |
Config | 按当前配置的规则决定请求策略。 | 若 Proxy 正常而 Config 失败,优先检查规则命中与所选策略。 |
Scene | 结合已配置的场景条件选择行为。 | 检查当前触发的场景及其设置;为减少变量,可暂时切到明确的 Proxy 或 Config 做对照。 |
判断:先保留成功路径
同一网络、同一服务器、同一网址下,若 Proxy 能打开而 Config 不能,先保留服务器参数,转查当前配置的命中规则和策略组;不要先重装应用或重新导入全部订阅。
如果 Proxy 和 Config 都失败,不能直接归咎于规则。先回到服务器测试,再检查 DNS。完成对照后,恢复原本需要的 Global Routing 取值,不把临时测试模式当成已经修好的正式配置。
区分解析与连接故障
DNS 负责把域名解析成地址,后续连接仍可能在服务器、TLS 或目标网站处失败。浏览器一直转圈不能单独证明 DNS 出错;反过来,DNS 返回地址也不证明该地址对应的服务可连接。应结合请求记录中的域名、解析结果和错误阶段判断。
在 Config 中找到当前使用的配置,打开其编辑内容,检查 [General] 下的 dns-server。若已有自定义 DNS,先备份原值,再做单项对照。下面仅展示使用系统 DNS 的配置写法,不是要求把整个配置文件替换成这两行。
[General]
dns-server = system
- 先测系统 DNS:保存修改并重新连接,再访问同一故障网址。若恢复,继续核对原自定义 DNS 的可达性和访问路径,而不是认定所有自定义 DNS 都有问题。
- 留意解析前置依赖:服务器地址是域名时,连上代理前就可能需要解析它。若这一步失败,单纯切换目标网站规则并不能建立服务器连接。
- 排除缓存干扰:重新发起请求,必要时重新连接或重启相关应用。不要连续更换多个 DNS 后用一次成功结果倒推全部原因。
- 不要直接用 IP 替代 HTTPS 域名:这可能触发证书名称或 SNI 不匹配,产生新的错误,不能作为通用的 DNS 验证方法。
核对规则顺序与 FINAL
在 Global Routing 为 Config 时,进入 Config 核实实际启用的文件,不要只编辑一个没有被选中的副本。规则通常按顺序匹配,前面的宽泛规则可能先于后面的精确规则生效;末尾的 FINAL 为此前未匹配的请求提供兜底策略。
下面是用于理解匹配顺序的最小示例。example.com 是示例域名,不能用它代替真实故障网站。将片段用于测试前应先备份;它没有覆盖完整的日常访问需求,也不会自动修复服务器或 DNS。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,DIRECT
| 规则关键字 | 示例含义 | 容易遗漏的检查 |
|---|---|---|
DOMAIN-SUFFIX | 匹配指定域名及其子域名。 | 填写域名本身,不带协议头、路径或端口;核对网站实际请求的其他域名。 |
IP-CIDR | 按 IPv4 网段匹配;示例是一个私有地址范围。 | no-resolve 表示不为这一条 IP 匹配主动触发域名解析,不代表全局关闭 DNS。 |
GEOIP | 依据 IP 地理数据库进行匹配。 | 归类可能受解析结果和数据库影响,不能把它等同于域名所属地区。 |
FINAL | 给前面都未命中的请求指定策略。 | 放在规则列表末尾;示例为 DIRECT,未命中前面规则的请求会直连。 |
遇到“部分网站打不开”时,检查请求记录中的命中规则及最终策略。如果预期代理的网站命中了 FINAL,DIRECT,应先修正该域名的分流规则。若命中了自定义策略组,还要继续确认该组当前选中的服务器是否有效:规则匹配正确,不代表策略组中的出口可用。
- 把明确的域名规则放到相关宽泛匹配之前,避免被更早的规则接走。
- 核对自定义策略名称是否存在、拼写是否一致,不把注释中的名称误当成有效策略。
- 修改后保存并确认仍启用该文件,重新发起请求,查看命中结果是否按预期变化。
按现象收尾复测
故障缩小范围后,再恢复 On Demand 等日常设置,并重复测试一次。尤其是从 Wi-Fi 切到蜂窝网络之后,要确认场景条件和自动连接没有让刚才的结论失效。以下问题可以帮助判断下一步应该保留什么、检查什么。
延迟有数字,网页为什么还打不开?
延迟测试与实际网页访问的目标及流程可能不同。保持同一服务器,在 Home → Global Routing 临时切到 Proxy 测故障网址,再核对 DNS 和错误阶段,不把延迟数字当成完整访问成功。
只有某个网站打不开,要重装吗?
先不用重装。在 Config 核对该网站实际命中的规则与策略;如果 Proxy 下也仅该网站失败,再检查网站自身状态、证书时间和是否返回访问限制提示。
Wi-Fi 不行,蜂窝网络却可以,改哪里?
保持服务器与配置不变,在两个网络复测同一地址。先完成 Wi-Fi 登录认证,检查该网络 DNS 和访问限制;再核对 Settings → On Demand 与 Scene 的网络条件,不批量改动订阅参数。
更新订阅后还是不通,下一步是什么?
在 Home 确认已经选中新条目,并核对服务有效期、额度和地址。若其他已有条目可用,将失败时间、网络类型及脱敏错误发给自己的服务商,不公开完整订阅链接或认证信息。
需要继续定位时,整理“网络类型、Global Routing 取值、服务器测试结果、DNS 对照结果、命中规则、最终策略、错误原文”七项记录。分享前移除订阅 token、密码、UUID 和其他认证信息。配置关键字的含义可继续查阅配置字段,不要通过粘贴陌生整份配置来掩盖未定位的故障。