sing-box 教程 iOS:从安装、订阅导入到连接验证
简答:iPhone 或 iPad 使用 sing-box,先确认 iOS 15.0 以上并安装 sing-box MT,再导入 sing-box 配置、授权 VPN、选择节点并用网页访问和日志验证;Clash 或 Base64 订阅不能直接当作 sing-box 配置使用。
定义:sing-box 是一套网络代理核心及图形客户端,iOS 端通过 sing-box for Apple 管理本地或远程配置,并使用 iOS 的 NetworkExtension 建立 TUN 连接。
先确认该安装哪个 iOS 客户端
本站是第三方使用指南,不代表 sing-box 项目官方。iPhone 和 iPad 用户优先看官方 Apple 平台客户端说明:SFI 通常指 iOS 客户端,SFM 指 macOS 客户端,SFT 指 Apple tvOS 客户端。官方文档当前将 iOS 商店客户端称为 sing-box MT;旧的 sing-box VT 与新应用不是同一个商店应用,旧 VT 用户需要重新安装新应用。相关名称和下载渠道以sing-box for Apple platforms为准。
| 你看到的名称 | 适用设备 | 新手应如何处理 |
|---|---|---|
| sing-box MT | 普通 iPhone、iPad | 优先从 App Store 查找并安装 |
| SFI | iOS 客户端的项目简称 | 看到 SFI 时,可按 iOS 版本理解 |
| sing-box VT | 旧商店客户端名称 | 不要把旧 VT 当作当前 MT 使用 |
| SFI 越狱包 | 越狱 iOS | 仅适用于对应越狱环境,不适合普通设备 |
官方要求 iOS 15.0 或更高版本,并要求使用中国大陆区以外的 Apple 账户。App Store 搜不到时,先检查系统版本和 Apple 账户地区,再确认是否能看到官方页面;不要仅凭搜索结果中的相似名称判断应用归属。普通设备不需要下载越狱用的 .deb 文件。
截至 2026-10-24,Releases 标记为 Latest 的是 1.14.3;alpha、beta 或 testing 属于预发布渠道,普通 iOS 用户优先按 App Store 或 TestFlight 页面显示选择。
五步完成安装、导入和首次连接
- 准备正确的配置。向你的服务提供方确认是否提供 sing-box JSON 配置地址或 JSON 文件。官方图形客户端的 Profile 分为 Local、iCloud 和 Remote;Remote 使用 URL 作为更新来源,并支持自动更新。只有 Clash YAML、通用 Base64、单节点分享链接时,不能直接把它们当作 sing-box JSON 配置粘贴到 Remote 的 URL 栏,应先取得对应格式的 sing-box 配置,或使用支持该格式的其他客户端。
- 安装并打开应用。在 App Store 或官方列出的 TestFlight 渠道获取 sing-box MT。首次运行时,系统可能弹出“允许添加 VPN 配置”的提示,选择允许并完成设备密码、Face ID 或 Touch ID 验证。这个权限只代表系统扩展可以建立 VPN,不等于节点已经连通。
- 导入 Remote 配置。进入 Profiles,选择添加配置并选 Remote,填写服务提供方给出的完整 HTTPS 订阅地址和配置名称,保存后等待内容加载。若链接需要账号密码,按提供方给出的认证方式填写;不要把网页首页地址、登录页面地址或带有失效提示的链接当订阅地址。
- 导入 Local JSON。如果拿到的是本地 JSON 文件,使用系统“分享”菜单或文件导入功能交给 sing-box,再在 Profiles 中确认该配置出现。Local 配置需要内容本身符合 sing-box 配置格式;文件扩展名叫
.json不代表内容一定可用。 - 启动并选节点。先选中刚导入的 Profile,再打开 Enabled 或启动开关,进入 Dashboard 查看运行状态;如果配置包含 Selector 或 URLTest 等出站组,进入 Groups 选择节点或让配置执行测速选择。官方通用客户端文档说明,Dashboard 可显示运行状态,配置包含组出站时可提供组选择。
最快判断:完成 VPN 授权后,打开一个你平时能访问、且页面会显示网络出口信息的测试页面;同时回到 Dashboard 或连接日志,看是否出现实际连接和命中的出站策略。只看到 iOS 顶部 VPN 图标,不能单独证明网页流量已经按预期经过节点。
Rule、Global、Direct 怎么选
Rule、Global、Direct 通常不是每个配置都固定存在的系统按钮,而是配置文件提供的模式名称。官方客户端只有在配置包含至少两个 clash_mode 值时,才应提供 Mode 选择器,因此不同订阅的按钮名称、默认值和行为可能不同。
| 模式 | 通常含义 | 适合场景 | 误用表现 |
|---|---|---|---|
| Rule | 按配置中的规则决定直连或代理 | 日常使用,兼顾本地服务和指定网络流量 | 规则质量不足时,某些域名可能走错出口 |
| Global | 把可匹配的流量统一交给代理出口 | 排查规则是否导致访问异常 | 本地应用或局域网访问可能受到影响 |
| Direct | 尽量直接连接,不经代理出站 | 确认问题是否来自节点、规则或 DNS | 需要代理的目标会无法连接或表现为超时 |
推荐先用 Rule;如果某个目标打不开,临时切到 Global 做对比;再切回 Direct 判断本地网络是否正常。不要把 Global 测试结果当作所有应用都必须使用的长期设置,最终应以配置提供的规则和你的实际需求为准。
如果页面打不开,先按这个顺序排查:一是 Profile 是否真的启用;二是 Groups 是否选中了有效节点;三是日志里是否有连接请求和失败原因;四是切换 Wi-Fi 与蜂窝网络;五是暂时关闭其他 VPN、网络过滤或 DNS 类应用,避免多个 NetworkExtension 同时工作;六是确认订阅没有过期且返回的不是 HTML 登录页。
导入失败、连不上和 DNS 异常的排查清单
- 提示配置格式错误:检查 Remote URL 返回的内容是不是 sing-box JSON;如果浏览器打开后看到登录页、验证码页、HTML 错误页或空白内容,说明拿到的不是可直接解析的配置地址。让提供方重新给出 sing-box 格式地址。
- 保存后没有节点:检查配置是否包含出站和可选择的组。只有一个空配置、缺少出站,或配置引用了不存在的标签时,Groups 可能没有可选项目。
- 启动后马上停止:先查看服务日志中的第一条错误,重点看 JSON 解析、DNS、TLS、认证和出站连接错误;不要只依据“VPN 已连接”判断成功。官方 Apple 客户端功能页说明,崩溃日志可从 Settings → View Service Log 查看。
- 能连上但网页打不开:先切换到 Global 对比,再查看日志中是否命中对应策略;若 Global 正常而 Rule 不正常,优先检查规则和 DNS 分流。若两者都失败,再更换节点、网络或检查订阅是否过期。
- 只有部分域名打不开:测试同一网络下的 IP 访问、其他域名和不同网络。若日志显示 DNS 请求失败或解析结果异常,检查配置中的 DNS 服务器、DNS 规则和是否存在其他 DNS 应用干扰。
- 自动更新失败:Remote Profile 需要能访问更新 URL;先在 Safari 中检查该地址是否返回配置内容,再回到 Profile 手动刷新。更新失败时不要删除当前可用配置,可先保留旧配置作为回退。
完成排查后,至少同时满足三个条件再认为连接正常:实际网页能打开;日志中出现对应请求并命中预期策略;切换节点或模式后,访问结果会随配置变化。若只满足其中一项,仍可能是本地缓存、规则直连或其他 VPN 造成的假象。
常见问题
iOS 搜不到 sing-box MT,是不是应用不存在?
不一定。官方资料列出的要求包括 iOS 15.0 以上和中国大陆区以外的 Apple 账户。先检查 Apple 账户地区、系统版本和 App Store 登录状态,再以官方 Apple 平台页面列出的渠道为准。
Clash 订阅能直接导入 sing-box iOS 吗?
不能把 Clash YAML 或通用 Base64 内容直接当作 sing-box JSON 配置使用。Remote Profile 需要的是远程 sing-box 配置地址;如果服务提供方同时提供 sing-box 格式,应优先使用该地址,否则需要转换配置或改用支持原格式的客户端。
导入配置后出现 VPN 图标,为什么还是打不开网页?
VPN 图标只说明系统 VPN 配置已启用,不代表节点、规则和 DNS 都正常。进入 Dashboard 看运行状态和日志,再检查 Groups 的节点选择,并用实际网页访问结果验证。
应该一直使用 Rule、Global 还是 Direct?
一般先使用 Rule。Global 适合临时排查规则问题,Direct 适合确认本地直连是否正常。具体按钮是否存在、名称如何显示,取决于导入配置是否提供对应的 clash_mode。
iPhone 和 iPad 的操作有区别吗?
核心流程基本相同:安装客户端、导入 Profile、授权 VPN、选择配置和节点、查看日志。界面布局可能因屏幕尺寸和客户端版本不同而变化,应以设备实际显示为准。
常见问题
iOS 搜不到 sing-box MT,是不是应用不存在?
不一定。先检查 iOS 15.0 以上、Apple 账户地区和 App Store 登录状态,再以官方 Apple 平台页面列出的渠道为准。
Clash 订阅能直接导入 sing-box iOS 吗?
不能把 Clash YAML 或通用 Base64 内容直接当作 sing-box JSON 配置使用,应取得对应格式的 sing-box 配置或改用兼容原格式的客户端。
导入配置后有 VPN 图标,为什么网页仍打不开?
VPN 图标只表示系统 VPN 配置已启用。还要检查 Profile、节点组、日志中的策略命中,以及实际网页访问结果。
Rule、Global、Direct 应该怎么选?
日常优先 Rule;Global 用于临时排查规则问题;Direct 用于确认本地直连是否正常,具体选项取决于配置文件。