GUI.for.SingBox 配置指南:告别 JSON,图形界面搞定一切
从下载安装到规则分流,手把手教你用 GUI.for.SingBox 图形界面客户端——不用手写一行 JSON,轻松管理 sing-box 全部功能。
一、GUI.for.SingBox 是什么
一句话定义:GUI.for.SingBox 是 sing-box 内核的图形界面配置管理前端。它本身不是代理程序,而是通过 GUI 操作自动生成 sing-box 的 JSON 配置文件并驱动内核运行。
为什么需要它:sing-box 原生只提供命令行 + JSON 配置,手写 JSON 配置对大多数人来说门槛太高。GUI.for.SingBox 把所有配置项变成可视化表单,点击填选即可,完全不需要接触 JSON。
1.1 核心功能一览
| 功能 | 说明 |
|---|---|
| 多协议支持 | VLESS / VMess / Trojan / Shadowsocks / Hysteria2 / TUIC / Reality / NaiveProxy |
| 订阅管理 | 支持 sing-box JSON、Clash YAML、URI 列表格式的一键导入 |
| 节点转换插件 | 自动将 V2Ray/Clash 格式订阅转为 sing-box 格式 |
| 分流控制 | 规则分流 / 直连 / 全局代理三种模式 |
| TUN 透明代理 | 创建虚拟网卡,接管全部系统流量 |
| 策略组 | 手动选择 / 自动测速(urltest)/ 负载均衡 |
| 路由规则 | 域名 / IP / 进程 / 协议 / 规则集,完整可视化配置 |
| DNS 管理 | 服务器 / DNS 规则 / FakeIP,全图形化 |
| 规则集 | 远程规则集自动下载更新,支持 SRS 二进制格式 |
| 插件系统 | Sub-Store / 广告拦截 / 速度测试 / IP 查询等 |
| 配置导出 | 一键生成完整 sing-box JSON 配置文件 |
| 跨平台 | Windows / macOS / Linux |
1.2 与其他客户端对比
| 对比维度 | GUI.for.SingBox | Karing | Clash Verge Rev | V2RayN |
|---|---|---|---|---|
| 内核 | sing-box | sing-box | mihomo | v2ray/xray |
| 配置方式 | GUI 表单 → 自动生成 JSON | GUI + 订阅 | YAML 编辑 | 多种 |
| Hysteria2 | ✅ | ✅ | ✅ | ✅ |
| VLESS+REALITY | ✅ | ✅ | ✅ | ✅ |
| 规则集管理 | ✅ 可视化管理 | ✅ | ✅ | 有限 |
| DNS 可视化 | ✅ | ✅ | ✅ | ❌ |
| 插件系统 | ✅ 丰富 | ❌ | ❌ | ❌ |
| 配置导出 JSON | ✅ | ❌ | ❌ | ❌ |
| 学习曲线 | 中等 | 低 | 低 | 低 |
GUI.for.SingBox 的独特价值:既能享受 GUI 的便利,又能完全控制 sing-box 的每个配置项,还能导出标准 JSON 给手机端使用。
二、下载与安装
2.1 下载地址
GitHub Releases:github.com/GUI-for-Cores/GUI.for.SingBox/releases
选择对应平台的安装包:
| 文件名 | 平台 | 架构 |
|---|---|---|
GUI.for.SingBox-windows-amd64.zip |
Windows | x86_64(主流) |
GUI.for.SingBox-windows-arm64.zip |
Windows | ARM64 |
GUI.for.SingBox-darwin-arm64.zip |
macOS | Apple Silicon (M1/M2/M3) |
GUI.for.SingBox-darwin-amd64.zip |
macOS | Intel |
GUI.for.SingBox-linux-amd64.zip |
Linux | x86_64 |
💡 提示:所有平台均为便携版(免安装),解压即用。程序本身约 10MB。
2.2 Windows 安装
- 解压到纯英文无空格路径(如
D:\GFS\),不要放在桌面或含中文路径 - 右键
GUI.for.SingBox.exe→ 属性 → 兼容性 → 勾选「以管理员身份运行」→ 确定 - 首次运行 Windows SmartScreen 拦截 → 点击「更多信息」→「仍要运行」
- 如提示需要 WebView2 运行时,按提示安装(Win10/11 通常已自带)
2.3 macOS 安装
- 解压后拖入 Applications 文件夹
- 首次打开提示「无法验证开发者」→ 系统设置 → 隐私与安全性 → 仍要打开
- 使用 TUN 模式需在内核设置页面点击「授权」按钮
2.4 Linux 安装
chmod +x GUI.for.SingBox
./GUI.for.SingBox
TUN 模式同样需要点击内核设置页面的「授权」按钮。
三、首次启动:四步搞定
3.1 第一步:切换中文 + 安装内核
打开软件后先做两件事:
- 切换语言:顶部菜单
Settings→Language→简体中文 - 安装内核:
设置→内核→ 看到 sing-box 下方 Local 显示无版本 → 点击右侧「更新」按钮下载最新内核
⚠️ 内核是必须的:GUI.for.SingBox 不自带 sing-box 内核,必须先下载。内核下载完成后,sing-box 下方 Local 会显示版本号,软件才处于可用状态。
3.2 第二步:安装「节点转换」插件
如果你的订阅不是 sing-box JSON 格式(大概率不是),这个插件必装:
- 点击左侧
插件→插件中心 - 点击「更新列表」
- 找到 「节点转换」 → 点击「添加」→ 等待安装
- 安装完成后点击「运行」
节点转换插件的作用:自动将 V2Ray/Clash 格式的订阅链接转换为 sing-box 格式。每次更新订阅时会自动触发,无需手动操作。
3.3 第三步:添加订阅
- 点击
概览→快速开始 - 在输入框粘贴你的订阅 URL(机场或自建节点的订阅地址)
- 点击「保存」
- 添加后点击订阅右上方的「更新全部」获取节点
如果更新时报错,说明节点转换插件未安装或未运行,回到第二步检查。
3.4 第四步:启动代理
- 点击
概览→ 「启动内核」 - 内核启动后,点击左上角「系统代理」启用代理
- 选择工作模式: - 规则模式(推荐日常使用):国内流量直连,外网走代理 - 全局模式:所有流量走代理 - 直连模式:关闭代理
至此,你已经可以正常使用代理上网了。 🎉
四、通用设置详解
进入 设置 → 通用,建议按以下配置:
| 设置项 | 建议操作 | 说明 |
|---|---|---|
| 语言 | 简体中文 | 界面语言 |
| 以管理员身份运行 | ✅ 勾选 | TUN 模式必需,否则虚拟网卡无法创建 |
| 自动启动内核程序 | ✅ 勾选 | 打开软件即启动代理 |
| 退出程序时同时关闭内核 | ✅ 勾选 | 关闭软件即停止代理,避免后台残留 |
| 开机时启动 | 按需 | 开机自动启动 |
| 关闭窗口时退出程序 | 按需 | 勾选后关闭窗口直接退出,不驻留托盘 |
⚠️ 重要:勾选「以管理员身份运行」后,需要退出并重新启动软件才能生效。
五、订阅与节点管理
5.1 添加多种订阅
GUI.for.SingBox 支持同时添加多个订阅源:
订阅页面 → 点击「添加」- 选择类型: - Remote URL:粘贴订阅链接(最常用) - 手动:自己填写节点信息
- 填写保存路径(建议用默认相对路径)
- 命名并保存
5.2 更新订阅
- 点击订阅右上角的「更新全部」→ 批量更新所有订阅
- 节点转换插件会在更新时自动运行,将非 sing-box 格式转换
- 更新完成后订阅界面会显示节点数量
5.3 手动添加单个节点
如果你是自建节点,只有单节点链接(如 hysteria2://... 或 vless://...),也可以直接粘贴:
概览→快速开始→ 粘贴节点 URI → 保存- 或在订阅页面添加「手动」类型,在 JSON 文件中填写 outbounds
5.4 切换节点
启动代理后,在概览页面下方可以看到节点列表: - 点击节点名称即可切换 - 支持按订阅分组显示 - 安装 Twemoji.Mozilla 插件后,节点前会显示国旗图标
六、配置文件设置(核心)
配置是 GUI.for.SingBox 最核心的部分。每个配置文件对应一套完整的代理方案(入站 + 出站 + 路由 + DNS)。
6.1 创建配置文件
配置页面 → 点击「添加」→ 输入配置名称- 在新配置上右键 → 选择「设置」进入详细配置
- 或使用「向导模式」逐步引导完成
配置页面包含以下设置区域:
通用设置 → 入站设置 → 出站设置(策略组)→ 路由设置 → DNS 设置
6.2 通用设置
| 设置项 | 说明 |
|---|---|
| 工作模式 | 规则(分流)/ 全局 / 直连,选「规则」 |
| 查找进程信息 | 启用后连接信息显示进程名,便于按进程分流 |
| 自动检测出站接口 | TUN 模式下务必启用,防止路由回环 |
6.3 入站设置
入站决定本地如何接收流量。GUI.for.SingBox 支持四种入站类型:
| 类型 | 端口 | 说明 |
|---|---|---|
| Mixed | 7890(默认) | HTTP + SOCKS 混合代理,用于系统代理模式 |
| Tun | — | 虚拟网卡,全局接管流量,用于 TUN 模式 |
| Http | 自定义 | 纯 HTTP 代理 |
| Socks | 自定义 | 纯 SOCKS5 代理 |
推荐配置:同时添加 Mixed + Tun,日常用系统代理(Mixed),需要全局代理时切换到 TUN。
TUN 模式详细设置
| 设置项 | 推荐值 | 说明 |
|---|---|---|
| TUN 堆栈 | mixed |
TCP 用 system 栈,UDP 用 gvisor 栈,综合最佳 |
| 自动设置全局路由 | ✅ | 必须同时启用「自动检测出站接口」 |
| 严格路由 | ✅ | 防止 IP 泄露,增强 DNS 劫持效果 |
| MTU | 9000(默认) | 一般无需修改 |
| IPv4 前缀 | 172.19.0.1/30(默认) | TUN 接口地址 |
⚠️ TUN 与系统代理互斥:开启 TUN 时关闭系统代理,反之亦然。TUN 模式下所有应用流量都会被接管,包括游戏、命令行工具等不支持系统代理的程序。
七、出站设置与策略组
7.1 策略组类型
出站设置的核心是策略组,它决定流量走哪个节点:
| 类型 | 说明 | 适用场景 |
|---|---|---|
| 手动选择 (selector) | 手动切换节点 | 日常按需切换 |
| 自动选择 (urltest) | 自动选延迟最低的节点 | 懒人模式,保持最优 |
| 直连 (direct) | 不走代理 | 国内流量 |
7.2 配置策略组
- 在配置的「出站设置」页面,点击添加策略组
- 设置策略组名称(如「代理」「流媒体」「住宅 IP」)
- 选择类型(selector / urltest)
- 将订阅节点加入策略组: - 可用正则表达式包含/排除特定节点(如只选日本节点) - urltest 类型可设置测试间隔和容差
7.3 典型策略组方案
代理组(selector) → 手动选择日常使用的节点
自动组(urltest) → 自动切换最低延迟节点
流媒体组(selector) → 专门给 YouTube/Netflix 等选择解锁节点
住宅IP组(selector) → TikTok 等需要住宅 IP 的应用
直连组(direct) → 国内流量
八、路由规则与分流
分流是代理的核心——决定哪些流量走代理、哪些直连、哪些屏蔽。
8.1 规则类型
GUI.for.SingBox 支持的路由规则类型:
| 规则类型 | 说明 | 示例 |
|---|---|---|
| Clash 模式 | 匹配工作模式(direct/global/rule) | 自动添加,一般保留默认 |
| 协议 (protocol) | 匹配 quic / stun / bittorrent 等 | BT 流量直连 |
| 规则集 (rule_set) | 引用预定义规则集(最常用) | geosite-cn 直连 |
| 域名 (domain) | 精确匹配域名 | www.google.com |
| 域名后缀 (domain_suffix) | 匹配域名后缀 | .cn .com.cn |
| 域名关键词 (domain_keyword) | 匹配关键词 | google youtube |
| IP 地址段 (ip_cidr) | 匹配 IP 范围 | 10.0.0.0/24 |
| 进程名称 (process_name) | 按应用进程分流 | chrome.exe |
| 内联 (inline) | 直接写 JSON 逻辑规则 | 复杂多条件组合 |
8.2 规则动作
| 动作 | 说明 |
|---|---|
| 路由 (route) | 将匹配流量路由到指定出站(代理/直连/屏蔽) |
| 拒绝连接 (reject) | 直接关闭连接(用于广告拦截) |
| 劫持 DNS (hijack-dns) | 劫持 DNS 请求交给 sing-box 处理 |
| 协议嗅探 (sniff) | 嗅探协议类型,必须添加,否则域名规则不生效 |
| 解析 DNS (resolve) | 将域名解析为 IP |
8.3 规则配置顺序(关键)
规则从上到下匹配,命中即停。推荐顺序:
1. sniff → 协议嗅探(必须第一条)
2. hijack-dns → DNS 劫持
3. clash_mode → 工作模式判断
4. 广告规则 → 屏蔽广告域名
5. 国内域名/IP → 直连(geosite-cn / geoip-cn)
6. 代理规则 → 被墙域名走代理
7. 兜底规则 → 默认出站(通常选代理)
8.4 规则集管理
规则集是分流的核心数据源,GUI.for.SingBox 支持三种规则集:
| 类型 | 说明 |
|---|---|
| 内联 (inline) | 直接在配置中定义 |
| 本地 (local) | 引用本地规则集文件 |
| 远程 (remote) | 从远程仓库下载(最常用) |
添加远程规则集:
- 路由设置 → 规则集 → 点击「添加」
- 设置名称(如
geosite-cn、geoip-cn) - 类型选「远程」
- 格式选「二进制 (SRS)」(文件小、加载快,推荐)
- 填写远程链接
- 设置自动更新间隔(默认 1 天)
- 下载方式建议选「代理出站」(GitHub 资源需翻墙下载)
常用规则集:
| 规则集 | URL | 说明 |
|---|---|---|
| geosite-cn | https://raw.githubusercontent.com/SagerNet/sing-geosite/rule-set/geosite-geolocation-cn.srs |
国内域名 |
| geosite-!cn | https://raw.githubusercontent.com/SagerNet/sing-geosite/rule-set/geosite-geolocation-!cn.srs |
非中国域名 |
| geoip-cn | https://raw.githubusercontent.com/SagerNet/sing-geoip/rule-set/geoip-cn.srs |
国内 IP |
| geosite-ads | https://raw.githubusercontent.com/SagerNet/sing-geosite/rule-set/geosite-category-ads-all.srs |
广告域名 |
💡 也可以使用 MetaCubeX 维护的规则集:github.com/MetaCubeX/meta-rules-dat/tree/sing/
九、DNS 设置
DNS 配置直接影响分流准确性和防泄漏能力。GUI.for.SingBox 提供完整的 DNS 可视化管理。
9.1 DNS 通用设置
| 设置项 | 推荐配置 | 说明 |
|---|---|---|
| 解析策略 | IPv4 优先 | 大部分场景够用 |
| Fake-IP | ✅ 启用 | 减少 DNS 泄漏,加快连接速度 |
| Fake-IP 范围 | 默认值 | IPv4: 198.18.0.0/15,IPv6: fc00::/18 |
| 回退 DNS | 本地 DNS | 未命中 DNS 规则时的默认服务器 |
启用 Fake-IP 后,软件会自动添加 FakeIP 相关服务器和规则,按弹出提示默认添加即可。
9.2 DNS 服务器
至少配置两个 DNS 服务器:
本地 DNS(用于解析国内域名,绑定直连出站):
| 协议 | 地址 | 说明 |
|---|---|---|
| DoH | https://223.5.5.5/dns-query |
阿里 DNS,速度快 |
| UDP | udp://114.114.114.114 |
114 DNS,备选 |
| DoH | https://doh.pub/dns-query |
腾讯 DNS,备选 |
远程 DNS(用于解析国外域名,绑定代理出站):
| 协议 | 地址 | 说明 |
|---|---|---|
| DoT | tls://8.8.8.8 |
Google DNS,加密防污染 |
| DoH | https://1.1.1.1/dns-query |
Cloudflare DNS |
关键:本地 DNS 的「出站标签」设为 direct(直连),远程 DNS 设为 proxy(代理)。这样国内域名在国内解析,国外域名通过代理解析,避免 DNS 泄漏。
9.3 DNS 规则
DNS 规则决定哪些域名用哪个 DNS 服务器:
any出站规则(必须添加):匹配所有出站连接,指定使用本地直连 DNS。这用于解析节点服务器本身的域名- 国内域名规则:
rule_set: geosite-cn→ 使用本地 DNS - 国外域名规则:默认使用远程 DNS
十、插件系统(进阶)
插件是 GUI.for.SingBox 的杀手级功能,极大扩展了软件能力。
10.1 必装插件
| 插件 | 功能 | 优先级 |
|---|---|---|
| 节点转换 | 将 V2Ray/Clash 格式订阅转为 sing-box 格式 | ⭐⭐⭐⭐⭐ 必装 |
| Sub-Store / Sub-Store v2 | 本地部署订阅转换和节点整理 | ⭐⭐⭐⭐ 推荐 |
| Twemoji.Mozilla | 节点国旗图标正常显示 | ⭐⭐⭐ 推荐 |
10.2 实用插件
| 插件 | 功能 |
|---|---|
| 一键添加规则集 | 从网络导入规则集,所有订阅共用 |
| Speedtest 速度测试 | 对节点进行速度和延迟测试 |
| ADguardhome | 去广告 |
| IP 信息查询 | 查询当前节点 IP、地区和时区 |
| 解除 UWP 本地回环 | 解决 UWP 应用无法使用本地代理的问题 |
10.3 插件安装流程
插件 → 插件中心 → 更新列表 → 找到目标插件 → 添加 → 安装 → 运行
十一、配置导出与多设备同步
11.1 导出 sing-box JSON
GUI.for.SingBox 最大的优势之一:可以把 GUI 配置导出为标准 sing-box JSON 文件。
- 在配置上右键 → 设置 → 右上角「文档按钮」→ 预览完整 JSON
- 复制 JSON 内容,保存为
config.json
用途:
- 导入到手机端 sing-box App(Android / iOS)
- 在命令行直接用 sing-box run -c config.json 运行
- 分享给朋友,对方导入即用
11.2 多设备同步方案
| 方案 | 操作 |
|---|---|
| 导出 JSON → 手机导入 | 最简单,一次配置到处用 |
| 自建订阅服务(CF-Workers-SUB) | 多节点汇聚成订阅 URL,多设备订阅同一个 URL |
| - 手机端 sing-box App 导入同一份 JSON 配置即可 |
十二、常见问题 FAQ
Q1:内核下载失败怎么办?
GitHub 在国内无法直接访问,内核下载会超时。解决方式:
1. 先用其他方式(手机热点 / 已有代理)下载一次内核
2. 或手动下载 sing-box 内核放入 data/sing-box/ 目录
Q2:订阅更新报错?
确认「节点转换」插件已安装并处于运行状态。如果订阅是 sing-box JSON 格式则不需要该插件。
Q3:TUN 模式启动失败?
- Windows:必须勾选「以管理员身份运行」并重启软件
- macOS/Linux:点击内核设置页面的「授权」按钮
- 确保
wintun.dll存在于程序目录(Windows)
Q4:TUN 模式下某些应用异常?
关闭「严格路由」,或将该应用加入排除规则。VirtualBox 等虚拟化软件与严格路由冲突。
Q5:DNS 泄漏怎么解决?
- 确保 DNS 规则中添加了
any出站规则,指向本地直连 DNS - 启用 FakeIP
- 本地 DNS 出站标签设为
direct,远程 DNS 设为proxy
Q6:节点国旗图标不显示?
安装 Twemoji.Mozilla 插件。
Q7:TUN 和系统代理能同时开吗?
不能,二者互斥。TUN 模式接管全部流量,不需要系统代理。
Q8:退出软件后代理还在?
没有勾选「退出程序时同时关闭内核」,sing-box 进程仍在后台运行。勾选该选项即可。
Q9:如何按进程分流?
- 通用设置中启用「查找进程信息」
- 在路由规则中添加「进程名称」类型规则
- 例如:
chrome.exe→ 代理,WeChat.exe→ 直连
Q10:规则集下载失败?
规则集托管在 GitHub,国内网络访问不到。解决方式:
1. 先配置一个可用节点,让规则集通过代理下载
2. 在规则集设置中,下载方式选「代理出站」
3. 或提前下载 .srs 文件到本地,使用本地规则集
十三、配置优化清单
上线前逐项检查:
- [ ] 内核已安装:设置 → 内核 → Local 显示版本号
- [ ] 节点转换插件已安装并运行
- [ ] 以管理员身份运行已勾选(TUN 模式必需)
- [ ] 订阅已添加且节点数 > 0
- [ ] 出站标签正确:代理节点绑定了
proxy,直连绑定了direct - [ ] 协议嗅探规则已添加(sniff 必须是第一条路由规则)
- [ ] DNS 劫持规则已添加(hijack-dns)
- [ ]
any出站 DNS 规则已添加(防止 DNS 泄漏) - [ ] 本地 DNS 出站设为 direct,远程 DNS 出站设为 proxy
- [ ] Fake-IP 已启用
- [ ] 规则集可正常下载(GitHub 资源需走代理)
- [ ] 广告屏蔽规则已加载(geosite-category-ads-all)
- [ ] TUN 与系统代理没有同时开启
- [ ] 「退出程序时同时关闭内核」已勾选
评论
发表评论