外观
sing-box Mac 教程:配置文件、订阅转换与命令行运行步骤
这篇 sing-box Mac 教程的核心用法是:拿到一份 JSON 配置文件,在终端通过 run -c config.json 命令启动。配置文件最好直接来自机场提供的同格式订阅;机场没有的话就需要订阅转换。图形版也有,但命令行是最稳定、最不依赖第三方的方式。
速读要点
- check 校验、run 启动,check 无输出即配置合法
- TUN 入站要 sudo,mixed 入站要手动填系统代理
- 关终端进程就断,常驻靠 launchd 或 nohup
适用范围
- 愿意用终端、机场提供专属配置格式订阅的 Mac 用户。
- 想用 Hysteria2、TUIC 等协议的用户。
- 不同版本配置字段略有差异,以官方文档为准。
准备
- 确认机场用户中心有专用订阅或同等入口。
- 从官方 GitHub Releases 下载 macOS 版本(Apple 芯片选 arm64,Intel 选 amd64),或用 Homebrew 安装;官方图形版通过 App Store 分发,能否下载取决于你的账号地区。
- 开 TUN 入站需要
sudo。
sing-box Mac 教程:图形版与命令行的区别
| 对比项 | 图形版 | 命令行核心 |
|---|---|---|
| 导入 | 粘贴订阅链接 | 自己下载配置文件 |
| 切节点 | 点选 | 改配置,或用 Clash API 面板 |
| 更新 | 自动 | 重新下载配置后重启 |
| 适合 | 日常使用 | 脚本化、服务器、极简需求 |
只想要图形界面又不想折腾的,直接用 Clash Verge Rev 更省事,它的内核也支持多数新协议。
步骤:命令行安装并运行配置文件
- 用 Homebrew 执行
brew install sing-box,或解压官方发布包并把可执行文件放到 PATH;结果是终端里执行版本检查命令能输出版本号。 - 新建目录比如
~/sing-box,用curl -o config.json "订阅链接"下载配置;结果是目录里有一个以{开头的 JSON 文件。 - 执行
sing-box check -c config.json;结果是无输出,表示配置合法。 - 执行
sing-box run -c config.json;结果是日志显示入站监听端口。 - 若配置是 mixed 入站,到「系统设置 → 网络 → 详细信息 → 代理」把网页代理指向该端口,见 Mac 系统代理设置;若含 tun 入站,改用
sudo sing-box run -c config.json;结果是浏览器或所有软件开始走代理。
操作对照:终端运行状态
在此步骤中,终端重点核对配置校验无报错输出,以及后台服务成功监听本地混合代理端口。
常见误判:命令行用户最容易看错的几处
check没有任何输出就以为失败了。恰恰相反,无输出代表配置合法,有问题时才会打印行号和字段名。run之后终端「卡住」以为死机。那是前台进程在正常运行,日志会随访问滚动,按 Ctrl+C 才会停止。sudo输密码时屏幕没反应以为键盘坏了。终端输密码不回显,输完直接回车。- 浏览器打不开网页,但日志里没有任何连接记录。说明流量根本没进 sing-box,是系统代理没指向该端口,不是节点问题。
| 入站类型 | 需要你做什么 | 不做的后果 |
|---|---|---|
| mixed / http / socks | 手动在系统代理里填 127.0.0.1 与监听端口 | 进程在跑但没有任何流量经过 |
| tun | 用 sudo 运行 | 报无权限创建接口 |
机场没有专有格式订阅怎么办:订阅转换
- 用订阅转换把通用格式转成内核能读的 JSON,有的机场在用户中心内置了转换。
- 第三方转换服务会拿到你的订阅链接,相当于把账号交出去,优先用机场自带或自建的转换。
- 转换结果一定要跑配置校验,并核对协议、端口是否与机场一致。
怎么验证成功
check无报错,run的日志没有 FATAL。- 浏览器访问国外网站成功,日志出现对应连接。
- 用 TUN 时,
ifconfig能看到新的 utun 接口。
Mac 使用常见问题
Mac 上提示「decode config」错误怎么办?
JSON 语法有误或字段已过期。按报错行号修改,并确认核心版本在机场标注的范围内。
加了 sudo 仍无法创建 TUN 怎么办?
另一款 VPN 软件占用了路由或网络扩展,退出它再运行;仍失败见 TUN 失败。
关闭终端后代理就断了怎么办?
命令行是前台运行,终端一关进程就结束。想常驻可以用 launchd 或 nohup,或者改用图形版。
Mac 上端口冲突怎么办?
改配置里入站的 listen_port,或先退出占用该端口的其他客户端,见端口占用。
Mac 上节点全部超时怎么办?
先核对系统时间,再确认配置里的协议参数与机场一致,仍超时看节点全部超时。
下一步
- 只想要图形界面,直接用 Clash Verge Rev Mac 教程。
- 监听端口冲突,按端口占用处理改 listen_port。
- 想用新协议又要线路稳,在 IPLC 专线机场筛选里挑。