使用教程 · sing-box 教程

sing-box 教程 2026:Windows/Mac 客户端与配置入门

机场V 编辑部 · 更新于

sing-box 教程:先说结论

结论:sing-box 是一个通用的代理平台内核,本身是命令行程序,普通用户通常通过图形客户端来使用它:macOS 上可以用 App Store 中的官方客户端(sing-box for Apple 平台版本),Windows 上没有官方图形界面,一般借助以 sing-box 为内核的第三方开源客户端,或者在 v2rayN 等客户端中选择 sing-box 内核。使用方法的核心只有两步:拿到机场提供的 sing-box 格式订阅(或能转换为 sing-box 配置的订阅),在客户端中添加为远程配置并启用。理解了 inbounds(入站)、outbounds(出站)、route(路由)、dns 四大块配置,就能看懂并调整绝大多数 sing-box 配置。下文从概念、安装到排错逐一说明。

sing-box 是什么,和 Clash 有什么区别

sing-box 是一个用 Go 语言编写的开源通用代理平台,支持几乎所有主流代理协议,包括 Shadowsocks、VMess、VLESS(含 Reality)、Trojan、Hysteria、Hysteria2、TUIC、WireGuard、ShadowTLS 等。它以性能好、内存占用低、TUN 实现成熟著称,近年来被越来越多的客户端用作底层内核。

与 Clash(Mihomo)相比,二者最大的差别在配置格式和设计理念上:

对比项sing-boxClash / Mihomo
配置格式JSON,结构严格YAML,书写宽松
分流写法route 中的 rules 与 rule_setrules 列表与 rule-providers
策略组selector、urltest 类型的出站proxy-groups 中的 select、url-test 等
机场支持度部分机场提供 sing-box 订阅几乎所有机场都提供 Clash 订阅
版本兼容大版本之间配置字段可能变动相对稳定
典型客户端官方 Apple 客户端、Android 客户端及第三方 GUIClash Verge Rev、Mihomo Party、FlClash 等

简单来说,如果你的机场提供的是 Clash 订阅,用 Clash 系客户端最省事,例如 Clash Verge 教程 中介绍的方法;如果机场明确提供 sing-box 订阅,或者你追求更轻量的内核与更好的 TUN 表现,再选择 sing-box。协议层面的区别可以参考 代理协议科普。

在 Mac 上使用 sing-box 官方客户端

sing-box 官方为 Apple 平台提供了图形客户端,可以在 App Store 搜索 sing-box 获取(不同地区商店的上架情况可能不同,部分地区需要使用其他地区的 Apple ID,可参考 美区 Apple ID 教程)。该客户端在 macOS 上通过系统网络扩展工作,相当于天然以 TUN 方式接管流量。

  1. 从 App Store 安装 sing-box 官方客户端并打开。
  2. 进入 Profiles(配置)页面,点击新建,类型选择 Remote(远程),在 URL 中粘贴机场提供的 sing-box 订阅链接,设置名称和自动更新间隔后保存。
  3. 在配置列表中选中刚添加的配置。
  4. 回到 Dashboard(仪表盘),点击启用开关。首次启用时,macOS 会提示“添加 VPN 配置”或“允许系统扩展”,按提示在系统设置中允许,并输入密码确认。
  5. 启用后,如果配置中包含 clash_api 等实验性接口,客户端会显示 Groups(分组)页面,可以在这里切换节点、测速。

Mac 官方客户端的优点是与系统集成度高,稳定且省电;缺点是对配置格式要求严格,订阅内容必须是当前版本可识别的 sing-box JSON 配置,否则会直接报错无法启动。

在 Windows 上使用 sing-box

sing-box 官方没有提供 Windows 图形界面,Windows 用户一般有三种选择:

第三方 GUI 的通用操作步骤

  1. 从项目官方 GitHub Releases 下载 Windows 安装包或压缩包,解压到英文路径。
  2. 首次运行时,部分客户端需要下载 sing-box 内核文件,按界面提示从官方源获取。
  3. 在订阅或配置页面添加机场订阅。如果客户端支持订阅转换,可以直接使用通用订阅或 Clash 订阅,它会自动生成 sing-box 配置。
  4. 选择规则分流模式,挑选节点。
  5. 选择接管方式:系统代理(只影响遵守系统代理的程序)或 TUN(需要管理员权限,接管全部流量)。
  6. 点击启动,打开浏览器测试。

不同 GUI 的按钮名称差别较大,但核心都是“订阅 → 模式 → 节点 → 启动”。

读懂 sing-box 配置的五个核心部分

即使你只使用图形客户端,理解配置结构也非常有帮助,遇到报错时能看懂问题出在哪一块。一个典型的 sing-box 配置由以下部分组成:

log:日志

控制日志级别与输出位置。排错时把级别调成 debug 或 info,正常使用时用 warn 即可,减少日志输出。

dns:域名解析

定义 DNS 服务器列表与 DNS 规则。一般会设置一个国内 DNS 用于解析国内域名、一个境外 DNS(通过代理)用于解析国外域名,并通过规则决定哪类域名用哪个服务器。DNS 配置不当是“国内网站变慢”或“部分网站打不开”的常见原因,参考 国内网站变慢。

inbounds:入站

定义流量从哪里进入 sing-box。常见类型有 mixed(本地 HTTP 与 SOCKS 混合端口,配合系统代理使用)和 tun(虚拟网卡,接管全部流量)。图形客户端的“系统代理”和“TUN”开关,本质上就是在启用不同的入站。

outbounds:出站

定义流量从哪里出去。每个机场节点就是一个出站,另外还有 direct(直连)、block(拦截)等特殊出站。策略组在 sing-box 中也是出站:selector 类型让你手动选择节点,urltest 类型会自动测速并选择最快的节点。

route:路由

决定某个连接走哪个出站。rules 列表从上到下匹配,可以按域名、域名后缀、IP 段、进程名、规则集等条件匹配;rule_set 用于引用远程或本地的规则集文件,比如国内域名列表、国内 IP 列表;final 指定所有规则都不匹配时的默认出站。规则分流的思想和 Clash 相同,详细原理见 全局模式和规则模式区别。

此外还有 experimental 部分,可以开启缓存文件、clash_api 等实验功能。clash_api 让 sing-box 兼容 Clash 的外部控制接口,许多图形客户端正是依赖它来显示节点分组和实时连接。

获取 sing-box 订阅的几种方式

  1. 机场直接提供:部分机场后台有“sing-box”或“SFA/SFI/SFM”格式的订阅按钮,这是最省心的方式。
  2. 客户端内置转换:一些第三方 GUI 支持导入通用订阅或 Clash 订阅后自动生成 sing-box 配置。
  3. 订阅转换工具:借助自建或可信的订阅转换服务,把订阅转成 sing-box 格式。注意使用第三方公共转换服务存在泄露订阅的风险,原理与风险见 订阅转换。

如果你在挑选机场时就希望它原生支持 sing-box,可以在 机场对比 中关注客户端兼容性一栏,或直接从 机场推荐 中选择。

常见问题排查

现象可能原因解决办法
启动时报配置解析错误订阅格式与内核版本不匹配,字段已废弃或新增更新客户端到最新版;联系机场获取适配新版本的订阅
Mac 客户端启用后立即断开未允许系统扩展或 VPN 配置到系统设置中允许网络扩展,重新启用
启用后所有网站都打不开DNS 配置错误、节点不可用检查 DNS 部分;换节点,参考 节点超时
国内网站走了代理规则集未下载成功或规则顺序错误确认 rule_set 能正常下载;检查直连规则位置
Windows 开 TUN 失败没有管理员权限、与其他 VPN 冲突以管理员运行;关闭其他代理工具,参考 TUN 模式
看不到节点分组配置没有开启 clash_api使用含 clash_api 的订阅或在客户端设置中开启

sing-box 的一个特点是版本更新较快,大版本有时会调整配置字段名称或结构。遇到“升级后突然无法启动”,第一时间查看日志中的报错字段,多半是订阅配置使用了旧写法。这时要么等待机场更新订阅模板,要么暂时使用与订阅匹配的客户端版本。

小结

sing-box 是一个高性能、协议全面的现代代理内核。Mac 用户优先使用 App Store 中的官方客户端,Windows 用户可以选择以 sing-box 为内核的开源 GUI 或在 v2rayN 中切换 sing-box 内核。使用的关键是拿到格式正确的 sing-box 订阅,并理解 inbounds、outbounds、route、dns 四部分的作用。掌握这些,你就能看懂报错、按需调整分流。安卓用户可以继续阅读 sing-box 安卓教程,对 TUN 有疑问的可以查看 TUN 模式 详解。

常见问题

sing-box 有 Windows 官方图形界面吗?

官方主要提供命令行程序和 Apple、Android 平台客户端。Windows 用户通常使用以 sing-box 为内核的第三方开源 GUI,或在 v2rayN 中使用 sing-box 内核。

sing-box 能直接用 Clash 订阅吗?

sing-box 官方客户端不能直接识别 Clash 订阅,需要 sing-box 格式的 JSON 配置。部分第三方 GUI 支持自动转换,或者使用订阅转换工具。

sing-box 升级后无法启动怎么办?

大版本可能修改配置字段。查看日志报错的字段名,确认订阅是否适配新版本;可联系机场更新模板,或暂时使用与订阅匹配的客户端版本。

sing-box 和 Clash 哪个更快?

两者在日常使用中速度差别不大,速度主要取决于机场节点质量。sing-box 在内存占用和 TUN 实现上有一定优势。

相关文章

引用本页:《sing-box 教程 2026:Windows/Mac 客户端与配置入门》,机场V,https://jichangv.world/guide/sing-box-tutorial/,更新于 2026-10-26。