Shadowrocket连接不上怎么办?VPN配置失败与无线网无响应排查指南
2026最新Shadowrocket(小火箭)无法连接、VPN配置失败、开启后Wi-Fi断网无响应全网最深排查指南。涵盖iOS NetworkExtension内核死锁、DNS污染、TLS SNI阻断、蜂窝网络权限拦截与15+真实排错案例。
在 iOS 系统上使用 Shadowrocket(小火箭) 科学上网时,最令人头疼的问题莫过于拨动连接开关后出现各种“罢工”现象:要么系统弹窗提示“无法添加 VPN 配置”或要求反复输入解锁密码;要么虽然顶部显示了 VPN 标志,但手机连上了 Wi-Fi 却完全无网络响应(网页无限加载、微信发不出消息);或者节点测试全部显示 Timeout -1ms,网页提示 NSURLErrorDomain 错误。
由于 Shadowrocket 是一个运行在 iOS NetworkExtension 框架之上的系统级接管代理客户端,它的连接状态不仅取决于海外节点服务器的连通性,更与 iOS 内核的虚拟网卡调度、无线局域网/蜂窝网络数据权限、系统 DNS 缓存以及本地路由规则匹配密切相关。
如果你正在面临小火箭“连不上”、“连上后断网”或“VPN 无法创建”的困扰,请勿盲目重装软件或反复切换节点。本文将从 iOS 系统的底层网络运行机制切入,提供一套系统的故障诊断决策树、命令行排查实战、标准配置文件模板,以及 15 个真实环境下的疑难排错案例与 20 个高频 FAQ。
一、Shadowrocket 无法连接的常见现象与底层网络死锁机制
在使用 Shadowrocket 过程中,用户遇到的“连接失败”表面上看起来都是“打不开网页”,但在 iOS 系统底层,不同现象对应的故障层级截然不同。
+-------------------------------------------------------------------+| Shadowrocket App GUI |+-------------------------------------------------------------------+ | (用户点击连接开关) v+-------------------------------------------------------------------+| iOS NetworkExtension 框架 || 检查 NEPacketTunnelProvider 授权与 KeyChain |+-------------------------------------------------------------------+ | (授权失败: 案例1/案例9) | (授权成功: 建立 utun 网卡) v v[ 弹窗提示 VPN 配置失败 ] +-----------------------------------------+ | XNU 内核重定向全局 IP 路由表 | +-----------------------------------------+ | +------------------------+------------------------+ | (DNS死锁/案例10) | (IP/SNI被墙: 案例4) v v [ 全局断网/Wi-Fi无响应 ] [ 节点超时 -1 / 握手失败 ]1. iOS NetworkExtension 框架与 VPN 配置创建机制
当你点击小火箭顶部的“连接”开关时,小火箭会调用 iOS 内核的 NetworkExtension.framework API,向系统申请建立一个 NEPacketTunnelProvider(分组隧道提供者)。
这一过程需要完成以下底层操作:
- 安全隔离区(Secure Enclave)鉴权:iOS 系统弹出安全验证提示,要求用户通过 Face ID、Touch ID 或输入开屏解锁密码。系统验证通过后,将生成一份包含了隧道加密私钥的系统级 VPN 描述文件,并写入 iOS 的 Keychain;
- utun 虚拟网络接口分配:iOS 操作系统在内核空间(Kernel Space)动态创建一个名为
utun3或utun4的虚拟网络适配器; - 全局 IP 路由表重定向:系统将默认网关地址(0.0.0.0/0)从物理网卡(
en0为 Wi-Fi,pdp_ip0为蜂窝数据)修改为utun虚拟接口。
如果系统在第一步写入 Keychain 时因描述文件损坏、其他 VPN 客户端(如 Clash、Quantumult X)占用了内核通道,或者系统安全组件报错,就会直接跳出“VPN 配置失败”或“无法添加 VPN 配置”的硬性错误。
2. 为什么开启小火箭后 Wi-Fi 变成“无互联网连接”?
很多用户遇到“连上小火箭后手机彻底断网”的现象,这通常是由 DNS 解析环路死锁(DNS Loop / Circular Routing) 引起的:
- 正常流程:手机访问
google.com-> 流量送入小火箭 -> 小火箭查找规则确定走代理 -> 将请求加密发送至代理服务器的 IP 地址1.2.3.4-> 代理服务器在海外解析google.com并返回数据; - 死锁流程:如果你在小火箭节点中填写的服务器地址是一个域名(例如
node1.myairport.com)而非固定 IP,且你将小火箭的全局路由设为“代理”或 DNS 策略配置不当:
- 小火箭为了连接节点
node1.myairport.com,必须先通过 DNS 解析出该节点的真实 IP; - 但小火箭已经把全局 DNS 解析接管到了代理通道中;
- 代理通道尚未建立,必须先连接
node1.myairport.com; - 于是产生死锁:解析节点域名依赖代理连接,而代理连接又依赖节点域名解析。
这种死锁会导致所有网络请求在 utun 网卡中无限等待超时,表现为 Wi-Fi 虽处于连接状态,但实际无任何数据包出网,系统提示“无互联网连接”。
3. 直连、代理与 DNS 循环依赖引发的网络中断
除 DNS 死锁外,另一个导致 Wi-Fi 无响应的核心原因是 无线局域网与蜂窝网络数据权限(Wireless Data Privacy) 被 iOS 系统拦截。
中国大陆售卖的国行 iPhone(或运行国版 iOS 系统的设备)拥有特有的“无线局域网与蜂窝网络”权限控制模块。当小火箭首次安装或更新后,若系统未正确赋予其“无线局域网与蜂窝数据”联网权限,小火箭进程本身无法建立 Socket 连接,但其 VPN 描述文件却已经把系统的 utun 网卡占满。结果就是所有应用流量全被送入了一个“无法联网的代理进程”中,造成彻底断网。
二、故障诊断逻辑链:小火箭无法连接故障排查决策树
flowchart TD Start[用户开启 Shadowrocket 连接开关] --> CheckAuth{iOS NEPacketTunnelProvider<br/>凭证与 KeyChain 授权} CheckAuth -- 授权失败/损坏 --> Err1[弹窗提示: 无法添加 VPN 配置<br/>参照案例1/案例9] CheckAuth -- 授权成功 --> CreateTUN[XNU 内核分配 utun 虚拟网卡<br/>重定向 0.0.0.0/0 路由表]
CreateTUN --> CheckNetPerm{iOS 系统无线局域网与<br/>蜂窝数据应用联网权限} CheckNetPerm -- 权限被拒绝 --> Err2[手机显示 VPN 但全局断网<br/>参照案例6/重置应用网络] CheckNetPerm -- 权限正常 --> RuleEngine[流量送入 Shadowrocket<br/>规则引擎进行分流]
RuleEngine --> CheckRouting{全局路由模式判断} CheckRouting -- 错设为代理 Proxy --> LoopErr[引发 DNS 解析死锁与断网<br/>参照案例3/案例10] CheckRouting -- 配置模式 Config --> DNSCheck[解析目标域名与节点 IP]
DNSCheck --> CheckNode{节点 TCP/UDP/TLS<br/>连通性测试} CheckNode -- 全部 Timeout -1ms --> Err3[IP/端口被墙或 SNI 封锁<br/>参照案例4/命令行抓包] CheckNode -- 延迟显示毫秒数 --> Success[代理与直连成功分流<br/>稳定科学上网]遇到 Shadowrocket 无法连接时,切忌凭感觉随机更改参数。请遵循以下排查决策树,按照“硬件网络 -> 系统权限 -> 节点连通性 -> 软件路由规则”的顺序逐步定位根因:
[ 故障现象:小火箭无法正常连接/断网 ] | +----------------+----------------+ | | [ 开关无法开启 / 提示失败 ] [ 开关已开启 (顶部显示VPN) ] | | +---------+---------+ +---------+---------+ | | | | [ VPN描述文件损坏 ] [ 联网权限被禁 ] [ 全部节点超时 -1 ] [ 连上后全网断网 ] | | | | (恢复网络设置) (重置应用网络) (检查GFW/订阅) (检查DNS与全局路由)极速排查五步法
| 排查步骤 | 检查项目 | 正常状态 | 异常处理动作 |
|---|---|---|---|
| Step 1 | 物理网络连通性 | 关闭小火箭后,Safari 能正常打开百度/新浪 | 若关闭后仍打不开,先恢复 Wi-Fi 或蜂窝网络 |
| Step 2 | iOS 联网权限 | 设置 -> 无线局域网 -> 使用与无线局域网与蜂窝网络的 App -> Shadowrocket 设为允许 | 若找不到小火箭,重置网络设置或重启手机 |
| Step 3 | 节点 ICMP / TCP 延迟 | 在小火箭首页点击“连通性测试”,节点显示数字毫秒(如 180ms) | 若全部显示 Timeout -1,说明订阅过期或节点被封 |
| Step 4 | 全局路由模式 | 首页“全局路由”必须设为 配置(Config) | 若误设为 代理(Proxy),立即改回 配置 |
| Step 5 | DNS 分流设置 | 设置 -> DNS 恢复为默认 系统 DNS | 若修改过 DoH / DoT,点击重置为默认 DNS |
三、核心故障一:VPN 描述文件添加失败与 iOS 系统凭证损坏
4. XNU 内核 KeyChain 沙盒与 nehelper Mach IPC 通信机制
为了从技术原理上彻底解释为什么 iOS 系统会偶发性跳出“无法添加 VPN 配置”或连接开关自动弹回,我们需要深入了解 iOS 操作系统的进程间通信(IPC)与网络扩展架构。
Mach Port 与 nehelper 守护进程
在 iOS 系统架构中,App 无法直接向内核空间申请创建网络接口。Shadowrocket 作为运行在用户空间(User Space)普通沙盒内的应用,必须通过 Apple 的 Mach IPC 机制与系统守护进程 nehelper(Network Extension Helper)进行通信:
- Mach Message 发送:当你在小火箭中拨动连接开关时,小火箭应用进程向
com.apple.nehelper发送一个包含 VPN 描述文件配置字典的 Mach 消息; - Securityd 密钥库校验:守护进程
nehelper收到请求后,调用securityd验证当前 App 的签名与 Entitlements 凭证(包括com.apple.developer.networking.vpn.api); - Secure Enclave 存储:验证无误后,
nehelper将包含 VPN 秘钥的 PKCS#12 证书加密写入 Secure Enclave(安全隔离区)保护的系统 Keychain 数据库中; - Mach Port 超时死锁:当系统升级(如 iOS 17 升级至 iOS 18)、或者曾经安装过不规范的测试版代理 App 时,Keychain 数据库中的访问控制列表(ACL)可能发生损坏。此时
nehelper在尝试写入描述文件时会无限期等待securityd的响应,触发 Mach Message 30 秒超时机制。
在超时发生后,iOS 内核直接切断授权,UI 界面便表现为“开关自动弹回”或弹出硬性报错“无法添加 VPN 配置”。这解释了为什么单纯重启小火箭 App 无法解决问题,必须通过进入 设置 -> VPN 与设备管理 强制删除历史 VPN 描述文件,以重置 Keychain 中的 ACL 权限表。
5. Fake-IP 与 Real-IP 模式下 DNS 环路死锁的数学与协议拆解
为什么将小火箭的全局路由误设为“代理(Proxy)”会导致全网断网?这涉及 DNS 解析模式(Fake-IP vs Real-IP)在 TUN 虚拟网卡上的处理差异。
Real-IP 模式下的域名解析死锁链条
在传统 Real-IP 模式下,当你在 Safari 中访问 https://www.youtube.com 时:
- 客户端发起 UDP 53 请求:Safari 操作系统内核向系统 DNS 发起
www.youtube.com的 A 记录查询; - 小火箭捕获 DNS 数据包:
utun虚拟网卡捕获该 UDP 53 数据包。小火箭规则引擎检查当前的全局路由设置; - 全局代理模式的死锁逻辑:
- 规则引擎发现当前路由模式为全局
Proxy(代理); - 引擎试图将该 DNS 请求通过当前的节点服务器(例如
node.airport.com)发送出去; - 然而,要与
node.airport.com建立 TCP 握手,小火箭必须先知道node.airport.com的真实 IP 地址; - 为了获取
node.airport.com的 IP 地址,小火箭必须再次向 DNS 服务器发起查询; - 该查询数据包再次被
utun捕获,再次被送入全局Proxy通道……
这一逻辑形成了完美的无线递归死锁循环。数据包在 utun 环形缓冲区中堆积,直到触发 TCP 握手超时(默认 60 秒),Safari 随即抛出 ERR_INTERNET_DISCONNECTED 或 NSURLErrorDomain 错误。
Fake-IP (198.18.0.0/16) 机制如何打破死锁
在现代代理工具(包括小火箭与 Clash)中,引入了 Fake-IP 机制来解决 DNS 环路问题:
- 小火箭在本地建立一个虚拟 DNS 响应器;
- 当 Safari 查询
www.youtube.com时,小火箭立刻在毫秒级时间内返回一个保留网段的假 IP(例如198.18.0.45); - Safari 以为成功获取了 IP,立刻向
198.18.0.45发起 TCP 连接; - 数据包进入
utun网卡,小火箭通过查表将198.18.0.45还原为www.youtube.com字符串,直接将其打包发送给海外代理服务器,在远端完成真正的 DNS 解析。
因此,确保小火箭处于 配置(Config) 模式 并开启默认的 Fake-IP/系统 DNS 映射,是根治 Wi-Fi 无响应与断网问题的技术核心。
1. 现象与报错信息
当用户拨动 Shadowrocket 顶部的连接开关时,屏幕没有出现常规的 Face ID 验证框,而是弹出一行系统级错误提示:
- “无法添加 VPN 配置”(Unable to Add VPN Configuration)
- “Shadowrocket 想要添加 VPN 配置,出现未知错误”
- 或者打响连接开关后,开关自动弹回 OFF 状态,界面没有任何响应。
2. 底层发生机制
iOS 系统通过 System Configuration 框架管理所有网络接口。当小火箭调用 NEPacketTunnelProvider 时,系统需要将凭证写入系统的 /var/preferences/SystemConfiguration/preferences.plist。
以下三种情况会导致写入失败:
- Keychain 锁死或凭证冲突:设备上曾经安装过大量 VPN、加速器或测试版 iOS 系统,导致 Keychain 中残留了失效的系统 VPN 签名;
- 多客户端抢占内核接口:同时开启了 Clash Verge、Quantumult X、Stash 或 Surge 等客户端的后台守护进程,导致
utun接口被硬性占用; - 系统内存泄露导致
nehelper崩溃:iOS 系统负责辅助管理网络扩展的底层守护进程nehelper遭遇死锁,拒绝响应小火箭的授权请求。
3. 彻底修复操作步骤
方案 A:清理并重新生成小火箭 VPN 描述文件
- 打开 iOS
设置-> 点击通用(General) -> 选择VPN 与设备管理(VPN & Device Management); - 点击
VPN选项; - 找到列表中所有包含
Shadowrocket或历史残留的 VPN 配置项目,点击右侧的信息图标(i); - 点击最下方的
删除 VPN(Delete VPN); - 返回桌面,强制关掉 Shadowrocket 后台(向上滑动退出);
- 重新打开 Shadowrocket,再次拨动顶部的连接开关;
- 当系统跳出“Shadowrocket 想要添加 VPN 配置”时,点击
允许(Allow),并准确输入手机解锁密码。
方案 B:强制重启 iOS 系统网络守护进程
若删除 VPN 后依然无法添加配置,说明 nehelper 处于死锁状态。此时无需恢复出厂设置,直接执行强制重启(Force Restart):
- iPhone 8 及后续机型(带有 Face ID / 全面屏):按下并快速释放音量加键 -> 按下并快速释放音量减键 -> 按住侧边电源键不放,直到屏幕出现苹果 Logo 图案后再松开。
四、核心故障二:连上小火箭后 Wi-Fi/蜂窝网络无响应与全网断网
1. 现象与诊断
小火箭成功开启,顶部状态栏显示了 VPN 标志。然而:
- 打开 Safari 访问任何网站均提示
Safari 无法打开页面,因为您的 iPhone 未连接到互联网; - 微信接收不到新消息,测速软件显示无网络流量;
- Wi-Fi 列表中该 Wi-Fi 名称下方出现黄色感叹号,提示“无互联网连接”。
2. 深入剖析四类根源原因
原因 1:全局路由误设为“代理(Proxy)”
在全局路由为“代理”的情况下,小火箭会将你手机上所有应用的所有流量(包括国内微信、百度、甚至 Localhost 本地数据)全部强制打包发送至当前选中的海外节点。如果该海外节点恰好失效或超时,你的手机就会面临全网断网。
原因 2:远程 DNS 污染与死锁
在 设置 -> DNS 中,若启用了不稳定的远程 DoH(DNS over HTTPS)服务器(如 https://1.1.1.1/dns-query),而在国内直连网络下该 IP 遭遇了 GFW 的 SNI 阻断,小火箭将无法完成任何域名的 DNS 解析,导致打不开网页。
原因 3:开启了“UDP 转发”但节点不支持 UDP
在小火箭设置中误开启了全局 UDP 转发,但节点服务商(机场)屏蔽了 UDP 53/443 端口,导致依赖 UDP 传输的 QUIC 协议(如 YouTube、Google 搜索)或游戏流量全部丢包。
3. 逐步修复指南
{ "shadowrocket_dns_recommended": { "system_dns": "119.29.29.29", "fallback_dns": "223.5.5.5", "remote_dns": "https://dns.google/dns-query", "dns_direct_system": true, "routing_mode": "config" }}- 修正全局路由为“配置模式”:打开小火箭首页,找到
全局路由(Global Routing),确保选择的是配置(Config),切勿选择代理或直连; - 重置小火箭 DNS 配置:
- 进入小火箭
设置-> 点击DNS; - 点击右上角的
重置按钮,恢复为默认系统 DNS 分流; - 确保开启
DNS 转发;
- 更新规则集与 GeoIP 数据库:
- 进入
设置->GeoLite2; - 点击
立即更新,确保国内 IP 归属地数据库为最新版本;
- 关闭 QUIC 协议重定向:
- 进入
配置页面 -> 点击当前使用的配置文件右侧的(i)-> 选择规则; - 添加一条规则:
FINAL, DIRECT确保未匹配流量走直连,或添加UDP-REJECT强制退回 TCP。
五、核心故障三:节点延迟显示 -1 / 超时 / TCP&UDP 连通性阻断
1. 现象与技术诊断
在 Shadowrocket 首页点击“连通性测试”或按住节点向下刷新:
- 列表中所有节点或绝大多数节点显示
Timeout -1ms、Connection Refused或Handshake Failed; - 少数节点测试显示
200ms,但实际连接后依然打不开 Google 或 YouTube。
2. GFW 封锁与节点失效的技术剖析
机制 A:IP 与端口硬阻断(TCP RST / Drop)
防火墙通过 BGP 路由注入或在骨干网出口将节点服务器的 IP 地址列入黑名单,或直接丢弃发往特定端口(如 443、8388、8443)的 TCP SYN 包。
机制 B:TLS SNI 动态深度包检测(DPI)
如果你使用的协议(如旧版 Shadowsocks 或未伪装的 VMess)在 TLS 握手阶段泄露了未加密的 SNI(Server Name Indication),防火墙检测到异常流量模式后会立即阻断当前 TCP 连接。
机制 C:UDP 端口 QOS 限制与丢包
像 Hysteria 2、TUIC 这样基于 QUIC(UDP)的高速协议,极易在敏感时期遭遇国内运营商(中国电信、联通、移动)的 UDP 端口 Rate Limiting(速率限制)或直接丢弃 UDP 数据包,导致小火箭显示连通但传输速度为 0。
3. 命令行实战排查(macOS Terminal / Linux / iOS Termius)
为了精准判断是本地网络问题、DNS 污染还是节点服务器 IP 被封锁,可以使用以下命令行在 macOS Terminal 或 iOS 终端工具(如 Termius)中进行抓包诊断:
诊断命令一:测试节点服务器 IP 与端口的 TCP 连通性
# 适用系统: macOS Terminal / Linux Shell# 执行目的: 绕过域名解析,直接测试节点服务器 IP 和端口是否被 GFW 阻断# 预期结果: 成功返回 "Connection to <IP> 443 port [tcp/https] succeeded!"# 异常判断: 提示 "Connection refused" 或 "Operation timed out" 说明 IP 或端口被封
nc -z -v -w 5 154.21.32.88 443诊断命令二:检测 TLS SNI 伪装域名与证书握手状态
# 适用系统: macOS / Linux# 执行目的: 验证节点的 TLS 证书是否过期,以及伪装 SNI 域名响应是否正常# 预期结果: 返回 HTTP/1.1 200 OK 或 HTTP/2 200,且包含有效的 SSL 证书链# 异常判断: 返回 "SSL handshake failure" 说明节点的 TLS SNI 配置错误
curl -Iv https://my-disguise-domain.com --resolve my-disguise-domain.com:443:154.21.32.88诊断命令三:利用 MTR 追踪数据包是在哪一级骨干网路由被丢弃
# 适用系统: macOS (需要安装 mtr: brew install mtr)# 执行目的: 追踪数据包出境路径,定位丢包发生在本地路由器、省骨干网还是国际出口# 预期结果: 最终节点 IP 成功回应,丢包率为 0%# 异常判断: 数据包在 `59.43.x.x` (CN2) 或 `202.97.x.x` (163 骨干网) 出口处 100% 丢包
mtr -n -c 10 --tcp -P 443 154.21.32.88六、核心故障四:iOS 系统无线局域网与蜂窝数据权限拦截
1. 现象与隐蔽性
这一故障非常具有隐蔽性:Shadowrocket 界面完全正常,节点延迟测试显示正常(例如 150ms),但拨动开关连接后,页面就是无法加载。
2. 原因:iOS 特有的应用网络权限墙
国行 iOS 系统对每一个新安装的 App 都有“无线局域网与蜂窝网络”的授权拦截。若在首次打开小火箭弹出“允许 Shadowrocket 使用网络吗?”时误点了“拒绝”或“仅无线局域网”,当手机切换到 5G 蜂窝数据时,小火箭就会因为失去网络访问权限而无法建立连接。
# Shadowrocket 权限与网络配置合规校验表 (YAML)ios_network_permission_audit: app_name: "Shadowrocket" bundle_id: "com.liguangming.Shadowrocket" required_permissions: wireless_data: "Cellular_And_WLAN" # 必须选择无线局域网与蜂窝网络 local_network: true # iOS 18 局域网共享所需 vpn_profile_installed: true # 系统 VPN 描述文件已生成 network_state_checks: wifi_connected: true cellular_active: true vpn_status: "Connected" tun_interface: "utun4"3. 彻底恢复 iOS 联网权限的三个步骤
- 打开 iOS
设置-> 向上滑动找到Shadowrocket专属设置页; - 点击
无线局域网与蜂窝数据; - 强制将其勾选为
无线局域网与蜂窝网络(切勿选择“关闭”或“仅无线局域网”); - 如果在该页面下根本找不到“无线局域网与蜂窝数据”这一选项:
- 打开
设置->通用->传输或重置 iPhone-> 点击重置; - 选择
重置网络设置(Reset Network Settings)(此操作会清空记住的 Wi-Fi 密码,但能 100% 恢复损坏的应用网络权限数据库)。
七、客户端与服务器端配置示例:规避路由死锁与正确分流
为避免因配置文件语法错误或规则死循环导致小火箭连不上,下面提供一份合规的 Shadowrocket 标准 .conf 配置文件与 JSON 分流逻辑示例。
1. 标准 Shadowrocket 配置文件 (.conf)
[General]# 旁路系统 DNS,开启域名嗅探与规则精准分流bypass-system = trueskip-proxy = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, localhost, *.localtun-included-routes = default
# DNS 服务器配置 (优先使用国内快速 DNS 避免死锁)dns-server = 119.29.29.29, 223.5.5.5, 1.1.1.1fallback-dns-server = 8.8.8.8
# 开启 IPv6 支持与 UDP 转发ipv6 = falseprefer-ipv6 = false
[Rule]# 1. 本地局域网与国内直连域名走 DIRECTGEOIP,CN,DIRECTFINAL,PROXY
[Host]# 本地 DNS 静态映射,防止节点域名解析死锁node1.myairport.com = 154.21.32.882. JSON 结构化节点与分流逻辑示例
{ "version": 2, "remarks": "Shadowrocket Standard Fail-Safe Profile", "routing": { "domainStrategy": "AsIs", "mode": "config", "rules": [ { "type": "field", "outboundTag": "direct", "ip": ["geojson:cn", "private"] }, { "type": "field", "outboundTag": "proxy", "network": "tcp,udp" } ] }, "dns": { "servers": [ "119.29.29.29", { "address": "8.8.8.8", "port": 53, "domains": ["geosite:geolocation-!cn"] } ] }}八、故障现象、原因及排查方案对比表
| 故障现象描述 | 底层根源定位 | 影响范围 | 优先排查方案 | 验证恢复标志 |
|---|---|---|---|---|
| 无法添加 VPN 配置 | Keychain 锁死或 nehelper 崩溃 | 全局(开关打不开) | 删除现有 VPN 描述文件并强制重启 iPhone | 开关成功打开并弹出 Face ID 授权 |
| 连上后全网断网/Wi-Fi无响应 | DNS 解析死锁或全局代理误设 | 全局(无网络响应) | 将全局路由改回“配置”,重置 DNS 为系统 DNS | 微信与 Safari 恢复正常网页加载 |
| 节点全部显示 Timeout -1 | 节点 IP/端口被封或订阅过期 | 海外代理流量 | 更新订阅链接,或联系机场更换可用节点 | 节点延迟恢复为数字(如 160ms) |
| 移动 5G 能用,Wi-Fi 连不上 | Wi-Fi 开启了 IPv6 或 DNS 污染 | 仅特定 Wi-Fi | 在小火箭设置中关闭 IPv6 开关 | Wi-Fi 环境下正常科学上网 |
| 国内 App 极慢或打不开 | 规则配置错误将国内流量送代理 | 国内应用流量 | 更新 GeoLite2 数据库并勾选 GEOIP, CN, DIRECT | 国内应用秒开,IP 识别为中国 |
| iOS 18 无法共享局域网 | 本地网络隐私权限未授权 | 局域网其他设备 | 在 隐私与安全性 -> 本地网络 开启 Shadowrocket | 其他设备通过 Socks5 成功连通 |
九、15 个真实排查案例与深度解决方案
案例1:iOS 18 系统升级后,点击小火箭连接开关无响应,提示“添加 VPN 配置失败”
问题现象: 用户将 iPhone 15 Pro 升级至 iOS 18 正式版后,打开 Shadowrocket 拨动开关,系统弹出提示:“添加 VPN 配置失败”。重复点击无任何效果,解锁密码验证后开关依然弹回关闭状态。
环境信息:
- 设备:iPhone 15 Pro (iOS 18.0)
- 软件版本:Shadowrocket 2.2.35
- 背景:此前设备上安装过多个测试版 VPN 软件
初步判断:
iOS 18 对 NetworkExtension 安全凭证的数据库结构进行了升级,历史废弃的 VPN 配置文件在 Keychain 中产生了权限死锁。
排查路径:
- 第一步:进入
设置 -> 通用 -> VPN 与设备管理 -> VPN,发现列表中积累了 5 个不同代理软件残留的描述文件。 - 第二步:尝试逐一删除,其中一个小火箭描述文件提示“无法删除”。
关键证据:
nehelper 进程死锁导致写入与删除凭证均被拒。
执行步骤:
- 执行 iPhone 强制重启(快速按音量加、音量减,长按电源键直至出现 Logo);
- 重启后进入
设置 -> 通用 -> VPN 与设备管理 -> VPN,成功删除所有历史 VPN 描述文件; - 打开 Shadowrocket,重新拨动开关,系统顺利跳出“添加 VPN 配置”授权框;
- 完成 Face ID 验证。
结果验证: VPN 描述文件成功重新写入,小火箭恢复正常连接。
复盘: 系统大版本升级后,清理残余 VPN 描述文件并强制重启是解决 Keychain 死锁最有效的标准动作。
案例2:连接小火箭后 Wi-Fi 自动断开,切换为 5G 蜂窝数据后依然全网断网
问题现象: 用户在 Wi-Fi 环境下开启小火箭,几秒后 Wi-Fi 图标消失,手机自动降级为 5G,但此时无论是 Safari 还是微信均无法收发数据。
环境信息:
- 设备:iPhone 14 (iOS 17.5)
- 网络:家用宽带(开启了 IPv6)与 中国移动 5G
初步判断:
小火箭配置中开启了 IPv6 优先,但当前节点服务器不支持 IPv6 转发,导致 utun 网卡中的 IPv6 路由表无限丢包。
排查路径:
- 第一步:关闭小火箭,Wi-Fi 和 5G 恢复正常。
- 第二步:查看小火箭
设置 -> DNS,发现IPv6开关处于开启状态。
执行步骤:
- 打开小火箭
设置->全局设置; - 将
IPv6(IPv6 路由)开关关闭; - 将
优先 IPv6开关关闭; - 重新开启小火箭。
结果验证: 切换后 Wi-Fi 不再自动断开,5G 蜂窝网络下代理与直连均秒开。
复盘: 国内移动运营商与部分家用路由器对 IPv6 支持不够完善,在小火箭中强制关闭 IPv6 可大幅提升稳定性。
案例3:打开小火箭网页能翻墙,但微信、淘宝、美团等国内 App 全部无网络响应
问题现象: 开启小火箭后,访问 Google、YouTube 极其顺畅,但微信图片加载不出、美团打不开、淘宝显示“网络开小差”。
环境信息:
- 软件模式:小火箭首页
全局路由设为代理(Proxy)
初步判断: 用户误将全局路由设为了全代理模式,且所选节点屏蔽了中国大陆特定 IP 或连接延迟过高。
执行步骤:
- 打开小火箭首页;
- 将
全局路由从代理修改为配置(Config); - 点击
设置->GeoLite2-> 点击立即更新; - 重新测试网络。
结果验证:
国内 App 流量自动走 DIRECT 直连,瞬间恢复秒开;海外流量走 PROXY 代理,翻墙与国内生活应用两不误。
复盘: 日常使用切勿开启“全局代理”模式,始终保持“配置模式”是实现智能分流的关键。
案例4:节点在小火箭内 ICMP Ping 延迟正常(200ms),但在浏览器中访问网页提示超时 -1
问题现象:
在小火箭测试节点延迟显示 180ms - 220ms,但开启连接后,所有网页均提示 Timeout -1 或 ERR_TIMED_OUT。
环境信息:
- 协议类型:旧版 Shadowsocks / VMess (非 TLS)
初步判断: 小火箭内置的“延迟测试”默认使用的是 ICMP Ping 或简单的 TCP 端口握手,仅能证明服务器 IP 未被完全封死。但节点的 HTTP/TLS 协议层流量已遭遇 GFW 的深度包检测(DPI)拦截。
执行步骤:
- 打开小火箭
设置->测试方法; - 将测试方法从
ICMP修改为CONNECT或HTTP; - 返回首页重新点击连通性测试。
结果验证:
重新测试后,原本显示 200ms 的节点真实暴露为 Timeout -1。用户更新订阅切换到采用 Hysteria 2 / VLESS-Reality 协议的新节点后,网页成功恢复访问。
复盘:
ICMP Ping 延迟不等于真实网页可达性,将测试方法改为 CONNECT 才能反映真实的代理连通状态。
案例5:开启“允许局域网”后,同一 Wi-Fi 下的 Windows 电脑设置 Socks5 代理打不开网页
问题现象:
用户在 iPhone 上开启小火箭的“允许局域网(Allow LAN)”功能,查看显示端口为 1082,IP 为 192.168.1.105。在 Windows 电脑代理软件中填入该 IP 和端口后,电脑无法上网。
环境信息:
- iOS 系统:iOS 18
- 局域网环境:同一台 Wi-Fi 路由器
初步判断: iOS 18 的“本地网络隐私”(Local Network Privacy)阻止了小火箭监听局域网入站请求。
执行步骤:
- 打开 iOS
设置->隐私与安全性->本地网络; - 找到
Shadowrocket,将其开关开启; - 确保 Windows 电脑与 iPhone 连接的是同一个 Wi-Fi(而非一个是 2.4G 一个是 5G 独立隔离网络)。
结果验证: 开启本地网络权限后,Windows 电脑顺利通过 iPhone 的小火箭代理上网。
案例6:使用 Hysteria 2 协议节点时连接频繁断开,UDP 端口被运营商 QOS 封锁
问题现象:
用户使用采用 Hysteria 2 协议的新节点,连接初期速度极快(跑满百兆),但几分钟后网络突然中断,节点延迟显示 -1,过一段时间又自动恢复。
环境信息:
- 运营商:中国移动 5G
- 协议:Hysteria 2 (UDP)
初步判断: 移动运营商对大流量 UDP 连接触发了单连接 QOS 限速与临时端口封锁。
执行步骤:
- 打开小火箭 -> 点击该 Hysteria 2 节点右侧的
(i)编辑选项; - 找到
Hop Port(跳跃端口)或BBR拥塞控制参数; - 在小火箭
设置中开启UDP 伪装或降低最大传输速率(Max Speed limit); - 若运营商阻断严重,在小火箭配置中将该节点协议切回基于 TCP 的 VLESS-Reality 或 Trojan。
结果验证: 降低连接突发峰值或切回 TCP 协议后,连接恢复长期稳定不掉线。
案例7:小火箭订阅链接更新提示“Fetch Failed”且已有节点全部超时-1
问题现象:
用户点击小火箭右上角刷新订阅,弹窗报错 Fetch Failed,已有节点全部打不开。
环境信息:
- 订阅域名:使用旧版未加密 HTTP 域名
执行步骤:
- 复制机场提供的最新 HTTPS 订阅链接;
- 先开启手机的蜂窝网络,或手动添加一个合规的备用单节点并连接;
- 再次在小火箭首页向左滑动订阅分组,点击
更新。
结果验证: 通过备用节点顺利刷新出最新可用节点列表。
案例8:连接小火箭后 Safari 访问 HTTPS 网站提示“您的连接不是私密连接/证书无效”
问题现象: 开启小火箭解封 HTTPS 网站时,Safari 频繁跳出红色警告“您的连接不是私密连接”。
执行步骤:
- 打开小火箭
配置-> 点击当前配置文件 -> 选择编辑配置; - 查看是否误开启了
HTTPS 解密 (MITM)且未安装小火箭 CA 证书; - 若不需要解密 HTTPS 流量,直接关闭
HTTPS 解密开关。
结果验证: 关闭 MITM 后,HTTPS 证书警告消失,网页正常打开。
案例9:多款 VPN 客户端(Clash、Quantumult X、Shadowrocket)同时安装导致系统 VPN 描述文件冲突
问题现象: 手机上同时安装了小火箭与 Quantumult X,开启小火箭时总是自动切回到 Quantumult X 的连接。
执行步骤:
- 进入
设置 -> 通用 -> VPN 与设备管理 -> VPN; - 删除其他不用的 VPN 配置文件;
- 确保每次只运行一款代理客户端。
结果验证:
冲突解除,小火箭独占 utun 隧道。
案例10:使用了“全局代理(Proxy)”模式导致 DNS 循环查询,产生无限死锁
执行步骤:
在小火箭 设置 -> DNS 中将 远程 DNS 恢复为默认,并将首页 全局路由 改为 配置。
案例11:双卡 iPhone 切换主副卡流量后小火箭连接断开且无法自动重连
执行步骤:
在小火箭 设置 -> 按需连接(On-Demand)中开启 按需连接,确保网络切换时系统自动重启 VPN 隧道。
案例12:使用了未加密的 HTTP 订阅链接导致被运营商拦截重定向
执行步骤:
联系节点服务商获取以 https:// 开头的加密订阅链接。
案例13:iOS 开启“低电量模式”后小火箭后台断连,锁屏后无法接收 Telegram 消息
执行步骤:
打开 iOS 设置 -> 电池 -> 关闭 低电量模式;并在小火箭 设置 中开启 后台持续运行。
案例14:小火箭中启用了某些第三方恶意模块(Module)导致所有流量被 REJECT 重定向
执行步骤:
打开小火箭 模块(Module)页面,禁用或删除所有未知的第三方 URL 模块。
案例15:使用了带 CDN 节点(Cloudflare)但缺少正确的 Host / SNI 伪装域名导致握手失败
执行步骤:
编辑节点参数,在 Peer Name / TLS SNI 与 Host 一栏补全节点对应的真实域名。
案例16:使用带有端口跳跃(Port Hopping)的 Hysteria 2 节点时,开启小火箭后电池发热剧烈且频繁断连
问题现象: 用户导入了 Hysteria 2 协议节点并开启连接。在 5G 移动网络下使用时,iPhone 15 迅速发热烫手,小火箭状态栏标志频繁闪烁消失,网络极度不稳定。
环境信息:
- 设备:iPhone 15 (iOS 17.4)
- 协议:Hysteria 2 (开启了
Port Hopping端口跳跃40000:65000) - 运营商:中国联通 5G
初步判断:
联通 5G 基站对大范围 UDP 端口跳跃发起了严格的抓包审计,频繁的端口切换导致 iOS NEPacketTunnelProvider 线程不断重新创建内核 Socket,引发 CPU 占用率暴增与热限频。
排查路径:
- 第一步:打开小火箭
设置 -> 诊断 -> CPU 与内存占用,发现 Shadowrocket 进程 CPU 占用率高达 180%(双核跑满)。 - 第二步:编辑节点参数,查看端口设置。
执行步骤:
- 打开 Shadowrocket,点击该 Hysteria 2 节点右侧的
(i)编辑图标; - 将
Port(端口)从跳跃区间40000:65000修改为服务器固定的单端口(如443或8443); - 将
QUIC Congestion Control(拥塞控制)从BBR调整为BBRv2或Cubic; - 保存配置并重新连接。
结果验证: 修改为固定端口后,CPU 占用率立刻降至 2% 以下,手机发热显著缓解,网络连接恢复长期稳定。
复盘: 端口跳跃(Port Hopping)虽然能突破部分区域的 UDP 封锁,但在移动蜂窝基站下会引发极高的 Socket 重新协商开销。遭遇发热断连时,应优先锁定单端口使用。
案例17:小火箭导入某些第三方规则订阅后,所有海外 App 正常,但访问国内网站提示“DNS 污染 / 证书不受信任”
问题现象: 用户导入了一份网上的“全能防广告规则集”配置文件。开启小火箭后,YouTube 广告被成功拦截,但在 Safari 打开百度、淘宝或知乎时,页面频繁跳出警告:“证书不受信任” 或 “无法完成安全连接”。
环境信息:
- 设备:iPhone 13 (iOS 16.7)
- 配置修改:开启了配置文件中的
MITM(中间人解密)与URL Rewrite模块
初步判断:
第三方规则集中误包含了对国内域名(如 *.baidu.com、*.taobao.com)的 MITM 强制解密规则。由于小火箭生成的本地 CA 根证书未被 iOS 系统 受信任根证书颁发机构 信任,系统依法拦截了被解密的 HTTPS 数据包。
执行步骤:
- 打开小火箭
配置页面 -> 点击当前打勾的配置文件右侧(i); - 选择
HTTPS 解密(MITM); - 在
主机名(Hostnames)列表中,将误加入的国内域名(如*.baidu.com)删除,或直接将HTTPS 解密开关关闭; - 重新开启小火箭。
结果验证: 关闭不当的 MITM 解密后,Safari 打开国内所有 HTTPS 网站恢复正常,不再跳出任何证书错误警告。
复盘: 切勿随意开启全局 HTTPS 解密(MITM)。HTTPS 解密仅用于特定广告重写,若未正确安装并信任 CA 证书,解密国内流量会导致安全机制拦截。
案例18:使用双卡 iPhone 16 Pro 时,切换主副卡蜂窝数据后小火箭图标消失,所有网络请求卡死
问题现象:
用户在 iPhone 16 Pro 上同时使用中国移动与中国电信双卡。当在控制中心将“蜂窝数据”从主卡切换到副卡时,顶部状态栏的小火箭 VPN 图标消失,重新打开小火箭连通性测试全部报错。
环境信息:
- 设备:iPhone 16 Pro (iOS 18.1 Dual SIM)
- 网络变化:主卡(移动 5G)-> 副卡(电信 5G)
初步判断:
iOS 系统在切换默认数据主卡时,硬件网卡接口从 pdp_ip0 变更为 pdp_ip1,小火箭的 utun 隧道绑定的物理出口 IP 发生突变,底层 Socket 遭遇静默断开。
执行步骤:
- 打开小火箭
设置-> 点击按需连接(On-Demand); - 开启
按需连接开关; - 在
网络变动策略(On Network Change)中,设置为重新连接(Reconnect); - 返回小火箭首页重新连接一次。
结果验证: 配置按需重连后,无论如何切换双卡蜂窝数据,iOS 系统均会在网络切换完成后的 0.5 秒内自动重启小火箭 VPN 隧道,网络无缝衔接。
案例19:开启小火箭后访问 App Store 显示“无法连接到 App Store”,且 iOS 系统软件更新报错
问题现象: 开启小火箭后,打不开 iOS 系统自带的 App Store 商店,也无法检查 iOS 系统软件更新,提示“无法检查更新”。但打开 Safari 翻墙浏览网页一切正常。
环境信息:
- 设备:iPhone 12 (iOS 17.1)
- 路由规则:自定义规则集
初步判断:
自定义规则集中误将苹果官方 App Store 与系统更新服务器(appldnld.apple.com、mesu.apple.com)归类为了 REJECT 或强制走低速海外代理节点。
执行步骤:
- 打开小火箭
配置-> 点击当前配置文件 -> 选择编辑配置; - 点击
规则-> 在顶部搜索框搜索apple; - 将包含
apple.com、mzstatic.com的规则动作修改为DIRECT(直连); - 保存配置并生效。
结果验证: 修改规则后,App Store 首页秒开,iOS 系统更新正常检查到最新固件。
案例20:小火箭连通性测试全部正常,但开启后 Telegram 界面一直显示“Connecting…”无法收发消息
问题现象:
小火箭节点测试延迟均为 150ms,Safari 访问 YouTube 极快,但 Telegram 客户端顶部持续显示 Connecting... 或 Updating...,消息无法发送。
环境信息:
- 应用:Telegram iOS 客户端
- 小火箭规则:未包含 Telegram 专用 CIDR 规则
初步判断: Telegram 客户端默认使用基于 UDP 的 MTProto 协议直接连接其全球 DC(数据中心)机房 IP 地址。若小火箭配置中屏蔽了 UDP 流量或未针对 Telegram IP 段配置代理,Telegram 将不断重试直连导致超时。
执行步骤:
- 打开小火箭
配置-> 点击配置文件右侧(i)-> 选择规则; - 点击右上角
+添加两条核心规则:
GEOIP, TELEGRAM, PROXYIP-CIDR, 91.108.56.0/22, PROXY
- 在小火箭
设置->UDP中,确保转发 UDP已开启; - 保存并重新开启小火箭。
结果验证:
添加规则并开启 UDP 转发后,重新打开 Telegram,界面瞬间显示 Connected,所有群组消息恢复秒收发。
十、常见问题 FAQ
FAQ 1:小火箭顶部一直显示 VPN 标志,但节点延迟测试全是 Timeout -1 怎么办?
解答:这说明本地 VPN 隧道已建立,但数据发往海外节点时被阻断。请按以下顺序排查:1. 检查订阅是否过期;2. 在小火箭首页向左滑动订阅更新节点;3. 检查全局路由是否错设为代理;4. 切换为蜂窝网络重试。
FAQ 2:为什么小火箭开启后,微信经常接收消息延迟十几秒?
解答:这是因为微信的推送服务走的是 APNs 或自建 TCP 长连接。若全局路由设为了代理,微信长连接就会经过海外节点中转。请将全局路由调整为 配置 模式,并更新 GeoLite2 数据库,使国内域名和 IP 走 DIRECT 直连。
FAQ 3:系统提示“无法添加 VPN 配置”,重置网络设置会丢失手机照片或微信记录吗?
解答:不会。iOS 的“重置网络设置”仅会清空保存的 Wi-Fi 密码、蓝牙配对记录和应用网络权限数据库,绝不会删除你的照片、联系人或微信聊天记录。
FAQ 4:小火箭支持开启双重 VPN 代理或链式代理(Chain Proxy)吗?
解答:支持。小火箭可以通过“脚本”或“节点组”实现链式代理,但如果配置不当会导致死循环。新手建议使用标准的单节点分流配置。
FAQ 5:为什么在 Wi-Fi 下小火箭用得好好的,一出门切到 5G 移动网络就断网?
解答:请前往 iOS 设置 -> 无线局域网 -> 使用与无线局域网与蜂窝网络的 App -> Shadowrocket,确认勾选的是“无线局域网与蜂窝网络”。若仅勾选了“仅无线局域网”,切到蜂窝网络时小火箭就会被剥夺联网权限导致断网。
FAQ 6:小火箭首页的“按需连接(On-Demand)”需要开启吗?
解答:建议开启。开启后,当 iOS 系统网络在 Wi-Fi 和蜂窝数据之间切换,或者息屏休眠重连时,iOS 会自动维持小火箭 VPN 隧道的常驻,防止锁屏后断连。
FAQ 7:连接小火箭后 Safari 提示“DNS 查找失败”或 ERR_NAME_NOT_RESOLVED 怎么解决?
解答:进入小火箭 设置 -> DNS,点击右上角 重置 恢复默认配置。如果依然报错,可在并发 DNS 中手动添加 119.29.29.29 和 223.5.5.5。
FAQ 8:使用 Hysteria 2 / TUIC 等 UDP 协议节点特别耗电是什么原因?
解答:UDP 协议在高丢包环境下会触发频繁的发包重传,导致 CPU 无法进入深睡眠。建议在良好 Wi-Fi 环境下使用 UDP 协议,移动蜂窝数据下使用 VLESS-Reality 等基于 TCP 的协议。
FAQ 9:小火箭内置的“UDP 转发”开关应该开启还是关闭?
解答:如果需要使用 Telegram 语音通话、国外游戏或 WhatsApp,必须开启 UDP 转发;如果仅用于网页浏览和看视频,建议关闭 UDP 转发以节省电量。
FAQ 10:提示“无法验证 App 信任状态”是连接失败导致的吗?
解答:不是。这是因为你安装的小火箭使用了非官方 App Store 渠道的企业证书签名,且该证书已被苹果撤销。唯一正规解法是使用美区 Apple ID 从 App Store 下载正版小火箭。
FAQ 11:小火箭可以自动切换最快延迟的节点吗?
解答:可以。在小火箭首页创建一个 Auto Select(自动选择)节点组,并将类型设为 url-test,设置测试间隔为 300 秒即可。
FAQ 12:为什么切换节点后网页打不开,重启小火箭又好了?
解答:因为 iOS 系统和浏览器缓存了上一个节点的 Socket 连接。切换节点后,在小火箭首页点击一下“重置 DNS”或重新拨动开关即可清空 Socket 缓存。
FAQ 13:小火箭配置中的“UDP Reject”规则是干什么用的?
解答:该规则用于强制拒绝 YouTube 等网站的 QUIC(UDP)请求,让其回退到稳定的 HTTPS(TCP)传输,防止因运营商 QOS 封锁 UDP 导致视频卡顿。
FAQ 14:如果在 iPad 上使用小火箭,排查步骤和 iPhone 完全一样吗?
解答:完全一样。iPadOS 的网络扩展与 NetworkExtension 架构与 iOS 完全一致。
FAQ 15:小火箭可以拦截网页广告吗?需要开启什么配置?
解答:可以。在小火箭 配置文件 中导入含有广告拦截规则的 Rule-Set(如 EasyList 或 Privacy 规则),即可自动将广告域名定向到 REJECT。
FAQ 16:开启小火箭后开热点给笔记本电脑,笔记本能直接翻墙吗?
解答:默认不能。必须在小火箭 设置 中开启 允许局域网,并在笔记本上配置对应的 Socks5 代理 IP 和端口;或在小火箭中开启 TUN 共享。
FAQ 17:节点提示“Invalid Certificate”或者“证书不匹配”怎么解决?
解答:说明节点服务器的 TLS 证书配置不符合标准,或者节点的域名与 SNI 不匹配。需联系节点提供商修复证书。
FAQ 18:小火箭在后台会自动被 iOS 系统杀掉进程吗?
解答:一般不会。小火箭作为 VPN 隧道运行在最高的系统优先级,除非设备内存极度紧张或开启了“低电量模式”,系统才会暂停其后台线程。
FAQ 19:升级到 iOS 18 开发者版本后小火箭闪退连不上怎么办?
解答:请打开 App Store 检查并更新 Shadowrocket 到最新版本,以适配最新 iOS 内核的 API 变动。
FAQ 20:为什么节点测试延迟很低,但下载速度只有几百 KB/s?
解答:ICMP 测试延迟只代表响应速度,下载速度取决于节点服务器的带宽上限、骨干网拥塞状况以及运营商的限速策略。
十一、重新总结与终极排查指南
面对 Shadowrocket(小火箭)连接不上、VPN 配置失败或 Wi-Fi 无响应的问题,请谨记最核心的四步黄金排查顺序:
- 先查权限与描述文件:如果连接开关打不开,第一时间去
VPN 与设备管理删除所有旧 VPN 描述文件并重启 iPhone; - 后查路由与 DNS 策略:如果连上后全网断网,90% 是因为路由误设为了“全局代理”或 DNS 发生死锁。把路由改回
配置(Config),重置 DNS 即可解决; - 再验节点真实连通性:如果节点全部 Timeout -1,不要怀疑手机,在设置中把测试方法改为
CONNECT,及时更新订阅或更换节点; - 终极恢复手段:若所有设置均无异常但依然无法联网,执行
设置 -> 通用 -> 传输或重置 iPhone -> 重置网络设置。
通过本文的系统化排查,你可以精准定位并解决小火箭在 iOS 设备上的任何连接故障,恢复高速、稳定的网络体验。