sing-box 使用教程:Windows 下载、配置文件与命令行运行方法

更新于 约 4 分钟读完客户端教程 · Windows客户端

本文要点

  • sing-box 在 Windows 上只有命令行程序,新手建议改用图形界面客户端。
  • 需要机场提供 sing-box 格式的配置,保存为 config.json 后运行。
  • 先用 check 命令检查配置再 run;配置含 TUN 入站时要用管理员终端启动。

sing-box 是什么

sing-box 是 SagerNet 开发的开源通用代理平台,用一份 JSON 配置文件描述入站(本机怎么接收流量)、出站(节点)和路由规则。官方文档在 sing-box.sagernet.org。

需要先明确一点:Windows 上官方只提供命令行程序,没有图形界面。它适合愿意自己看配置和日志的用户;只想点几下就能用的话,选 Clash Verge Rev 或 v2rayN 更合适,后者本身就内置了 sing-box 内核。

下载程序

  1. 打开官方仓库 SagerNet/sing-box 的 Releases 页面。
  2. 普通电脑下载文件名带 windows-amd64 的压缩包,ARM 设备选 windows-arm64。
  3. 解压到一个固定目录,例如 C:\sing-box,里面的 sing-box.exe 就是主程序。

准备配置文件

sing-box 命令行本身没有「订阅」的概念,它只读取本地的配置文件:

  1. 登录机场用户中心,在订阅或客户端下载页面找到 sing-box 格式的配置。
  2. 把内容保存为 config.json,放到 sing-box.exe 所在目录。
  3. 机场调整节点后,需要重新下载覆盖这份文件再重启程序。

如果机场不提供 sing-box 格式,不建议把订阅链接粘贴到来历不明的在线转换网站,订阅链接等同于账号凭证,原因见 订阅链接泄露怎么办。

用命令行启动

在程序目录的空白处按住 Shift 点右键,选择打开 PowerShell 或终端窗口,依次执行:

.\sing-box.exe version
.\sing-box.exe check -c config.json
.\sing-box.exe run -c config.json
  1. version 能输出版本信息,说明程序可以正常运行。
  2. check 没有任何报错,说明配置文件格式正确。
  3. run 之后窗口持续输出日志,保持窗口不关,代理就在运行。按 Ctrl + C 停止。

系统代理还是 TUN

流量怎么进入 sing-box,取决于配置文件里的入站类型:

入站类型 表现 你需要做什么
mixed(HTTP / SOCKS 混合端口) 在本机开一个代理端口 到 Windows 代理设置里手动填 127.0.0.1 和该端口,或由配置里的自动设置系统代理选项完成
tun(虚拟网卡) 接管整台电脑的流量 必须用「以管理员身份运行」的终端启动

两种方式的差别和适用场景,见 系统代理设置 与 TUN模式使用。

验证与常见报错

启动后用浏览器打开一个需要代理的网站,同时观察终端里是否出现对应的连接日志。有日志且网页能打开,说明已经生效。

报错现象 最可能的原因 处理
check 提示字段无法解析 配置格式与内核版本不匹配 sing-box 的配置字段会随版本调整,换成机场说明的内核版本,或重新下载最新配置
提示端口绑定失败 端口被其他代理软件占用 退出其他同类软件,或修改入站端口
TUN 相关的权限错误 没有管理员权限 用管理员终端重新运行
能启动但网页打不开 系统代理没有指向 sing-box 检查 Windows 代理设置里的地址和端口

TUN 始终起不来时,按 TUN模式无法使用 逐项排查。

常见问题

sing-box 在 Windows 上有图形界面吗?

官方在 Windows 上只发布命令行程序,图形客户端只覆盖安卓和苹果平台。想要图形界面,可以使用内置 sing-box 内核的 v2rayN,或者直接换用 Clash Verge Rev。

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

不可以。sing-box 使用自己的 JSON 配置格式,不能直接读取 Clash 的 YAML 订阅。需要机场提供 sing-box 格式的配置,机场没有提供时建议换用支持现有订阅格式的客户端。

sing-box 启动后窗口一闪而过怎么办?

不要双击运行,先打开 PowerShell 进入程序目录,再执行 check 命令,错误信息会留在窗口里。多数是配置文件格式与内核版本不匹配,或者本地端口已被其他软件占用。

相关Windows客户端文章

全部