· 故障排查 · 约 10 分钟

小火箭开关已开却无法上网:服务器状态、Global Routing、DNS 与规则逐项排查

连接开关显示已开启但网页打不开时,按服务器可用性、Global Routing 模式、DNS 设置、规则命中四步定位问题。

本文速览

Shadowrocket(小火箭)的连接开关开启,只说明本机已启用相应连接,不等于远端服务器、DNS 与目标网站全部可用。本文适用于已经持有自己服务商配置的用户:先建立断开连接时的网络基线,再核对 Home 中的服务器、Global Routing、DNS 与 Config 规则。每轮只改一项,使用同一网页复测,保留能够解释故障的结果。

一、先区分本地网络故障与连接故障

先保存当前 Config,并记下 Home 当前选中的服务器和 Global Routing 模式。不要一开始就删除全部配置。重建配置会丢失原来的规则、策略选择和 DNS 设置,也会让前后测试失去可比性。

准备两个平时可以访问、由不同站点提供的 HTTPS 页面。使用完整域名访问,不要用 IP 地址替换 HTTPS 域名;证书校验与虚拟主机选择依赖域名,直接访问 IP 产生的错误不能单独证明 DNS 有问题。

  1. 保存现状

    记录 Home → Global Routing 的当前选项、所选服务器名称和正在使用的 Config。截图或记录中如包含服务器地址、密码或 UUID,只保存在自己可控的位置。

  2. 暂停按需连接

    进入 Settings → On Demand,记录原来的启用状态,排查期间暂时停用,避免手动断开后又自动建立连接。测试结束后再恢复原设置。

  3. 断开后测试

    在 Home 关闭连接开关,用 Safari 访问准备好的两个页面。如果都打不开,先处理 Wi-Fi 登录认证、路由器或蜂窝数据问题,不要继续改规则。

  4. 切换网络复测

    在 Wi-Fi 与蜂窝数据之间切换,再访问相同页面。留意蜂窝数据用量。如果只在一个网络失败,记录网络类型,再判断是否存在端口或传输限制。

酒店、学校等网络可能要求先完成网页认证。关闭连接后完成网络认证,再开启 Shadowrocket 复测。若另一个网络扩展也在管理连接,排查时暂停其连接,避免两套网络设置相互干扰。

二、核对服务器状态,不把延迟当成网页可用性

回到 Home,确认选中的是自己准备测试的服务器,而不是名称相似的旧条目。按已有服务商提供的参数逐项核对 Type、地址、端口和认证信息。协议类型与参数必须配套,不能只保留地址和端口就把 VMess 改成 VLESS,也不能把 Trojan 的认证方式套到 Shadowsocks。

在 Home 使用 Connectivity Test 查看结果。测试出现延迟数值,只能说明该测试方式对应的探测成功,不能证明所有 HTTPS 请求、UDP 流量或目标站点都能正常通过。继续用相同网页验证,才能判断实际访问是否恢复。

443 / TCP
HTTPS 常用端口;服务器监听端口仍以已有配置为准
53 / UDP、TCP
传统 DNS 常用端口;切换网络时需要关注其可达性
1 项 / 轮
每次只更改一个变量,随后重新连接并复测
  • 所有已有服务器都超时:先切换接入网络,再确认服务商账户状态与服务器是否维护。不要连续替换多个无关设置。
  • 只有一个条目失败:与自己的另一条可用配置对照,检查该条目的端口、认证、TLS 和传输参数。
  • 订阅更新成功但连接失败:订阅获取与服务器连接是两条不同的请求路径。更新成功不代表列表中的每个服务器都可用。
  • 使用 Hysteria2:留意当前网络是否限制 UDP。若只在某个 Wi-Fi 失败,先保留参数不变,换网络验证,不要把问题直接归因于 DNS。

结论:先确认一条可用路径

若同一个服务器在蜂窝数据可用、在 Wi-Fi 不可用,优先排查 Wi-Fi 的访问限制;若在两个网络都失败,再核对服务器参数及服务状态。此时修改 DOMAIN-SUFFIX 或 FINAL 通常不能修复服务器握手失败。

三、用 Global Routing 区分服务器问题与分流问题

进入 Home → Global Routing,先读清当前选项,再开始切换。Proxy 适合临时隔离复杂分流的影响,Direct 用于观察直连路径,Config 用于按当前配置进行分流。若使用 Scene,还要核对当前场景实际采用的设置,不能只凭选项名称判断请求会走哪条路径。

选项排查用途复测后判断
Proxy以代理路径测试,先减少 Config 分流规则的干扰。仍失败时,优先检查所选服务器、DNS 与目标站点。
Direct检查当前网络的直接访问能力,不依赖远端代理转发。直连成功不能证明服务器可用,也不代表所有目标都适合直连。
Config按当前 Config 的规则和策略处理请求。Proxy 成功而 Config 失败时,重点查规则命中和策略选择。
Scene使用场景配置时,核对当前场景对应的实际设置。结合场景条件与最终请求记录判断,不把它当成固定出口。

按“Proxy 测一次 → Config 测一次”的顺序操作,每次切换后重新发起请求。需要时关闭并重新开启连接,让后续测试使用新设置。浏览器已有的长连接可能继续沿用旧路径,因此不要只观察已经加载好的页面。

四、检查 DNS,区分解析失败与连接失败

DNS 负责把域名转换为 IP 地址。远端服务器地址本身如果填写的是域名,建立连接前也可能需要解析。此时 DNS 不通,会表现得像“服务器无法连接”;目标网站解析失败,则可能表现为连接已开启但网页一直等待。

进入 Settings → DNS 核对当前设置,同时检查正在使用的 Config 是否包含 DNS 相关配置。不要认为只改 Settings 就一定改变了当前连接的全部 DNS 行为;应结合实际启用的配置与请求记录确认。修改前保留原值,避免无法回退。

  • 域名无法解析:查看是否出现解析错误,再核对 DNS 地址格式及其在当前网络是否可达。不要同时填入多条来源不明的解析地址。
  • 使用加密 DNS:确认解析服务的域名本身能够完成初始解析,并检查请求是否被规则送到一条尚未建立的代理路径,造成启动依赖循环。
  • 已经返回 IP:继续检查后续 TCP 连接或 TLS 握手。存在解析结果不等于目标地址一定可以连通。
  • 只有部分网站失败:记录返回的是 IPv4 还是 IPv6 地址。只有在证据指向 IPv6 路径异常时,才临时做地址族对照测试,并保留恢复方式。

报错:connection refused

原因与解法:目标端口明确拒绝了连接,常见于端口填写错误或服务未监听。核对已有配置的端口,并向自己的服务商确认服务状态,不要先修改 DNS。

报错:i/o timeout

原因与解法:某个网络操作未在时限内完成,需要结合相邻记录判断发生在解析、连接还是读取阶段。先更换接入网络复测,再针对对应阶段检查。

报错:no such host

原因与解法:域名未获得可用的解析结果。检查地址拼写、域名是否仍有效以及当前 DNS 的可达性;服务器域名错误时应核对原始配置。

以上是网络错误中常见的原文片段,具体展示可能包含额外前缀与地址。记录完整上下文,但不要把其中的认证信息或完整订阅链接发到公开位置。不要用关闭证书验证来解决 TLS 报错;应先检查设备时间、服务器域名与 TLS 参数是否一致。

五、核对 Config 规则顺序与最终策略

当 Proxy 能打开同一个页面,而 Config 不能时,进入 Config 确认实际启用的是哪份文件。检查相关域名命中了什么规则、规则指向什么策略,以及策略最终选择的服务器是否可用。配置文件名称相同,不代表内容和当前启用状态相同。

规则通常按顺序匹配,先命中的规则决定后续处理。较宽泛的规则放在前面,可能让后面的精确规则失去作用。下面只演示语法与顺序,不是一份适合直接覆盖现有配置的完整 Config;其中的策略名称必须能在当前配置中正确解析。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
  • DOMAIN-SUFFIX,example.com,PROXY:匹配示例域名及其子域名。排查真实网站时,先核对实际请求域名,页面资源可能来自多个域名。
  • IP-CIDR,192.168.0.0/16,DIRECT,no-resolve:匹配该 IPv4 网段;no-resolve 表示不为这条 IP 规则主动触发域名解析,不代表全局停用 DNS。
  • GEOIP,CN,DIRECT:按 IP 地理归属数据库匹配,不是按网页语言、域名后缀或服务器名称判断。
  • FINAL,PROXY:处理未命中前序规则的请求。把 FINAL 提前会让后面的规则无法正常发挥作用。

如果规则指向一个策略组,还要检查组内当前选择。有效的规则也可能把请求送到已失效的服务器。修复时只调整与故障目标有关的条目,重新连接后再次访问同一个页面,并确认新的请求记录与预期一致。

六、按现象复核,保存可以复现的结果

恢复访问后,重新开启原本需要的 On Demand,并把 Global Routing 恢复为日常使用的模式。先复测网页,再复测原来失败的应用。不要把“页面缓存显示正常”当成网络已经恢复,需确认有新的请求成功完成。

开关是开的,为什么还是不通?

连接状态不能证明整个请求链路成功。先在 Home 核对所选服务器并运行 Connectivity Test,再依次做 Proxy 与 Config 对照,最后检查 DNS 和命中规则。

只有一个网站打不开,要重装吗?

先不要重装。用另一个网站作对照,再查看失败站点的实际请求域名、解析结果及规则策略。只有单站失败时,还需考虑目标服务状态或出口访问限制。

Wi-Fi 不通,蜂窝数据却正常怎么办?

保持服务器和 Config 不变,完成 Wi-Fi 网页认证后再试。若仍只在 Wi-Fi 失败,记录连接阶段与传输类型,交由网络管理方或自己的服务商进一步确认。

更新订阅后还是不能访问怎么办?

确认 Home 当前选择已切换到更新后的有效条目,检查账户额度、有效期与服务器状态。订阅更新只更新配置数据,不会自动修复服务端故障或本地规则错误。

提交问题前保留四项信息

  1. 记录接入网络:Wi-Fi 或蜂窝数据,以及切换网络后的差异。
  2. 记录 Global Routing 模式、Config 名称,以及 Proxy 与 Config 对照结果。
  3. 记录错误发生的阶段:DNS、服务器连接、TLS 握手或目标响应。
  4. 保留经过脱敏的错误原文与复现步骤,删除密码、UUID、订阅令牌及其他认证信息。

需要继续区分超时原因时,查看问题诊断中的超时说明;需要确认规则术语时,查看名词解释。这些检查以用户已有服务商与配置为前提,客户端购买与线路服务是两项不同的事项。

App Store 正版核对