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 安装

  1. 解压到纯英文无空格路径(如 D:\GFS\),不要放在桌面或含中文路径
  2. 右键 GUI.for.SingBox.exe → 属性 → 兼容性 → 勾选「以管理员身份运行」→ 确定
  3. 首次运行 Windows SmartScreen 拦截 → 点击「更多信息」→「仍要运行」
  4. 如提示需要 WebView2 运行时,按提示安装(Win10/11 通常已自带)

2.3 macOS 安装

  1. 解压后拖入 Applications 文件夹
  2. 首次打开提示「无法验证开发者」→ 系统设置 → 隐私与安全性 → 仍要打开
  3. 使用 TUN 模式需在内核设置页面点击「授权」按钮

2.4 Linux 安装

chmod +x GUI.for.SingBox
./GUI.for.SingBox

TUN 模式同样需要点击内核设置页面的「授权」按钮。


三、首次启动:四步搞定

3.1 第一步:切换中文 + 安装内核

打开软件后先做两件事:

  1. 切换语言:顶部菜单 SettingsLanguage简体中文
  2. 安装内核设置内核 → 看到 sing-box 下方 Local 显示无版本 → 点击右侧「更新」按钮下载最新内核

⚠️ 内核是必须的:GUI.for.SingBox 不自带 sing-box 内核,必须先下载。内核下载完成后,sing-box 下方 Local 会显示版本号,软件才处于可用状态。

3.2 第二步:安装「节点转换」插件

如果你的订阅不是 sing-box JSON 格式(大概率不是),这个插件必装

  1. 点击左侧 插件插件中心
  2. 点击「更新列表」
  3. 找到 「节点转换」 → 点击「添加」→ 等待安装
  4. 安装完成后点击「运行」

节点转换插件的作用:自动将 V2Ray/Clash 格式的订阅链接转换为 sing-box 格式。每次更新订阅时会自动触发,无需手动操作。

3.3 第三步:添加订阅

  1. 点击 概览快速开始
  2. 在输入框粘贴你的订阅 URL(机场或自建节点的订阅地址)
  3. 点击「保存」
  4. 添加后点击订阅右上方的「更新全部」获取节点

如果更新时报错,说明节点转换插件未安装或未运行,回到第二步检查。

3.4 第四步:启动代理

  1. 点击 概览 → 「启动内核」
  2. 内核启动后,点击左上角「系统代理」启用代理
  3. 选择工作模式: - 规则模式(推荐日常使用):国内流量直连,外网走代理 - 全局模式:所有流量走代理 - 直连模式:关闭代理

至此,你已经可以正常使用代理上网了。 🎉


四、通用设置详解

进入 设置通用,建议按以下配置:

设置项 建议操作 说明
语言 简体中文 界面语言
以管理员身份运行 ✅ 勾选 TUN 模式必需,否则虚拟网卡无法创建
自动启动内核程序 ✅ 勾选 打开软件即启动代理
退出程序时同时关闭内核 ✅ 勾选 关闭软件即停止代理,避免后台残留
开机时启动 按需 开机自动启动
关闭窗口时退出程序 按需 勾选后关闭窗口直接退出,不驻留托盘

⚠️ 重要:勾选「以管理员身份运行」后,需要退出并重新启动软件才能生效。


五、订阅与节点管理

5.1 添加多种订阅

GUI.for.SingBox 支持同时添加多个订阅源:

  1. 订阅 页面 → 点击「添加」
  2. 选择类型: - Remote URL:粘贴订阅链接(最常用) - 手动:自己填写节点信息
  3. 填写保存路径(建议用默认相对路径)
  4. 命名并保存

5.2 更新订阅

  • 点击订阅右上角的「更新全部」→ 批量更新所有订阅
  • 节点转换插件会在更新时自动运行,将非 sing-box 格式转换
  • 更新完成后订阅界面会显示节点数量

5.3 手动添加单个节点

如果你是自建节点,只有单节点链接(如 hysteria2://...vless://...),也可以直接粘贴:

  1. 概览快速开始 → 粘贴节点 URI → 保存
  2. 或在订阅页面添加「手动」类型,在 JSON 文件中填写 outbounds

5.4 切换节点

启动代理后,在概览页面下方可以看到节点列表: - 点击节点名称即可切换 - 支持按订阅分组显示 - 安装 Twemoji.Mozilla 插件后,节点前会显示国旗图标


六、配置文件设置(核心)

配置是 GUI.for.SingBox 最核心的部分。每个配置文件对应一套完整的代理方案(入站 + 出站 + 路由 + DNS)。

6.1 创建配置文件

  1. 配置 页面 → 点击「添加」→ 输入配置名称
  2. 在新配置上右键 → 选择「设置」进入详细配置
  3. 或使用「向导模式」逐步引导完成

配置页面包含以下设置区域:

通用设置 → 入站设置 → 出站设置(策略组)→ 路由设置 → 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 配置策略组

  1. 在配置的「出站设置」页面,点击添加策略组
  2. 设置策略组名称(如「代理」「流媒体」「住宅 IP」)
  3. 选择类型(selector / urltest)
  4. 将订阅节点加入策略组: - 可用正则表达式包含/排除特定节点(如只选日本节点) - 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) 从远程仓库下载(最常用

添加远程规则集

  1. 路由设置 → 规则集 → 点击「添加」
  2. 设置名称(如 geosite-cngeoip-cn
  3. 类型选「远程」
  4. 格式选「二进制 (SRS)」(文件小、加载快,推荐)
  5. 填写远程链接
  6. 设置自动更新间隔(默认 1 天)
  7. 下载方式建议选「代理出站」(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 服务器:

  1. any 出站规则必须添加):匹配所有出站连接,指定使用本地直连 DNS。这用于解析节点服务器本身的域名
  2. 国内域名规则rule_set: geosite-cn → 使用本地 DNS
  3. 国外域名规则:默认使用远程 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 文件

  1. 在配置上右键 → 设置 → 右上角「文档按钮」→ 预览完整 JSON
  2. 复制 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 泄漏怎么解决?

  1. 确保 DNS 规则中添加了 any 出站规则,指向本地直连 DNS
  2. 启用 FakeIP
  3. 本地 DNS 出站标签设为 direct,远程 DNS 设为 proxy

Q6:节点国旗图标不显示?

安装 Twemoji.Mozilla 插件。

Q7:TUN 和系统代理能同时开吗?

不能,二者互斥。TUN 模式接管全部流量,不需要系统代理。

Q8:退出软件后代理还在?

没有勾选「退出程序时同时关闭内核」,sing-box 进程仍在后台运行。勾选该选项即可。

Q9:如何按进程分流?

  1. 通用设置中启用「查找进程信息」
  2. 在路由规则中添加「进程名称」类型规则
  3. 例如: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 与系统代理没有同时开启
  • [ ] 「退出程序时同时关闭内核」已勾选

评论

此博客中的热门博文

Claude Code 国内安装与配置全指南

Claude Code 采用cc-switch配置第三方模型的完全指南