Shadowrocket 开关已打开却上不了网:服务器、模式、DNS、规则四步排查

连接开关显示已开,网页却打不开。本文按服务器状态、Global Routing 模式、DNS 设置、规则命中的顺序逐项核对,并说明每一步该看哪里。

本文速览

Shadowrocket(小火箭)的连接开关打开,表示系统网络隧道已启用,不等于服务器、DNS 和目标网站都已连通。本文适用于已有自己的服务商与订阅、已完成导入但访问失败的用户。按“基础网络 → 服务器 → Global Routing → DNS → Rule”的顺序,每次只改一个设置,可把问题缩小到具体环节;排查结束后恢复原配置,不把临时测试设置长期保留。

开始前:固定测试条件,确认基础网络

先区分“所有网页打不开”和“只有一个域名失败”。前者需要先检查基础网络与服务器,后者还可能涉及目标网站、域名解析或某条规则。不要只凭系统 VPN 标记判断网络正常,也不要把一次延迟测试成功当成全部请求成功。

  1. 记录当前状态

    在 Home 记录当前选中的服务器与 Global Routing 值,再到 Config 记录当前启用的配置文件。保留原配置副本,记下失败域名、发生时间,以及使用 Wi-Fi 还是蜂窝网络;分享记录前遮住密码、订阅地址和身份凭据。

  2. 暂停自动连接

    进入 Settings → On Demand,记录原设置后暂时关闭按需连接,再关闭 Home 的连接开关。这样可避免测试基础网络时,网络条件变化又触发隧道连接。

  3. 测试基础网络

    在连接关闭时,打开平时能够直接访问的网页。若仍失败,先完成 Wi-Fi 登录认证、检查蜂窝数据权限或更换网络;此时不应先修改 Rule 或 DNS。

  4. 固定测试请求

    基础网络正常后重新连接,每轮测试使用相同的完整网页地址。分别记录是否出现解析错误、连接超时或证书错误,而不是只记录“打不开”。切换 Wi-Fi 与蜂窝网络时,单独记为另一轮测试。

关闭隧道后能够访问,只能说明直接访问路径在当时可用;它不能证明原服务器正常。相反,某个目标在直接访问时失败,也不能单独证明基础网络断开,应另选一个已知可直接访问的目标作对照。

第一步:Home 核对服务器与连接参数

在 Home 确认当前选中的是预期服务器,再打开该条目的编辑页面,逐项对照自己的服务商提供的资料。地址、端口、Type 和认证信息必须成套匹配。端口为 443 并不自动代表参数正确,协议也不能仅凭端口推断。

执行 Home 中的连通性或延迟测试时,要同时看所用测试方式和结果。TCP 建连成功只能说明相应地址与端口在测试时可建立连接,不会完整验证认证、TLS、转发和目标网站响应。已有多个服务器时,可在其他设置不变的前提下换一个已有条目做对照。

报错:connection refused

原因与解法:连接被目标主机或中间设备明确拒绝,可能是端口未监听或连接被拒绝。先核对地址与端口,再向自己的服务商确认该入口状态;不要先改 DNS 或规则来处理端口拒绝。

报错:i/o timeout

原因与解法:某项网络操作未在规定时间内完成,原因可能在解析、建连或后续读写阶段。结合报错附近的地址与操作判断位置,再用另一种网络测试同一条目;超时本身不能直接证明密码错误。

报错:no such host

原因与解法:域名解析未得到可用结果。先辨认报错指向服务器域名还是目标网站域名,再核对拼写与 DNS 设置;不要在未识别域名的情况下同时修改服务器和配置文件。

以上是网络日志中可能出现的错误原文,不保证每个界面都显示相同文字。检查时应保留实际错误和上下文;只截取一个“timeout”,容易把服务器连接失败与网站响应缓慢混为一谈。

第二步:Global Routing 区分 Proxy、Direct、Config、Scene

在 Home → Global Routing 核对当前模式。服务器选对了,但请求没有走预期路径,同样会出现开关已开却访问失败。测试时先固定服务器,再逐个比较模式,不要同时切换服务器、DNS 与配置文件。

4 种
Global Routing:Proxy / Direct / Config / Scene
53
传统 DNS 常用端口,可能使用 UDP 或 TCP
443
DNS over HTTPS 通常使用的 HTTPS 端口
模式排查时怎样理解需要核对什么
Proxy以代理路由作对照,减少 Rule 分流对测试的影响。选中服务器、连接参数与目标响应;它不是“所有其他设置都被清空”。
Direct以直接访问路径作对照,不通过代理服务器转发请求。本地网络能否访问测试目标;它不完全等同于关闭系统隧道。
Config按当前配置文件中的规则决定请求策略。Config 中启用的文件、Rule 顺序以及命中后的策略。
Scene按已设置的场景条件切换路由行为。当前网络对应的场景设置;排查时暂时使用明确的固定模式。

结论:同一请求只比较一个变量

同一服务器下,Proxy 能打开而 Config 失败时,下一步优先检查当前配置的规则与策略;若两者都失败,则继续核对服务器和 DNS。这是缩小范围的方法,不是对故障原因的最终判定。

Direct 能访问、Proxy 失败,也不能仅凭这一组结果认定服务器宕机:代理路径上的解析、认证、TLS 或目标网站限制都可能影响结果。测试完成后恢复原先的 Global Routing;使用 Scene 的用户还要恢复场景条件,避免下次换网络时得到不同结果。

第三步:DNS 区分服务器解析与网站解析

DNS 问题可能发生在两个位置:先解析服务器域名,或在访问时解析目标网站域名。前者失败会使代理连接本身无法建立,后者失败则可能表现为服务器测试有响应但网页打不开。应先读清错误中的域名,再决定修改哪一项。

  1. 在 Config 打开当前启用文件的编辑视图,检查 [General] 中的 dns-server,并记录原值。不要编辑一个未启用的同名副本。
  2. 若原配置使用自定义 DNS,核对地址、格式与当前网络可达性。使用 DNS over HTTPS 时,还需要检查 HTTPS 端点是否可访问,以及端点域名的解析和证书是否正常。
  3. 可在配置副本中临时改为系统 DNS 作对照,保存并启用该副本,再重新建立连接。只改 DNS,保持服务器与 Global Routing 不变。
  4. 重复打开相同域名。若结果改善,继续核对原 DNS 路径;若结果不变,恢复原值,再检查规则,不要持续叠加未经验证的改动。
[General]
dns-server = system

[General] 是配置文件的通用设置段;dns-server = system 表示使用系统 DNS 作为该项设置。这是对照测试片段,不是完整配置文件,也不应拿它覆盖已有配置的其他段落。使用系统 DNS 后,结果仍取决于当前网络提供的解析服务。

DNS over HTTPS 使用 HTTPS 传输解析请求,但并不保证任何网络下都可达。解析端点、服务器地址与目标网站是不同对象;只改成另一种 DNS 传输方式,不能修复服务器端口拒绝或认证参数错误。

第四步:Config 核对 Rule 顺序与实际策略

回到 Config,确认测试时启用的文件。Global Routing 为 Config 时,规则通常按顺序匹配,前面已经匹配的请求不会继续等后面的同类规则来覆盖。先查目标域名对应的规则,再查 IP 规则和最终策略;“配置里写了 PROXY”并不表示该请求一定命中了它。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

若目标在 Proxy 下正常、在 Config 下失败,检查是否被更靠前的 DIRECT 或 REJECT 命中,以及自定义策略组是否选择了有效成员。需要临时验证时,在副本中加入针对单个目标的 DOMAIN 或 DOMAIN-SUFFIX 规则,并放在可能冲突的规则之前;不要为了一个域名删掉整个 Rule 段。

结论:验证命中,而不是只看规则存在

保存并启用修改后的配置,重新发起同一个请求,结合应用内连接记录或日志核对目标与策略。只有“当前文件已启用、请求命中预期规则、对应策略可用”同时成立,才完成这一轮规则验证。

收尾:按测试结果定位,恢复原设置

四步排查的目的不是把所有设置改一遍,而是得到可以复现的对照结果。记录成功与失败发生在哪一轮,下一次复测保持相同条件;若只有某个网站失败,也要检查该网站自身是否可用,不能把单站故障等同于全部代理连接故障。

对照结果下一步核对
关闭连接后,已知可直接访问的网页仍失败先处理 Wi-Fi 认证、蜂窝网络权限与基础网络。
同一条目在 Wi-Fi 失败、蜂窝网络成功检查 Wi-Fi 网络上的 DNS、端口与传输可达性,保留两轮错误记录。
Proxy 成功、Config 失败检查启用文件、规则顺序、命中策略与策略组成员。
仅更改 dns-server 后结果发生变化复测原 DNS 的可达性与解析结果,确认不是短暂网络波动。
所有模式下只有同一个目标失败核对目标服务状态、解析结果与证书错误,不继续盲目更换全局设置。

Shadowrocket 是 Apple 平台的付费客户端,以 iPhone、iPad 使用为主,唯一获取入口是 App Store。系统要求、设备兼容性与是否通用购买以 App Store 页面标注为准。客户端购买与线路服务是不同事项;本站不提供、不销售、不推荐节点或订阅。

App Store 正版核对下载 Shadowrocket