IDCNLink - 全球网络加速服务商 - 机场

sing-box配置文件怎么导入?先分清 JSON、订阅 URL 和节点链接

更新于 2026-11-04 · idcnlink.online

简答:sing-box 配置导入先看内容类型:本地 `.json` 文件选 Local,远程订阅地址选 Remote,`vless://`、`trojan://` 等单节点链接不要直接改名成 JSON。导入后还要选中 Profile、启动服务、授权 VPN 或 TUN,并确认实际产生连接。本文按官方 sing-box 图形客户端的通用逻辑说明,菜单名称以当前版本为准。

定义:sing-box 配置导入,是把本地 JSON 配置或远程配置 URL 添加为 Profile,再启动 sing-box 服务并验证节点、路由和 DNS 是否正常工作的过程。

先用三步判断导入方式

第一步:识别输入内容。文件是完整 sing-box JSON 时走 Local;拿到以 https:// 开头的远程配置地址时走 Remote;拿到 vless://、trojan://、ss:// 等分享链接时,先确认当前客户端是否提供单节点或分享链接导入入口。

第二步:选择对应 Profile 类型。sing-box 官方图形客户端将配置抽象为 Local、iCloud 和 Remote Profile。Local 表示本地配置,Remote 以 URL 作为更新来源,iCloud 主要用于 iOS 和 macOS 的云端配置。官方 Profile 说明

第三步:导入后验证。确认 Profile 出现在列表中并被选中,再启动服务;移动端还要确认 VPN 权限,桌面端则要确认系统代理或 TUN 状态。只看到文件名或 URL 被保存,不代表配置已经启动。

sing-box 配置类型速查表
手里的内容应选方式成功标志失败时先查什么
完整 `.json` 文件LocalProfile 能打开且配置可解析文件是否为完整 JSON,是否混入注释或错误逗号
远程订阅或配置 URLRemote客户端能更新并显示配置内容URL 是否完整,返回内容是否为配置而非错误页面
vless:// 等单节点链接分享链接或添加节点入口节点或出站出现在客户端列表当前客户端是否支持该链接格式
Clash YAML、压缩包或网页不能直接按 JSON 导入需先取得兼容的 sing-box 配置确认文件格式和生成来源

导入前检查本地 JSON

sing-box 官方配置格式使用 JSON。官方文档列出的配置结构包含 log、dns、inbounds、outbounds、route 等字段,但这些是配置结构中的字段示例,不代表每个文件都必须全部存在;实际内容取决于用途、客户端和核心版本。官方配置文件说明

  1. 用文本编辑器打开文件,确认首尾是一个完整 JSON 对象。
  2. 检查引号、括号和逗号,不要混入全角标点、网页说明文字或多余注释。
  3. 不要把单个节点对象、节点列表或 Clash YAML 直接改名为 .json。
  4. 配置内如果包含订阅令牌、密码、私钥或证书,不要上传到不明的在线转换站。
  5. 如果已经安装 sing-box 命令行核心,可在配置文件目录执行:

sing-box check

官方当前配置文档给出的检查命令是 sing-box check;格式化命令为 sing-box format -w -c config.json -D config_directory。命令参数会随核心版本变化,若本机提示参数不存在,应以当前核心自带的 sing-box help 和官方文档为准。官方 Check 与 Format 说明

Android:导入 Local 本地 JSON

这里限定为官方 sing-box for Android 客户端。官方资料确认该客户端可以管理和运行本地或远程 sing-box 配置,并通过 Android 的 VpnService 实现 TUN;具体菜单文字仍可能随客户端版本调整。官方 Android 客户端说明

  1. 将 JSON 文件保存到手机的“下载”或其他可访问目录。
  2. 打开 sing-box for Android,进入 Profiles 或配置文件页面。
  3. 选择添加配置、导入文件或 Local 入口。
  4. 在系统文件选择器中选中 JSON 文件并确认。
  5. 回到 Profile 列表,点击该配置,使其成为当前配置。
  6. 进入 Dashboard 或主界面,启动服务。
  7. 首次使用时,在 Android 弹出的 VPN 权限窗口中确认允许。
  8. 如果配置中包含多个出站或分组,再在客户端提供的分组界面选择目标出站。

成功标准:Profile 能被打开,服务状态显示运行,VPN 权限已授权,日志没有持续的配置解析或拨号错误,并且实际应用产生了连接。

Windows:导入 Local 或 Remote 配置

官方 sing-box for Desktop 支持管理和运行本地或远程配置文件,当前官方页面列出的 Windows 要求为 Windows 10 或更高版本,并支持 x64、x86 和 arm64。官方 Desktop 客户端说明

  1. 打开 sing-box for Desktop,进入配置文件或 Profiles 页面。
  2. 本地文件选择 Local 或导入文件;远程地址选择 Remote 或通过 URL 添加。
  3. 本地导入时,在文件选择器中选完整 JSON;远程导入时,填写配置名称和完整 URL。
  4. 保存后选中该 Profile,并执行更新或重新加载。
  5. 回到 Dashboard,启动服务。
  6. 如果配置包含 TUN,按客户端提示授予系统权限;如果只使用本地 HTTP 或 SOCKS 入站,则还需在系统或应用中正确填写代理端口。

桌面客户端的配置文件可以被识别,不等于所有流量已经接管。启动后应查看 Dashboard 状态、日志和连接计数,再用实际应用测试。若没有请求记录,先检查当前 Profile、TUN 或系统代理是否真的启用。

iOS 和 macOS:按 Apple Profile 逻辑导入

官方 sing-box for Apple platforms 支持管理和运行本地或远程配置文件,覆盖 iOS、macOS 和 Apple tvOS。官方页面列出的要求为 iOS 15.0+、macOS 13.0+ 和 Apple tvOS 17.0+;本文只说明导入思路,不把其他客户端的菜单名称当作 Apple 客户端的固定界面。官方 Apple 客户端说明

  1. 本地 JSON:先通过“文件”或系统分享功能将配置保存到设备可访问的位置。
  2. 打开 sing-box for Apple platforms,进入 Profile 或配置管理页面。
  3. 选择本地文件导入,或在客户端支持时选择 Remote 并粘贴配置 URL。
  4. 保存后选中对应 Profile,执行更新或重新载入。
  5. 启动服务,按系统提示允许 Network Extension 或 VPN 配置。
  6. 回到客户端状态页,确认服务运行,再用实际应用测试。

iOS 和 macOS 的文件选择、VPN 授权及 Profile 管理入口可能随版本变化。官方通用文档明确了 Local、iCloud 和 Remote 的概念,但没有把每个平台的所有按钮名称固定为同一套;找不到完全一致的菜单时,应以当前客户端界面为准。官方通用客户端说明

远程订阅导入后显示错误:按返回内容排查

Remote Profile 保存的是配置 URL,客户端需要从该地址取得配置内容。导入后出现解析错误时,先不要反复切换 DNS 或 TUN,按下面顺序缩小范围。

  1. 重新复制完整 URL,检查是否漏掉参数、大小写或末尾字符。
  2. 确认地址实际返回的是 sing-box 配置,而不是登录页、HTML 错误页或需要额外认证的网页。
  3. 如果客户端支持配置内容查看器,打开查看返回内容;若只显示网页文字,先向订阅提供方核实地址和权限。
  4. 将返回内容保存为本地文件,再执行 sing-box check,区分“远程地址问题”和“配置内容问题”。
  5. 如果检查提示未知字段,再核对生成配置的版本要求、当前客户端内置核心版本和具体报错字段。

官方文档说明 Remote Profile 使用 URL 作为更新来源,并要求图形客户端实现自动更新和 HTTP Basic Authorization;这说明“能保存 URL”和“能成功读取可用配置”是两个不同环节。官方 Remote Profile 说明

导入后无法联网:最小复测路径

按现象分流
现象先确认下一步
JSON 解析失败括号、引号、逗号和文件内容用 sing-box check 检查,不要先修改路由
未知字段具体字段名与核心版本核对配置来源和当前客户端核心是否匹配
Profile 存在但没有节点是否导入了完整配置检查 outbounds 和默认出站;单节点链接要走客户端支持的节点入口
服务未启动当前 Profile、权限和日志先停止其他 VPN、代理或网络过滤工具,再重启服务
服务运行但无流量TUN、系统代理或本地入站确认应用流量是否经过 sing-box,再查看 Dashboard 连接记录
部分应用无法访问DNS、route 规则和出站选择先用明确的默认出站测试,再逐项恢复规则
  1. 确认当前 Profile 被选中。
  2. 确认服务状态为运行。
  3. 确认 VPN、TUN 或系统代理权限已经生效。
  4. 确认出站列表中存在目标节点,并且默认出站指向可用节点。
  5. 查看日志或 Dashboard 是否产生连接记录。
  6. 最后再排查 DNS、route 规则和分流配置。

如果新配置导致问题,先停止服务,切回之前能工作的 Profile,再删除或停用新配置。保留原始 JSON、远程 URL 和报错信息,便于区分文件、订阅、客户端核心和网络四类问题。

常见问题

sing-box 可以直接导入 Clash YAML 吗?

不能把 Clash YAML 当作 sing-box JSON 直接导入。两者的配置格式和字段结构不同;应取得兼容的 sing-box 配置,再用当前核心的 sing-box check 检查。无法确认转换结果时,不要把含有订阅令牌或私钥的配置上传到不明网站。

sing-box 导入 JSON 后为什么没有节点?

先确认文件不是只有一个节点对象,也不是单独的分享链接。再检查配置是否包含有效的 outbounds,当前 Profile 是否已选中,以及默认出站是否指向节点。若只有 vless:// 等链接,应寻找客户端的分享链接或添加节点入口。

远程订阅添加成功但更新后解析错误怎么办?

先检查 URL 返回内容是否为配置,而不是登录页或 HTML 错误页;再把返回内容保存为本地文件,执行 sing-box check。如果出现未知字段,记录具体字段名,并向配置提供方核对生成版本和兼容核心。

配置能启动但手机无法联网怎么办?

确认 Android 或 Apple 的 VPN、Network Extension 或相关系统授权已经允许,并暂时关闭其他 VPN、代理和网络过滤工具。随后检查当前出站、DNS、route 和 TUN 状态,先用最简单的单一出站进行复测。

官方客户端和第三方 sing-box 客户端的导入方法一样吗?

不一定。官方资料将 Android、Apple platforms 和 Desktop 分为不同客户端,菜单和权限行为也可能不同。本文只按官方客户端的通用 Profile 概念说明;第三方客户端应以其当前版本文档和界面为准。官方图形客户端列表

常见问题

sing-box 可以直接导入 Clash YAML 吗?

不能把 Clash YAML 当作 sing-box JSON 直接导入。应先取得兼容的 sing-box 配置,再用当前核心的 sing-box check 检查。

sing-box 导入 JSON 后为什么没有节点?

确认导入的是完整配置而不是单节点对象或分享链接,再检查 outbounds、默认出站和当前 Profile。

远程订阅添加成功但更新后解析错误怎么办?

检查 URL 是否返回配置内容而不是登录页或 HTML 错误页;保存返回内容后执行 sing-box check,并核对具体字段与核心版本。

配置能启动但手机无法联网怎么办?

确认 VPN 或 Network Extension 权限已允许,关闭其他流量接管工具,再检查出站、DNS、route 和 TUN。

Windows、Android、iOS 和 macOS 的导入菜单完全一样吗?

不一样。官方客户端的 Profile 概念相近,但文件选择、权限和启动入口会按平台及版本变化,应以当前应用界面为准。

相关阅读

参考资料

  1. sing-box 官方:Local、iCloud、Remote Profile 与 Dashboard
  2. sing-box 官方:JSON 配置结构、check 与 format 命令
  3. sing-box 官方:Android、Apple platforms 与 Desktop 客户端列表
  4. sing-box 官方:Android 客户端、本地与远程配置支持
  5. sing-box 官方:Desktop 客户端与 Windows 支持
  6. sing-box 官方:Apple 客户端与本地、远程配置支持