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

按顺序排查四处:服务器连通性测试、Global Routing 模式、DNS 设置、规则与 FINAL 策略,逐步定位连接已开但无法上网的原因。

本文速览

Shadowrocket(小火箭)的连接开关开启,只表示本机连接流程已启动,不代表远端服务器、域名解析和每条请求的策略都正常。本文以用户已有自己的服务商与订阅为前提,从基础网络开始,逐项隔离服务器、Global Routing、DNS 与规则问题;每次只改一个变量,并用同一网页和请求记录复核结果。

先建立基线:关闭连接后能否上网

不要先删除订阅或重装应用。先判断故障是否只在 Shadowrocket 连接开启时出现:如果关闭连接后,当前 Wi-Fi 或蜂窝网络仍无法打开平时可直连的网页,应先处理基础网络、Wi-Fi 登录认证或系统网络权限。连接图标不能替代这一步检查。

  1. 保存现状

    记录 Home 当前选中的服务器、Global Routing 的选项,以及 Config 中正在使用的配置。保留现有配置副本;记录中不要包含密码、完整订阅链接或认证参数。

  2. 关闭连接

    在 Home 关闭连接,用 Safari 打开一个平时可直连的 HTTPS 网页。若仍失败,先确认 Wi-Fi 是否需要登录、蜂窝数据是否可用,再继续应用内排查。

  3. 固定测试对象

    选定一个可直连网页和一个原本需要代理才能访问的网页。后续保持网址不变,每次修改后重新发起请求,避免用不同网站的结果互相比较。

  4. 暂停自动触发

    若手动断开后连接又自动开启,检查 Settings → On Demand,记录原有状态后暂时关闭 On Demand。完成测试后恢复,避免自动触发干扰对照。

测试时也要区分“网页打不开”与“某个 App 的某项功能失败”。单个站点可能有自身故障;网页可以打开而视频或通话失败,则还需要检查相关流量是否使用 UDP,不能直接认定整个连接不可用。

第一处:服务器连通性与认证参数

回到 Home,确认选中的确实是准备测试的服务器,再执行 Connectivity Test。先看是否持续超时,再看响应是否稳定。测试成功只能证明测试采用的路径或目标可达,不能保证所有网站、UDP 流量和服务端认证都正常;延迟数值较低也不等于实际网页一定能打开。

443
HTTPS 常用目标端口,不等于代理服务器必须使用的端口
53
传统 DNS 常用端口,解析请求与网页连接属于不同环节
1 项
每轮只调整一个变量,随后复测同一目标

打开当前服务器的编辑页面,将地址、端口和认证信息与用户已有服务商提供的原始资料逐项核对。Shadowsocks 的加密方法与密码、VMess 或 VLESS 的身份参数、Trojan 的密码,以及需要 TLS 时的服务器名称和传输参数,不能互相替代。不要因为网页通常使用 443,就擅自把服务器端口改成 443。

结论:先隔离单个服务器

同一网络、同一网页、同一 Global Routing 选项下,更换用户已有的服务器后恢复访问,优先核对原服务器的服务状态和参数;此时不要同时改 DNS 与 FINAL。

第二处:用 Global Routing 区分模式与规则问题

在 Home → Global Routing 核对当前选项。Proxy、Direct、Config、Scene 不是四种协议,而是不同的流量决策方式。临时切换用于诊断,测试完成后应恢复原有使用方式,尤其不要把一次 Proxy 测试成功当作所有分流规则都正确的证据。

选项主要含义排查时核对什么
Proxy以代理方式处理流量,绕过项等设置仍需另行核对当前选中的服务器能否承载目标请求
Direct以直接连接方式处理流量目标是否本来就能通过当前基础网络访问
Config由当前配置中的规则决定请求策略命中了哪条规则、最终使用哪项策略
Scene按已配置的场景设置应用相应路由方式当前场景实际采用什么设置,而非只看选项名称

先记录原选项,再临时选 Proxy,重新访问原本失败的同一网页。如果 Proxy 可用而 Config 不可用,说明应优先检查当前配置及规则命中,但仍要考虑两种模式下 DNS 路径可能不同。如果两种方式都失败,先回到服务器和 DNS 检查,不要只盯着规则。

第三处:DNS 是否完成解析且路径可达

域名解析发生在请求链路中,DNS 失败与服务器连接失败可能表现为同样的“网页一直加载”。打开请求记录,区分失败发生在域名解析阶段,还是已经获得地址后连接目标失败。不要仅凭 Safari 的通用提示认定是 DNS 问题。

在 Config 中打开当前正在使用的配置,检查文本里的 [General] 与 dns-server。如果曾手动填写解析器,核对地址是否正确、当前网络能否访问,以及是否依赖尚未建立的代理路径。不要同时叠加多个陌生 DNS 设置;先恢复到此前可用的配置副本,再做单项对照。

报错:Could not resolve host

原因与解法:这是常见的域名解析失败信息,具体措辞取决于诊断工具。先核对目标域名与 DNS 配置,再检查解析器在当前网络下是否可达;不要立即修改服务器认证参数。

报错:Connection timed out

原因与解法:连接在规定时间内未完成,可能发生在服务器或目标路径。先定位记录中的失败目标和端口,再用同一网络测试用户已有的另一个服务器,区分单点故障与整体网络问题。

报错:Connection refused

原因与解法:通常表示连接被目标或中间设备主动拒绝。核对记录指向的是代理服务器还是目标网站,检查对应端口和服务状态;反复刷新网页不能修复错误端口。

第四处:规则顺序、策略引用与 FINAL

在 Global Routing 使用 Config 时,请求由当前配置的规则决定走向。先在 Config 确认选中的文件,再检查 [Rule]。规则通常从上到下匹配,前面已经命中的请求不会等待后面更具体的规则;因此,规则内容正确但位置错误,同样可能导致访问失败。

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

以上片段仅说明语法,不是可直接替换现有配置的通用方案。example.com 是示例域名;PROXY 必须对应当前配置中存在且可用的策略或策略组,不能只复制名称而没有定义。FINAL,PROXY 的实际效果还取决于该策略最终选择的服务器。

关键字匹配依据常见检查点
DOMAIN-SUFFIX域名及其子域名是否被前面的宽泛规则覆盖,是否遗漏资源域名
IP-CIDR目标 IP 地址段网段与掩码是否正确,no-resolve 是否符合预期
GEOIP目标 IP 的地理数据库归属以实际解析出的 IP 查询结果为准,不按品牌所在地推断
FINAL此前规则均未命中时兜底是否位于末尾,引用的策略是否存在且可用

no-resolve 用于避免为了匹配该 IP 规则而额外触发域名解析,不是关闭整个应用的 DNS。REJECT 则会阻止相应请求;若主页面可打开、图片或登录接口失败,应检查这些资源域名是否命中了拒绝规则,而不是直接删掉全部规则。

结论:根据命中记录调整规则

只有确认失败请求命中了错误策略后,再移动或修改对应规则。若请求根本没有走到 FINAL,修改 FINAL 不会修复它;若已经命中预期代理策略,则应继续追踪该策略实际选择的服务器。

常见追问:测试成功后仍有局部故障

Connectivity Test 有结果,为什么网页还是打不开?

测试目标与网页目标可能不同,测试也未必覆盖认证、TLS、DNS 和网页所需的全部连接。先在 Home → Global Routing 临时选择 Proxy 复测,再查看失败请求停在解析、连接还是策略选择阶段。

Proxy 能上网,换成 Config 就失败,先改哪里?

先确认 Config 中当前文件,再查看失败请求的规则命中和策略组选择。检查是否误走 DIRECT、命中 REJECT 或引用了不可用策略;保留 DNS 路径不同的可能性,不要直接将所有请求改为同一策略。

Wi-Fi 正常,蜂窝网络失败,是协议不支持吗?

先使用同一服务器和同一网址复测,核对蜂窝数据权限、Settings → On Demand 及 Scene 的设置。不同网络可能对端口或 UDP 采用不同处理;仅凭一次失败不能判断协议本身不受支持。

网页正常,通话或视频异常怎么办?

查看业务是否涉及 UDP,再核对当前协议、服务器端与服务权限是否支持所需转发。Hysteria2 的传输依赖 UDP;其他协议的 UDP 能力也要结合服务端配置判断,不能只看协议名称。

订阅更新成功,是否就能排除服务问题?

不能。更新成功只证明订阅内容能够取得并被处理。回到 Home 检查当前服务器的地址、认证参数和连通性;如需向自己的服务商反馈,提供脱敏后的错误阶段、网络类型和复现步骤。

收尾:恢复设置并保留可复现记录

找到问题后,只保留经过验证的必要修改。恢复临时关闭的 On Demand,确认 Global Routing 回到日常选项,再分别测试基础网页与原先失败的目标。如果只能在某一种网络或某一个服务器上复现,应把这个条件写入记录,而不是将结论扩大到整个应用。

需要逐项对照字段时,可查看配置字段说明;首次导入或不确定当前配置来源时,先按入门指南确认操作顺序。客户端买断不等于线路套餐,应用购买状态与用户已有服务的有效状态需要分别核对。

App Store 正版核对 →