sing-box 使用 JSON 配置文件。下面的结构是理解文档导航的地图,不是可以直接运行的完整配置:
{
"log": {},
"dns": {},
"ntp": {},
"certificate": {},
"certificate_providers": [],
"http_clients": [],
"endpoints": [],
"inbounds": [],
"outbounds": [],
"route": {},
"services": [],
"experimental": {}
}
核心路径怎么读
| 部分 | 用途理解 | 下一步 |
|---|---|---|
inbounds | 流量如何进入 sing-box,例如本地代理监听或 TUN | inbound 与 outbound |
outbounds | 匹配后的连接通过哪种出口发出 | 按官方 Outbound 字段文档选择类型 |
route | 规则如何选择动作或出口 | 搭配 rule-set 与 DNS 阅读 |
dns | DNS 服务器与 DNS 规则如何工作 | 注意目标版本中的 DNS 迁移变化 |
endpoints | 官方新结构中承载特定 endpoint 能力 | 旧配置升级时查迁移文档 |
experimental | 实验或配套能力,不应默认视为必需配置 | 只在明确需求时引入 |
配置命令
配置文档列出三个直接有用的命令:
sing-box check
sing-box format -w -c config.json -D config_directory
sing-box merge output.json -c config.json -D config_directory
check用来在运行前检查配置。format用来统一配置格式;编辑前应保留版本控制或备份。merge适合有多个配置输入、需要生成一个输出文件的维护流程。
命令所需参数和目标版本行为,应以当前版本配置文档为准。
不要跳过迁移核验
当配置来自较早版本、旧教程或第三方生成器时,结构上的 JSON 正确并不保证字段仍被当前版本支持。GeoIP 和 Geosite 已在 1.12.0 被移除;对升级场景,请配合稳定版升级与配置迁移使用。