服务
services 运行既非入站也非出站的后台组件:sing-box API、systemd-resolved 替代品、Shadowsocks 服务器管理 API、Tailscale DERP 中继、Hysteria realm 服务器、USB/IP 设备共享,以及若干辅助组件。条目形状与配置中其他位置一致 — 扁平的 type / tag 信封加上所选类型自身的字段,处于同一层级。
信封
| 字段 | 类型 | 默认值 | 允许值 | 描述 |
|---|---|---|---|---|
type | string | — | api | resolved | ssm-api | hysteria-realm | derp | ccm | ocm | oom-killer | usbip-server | usbip-client | 服务类型。决定对象其余部分解码到哪个选项结构体。部分类型只存在于带相应标签的构建中 — 见说明。 |
tag | string | — | — | 该服务的唯一名称,用于日志行。 |
源码: option/service.go:18-22 · 锚定版本 v1.14.2 (af6e64c)
服务类型
| 类型 | 运行内容 |
|---|---|
api | sing-box API:用于观察与控制运行中实例的 gRPC / gRPC-Web 服务器 —— 日志、出站组、Clash 模式、连接等。供图形客户端的远程控制、sing-box Dashboard 与 sing-box api 命令使用。见 API 服务。 |
resolved | systemd-resolved 的直接替代品:DNS 存根监听器(默认 127.0.0.53:53),通过 sing-box DNS 应答。与 resolved DNS 服务器类型配对使用。 |
ssm-api | Shadowsocks Server Management API — 在运行中的 Shadowsocks 入站上创建、移除用户的 HTTP 端点。 |
hysteria-realm | Hysteria2 NAT 穿透的会合服务器。见 Hysteria2 页面的 realm 字段。见 Hysteria realm。 |
derp | 内嵌的 Tailscale DERP 中继服务器。见 Tailscale。 |
ccm / ocm | Claude Code Multiplexer / OpenAI Codex Multiplexer:通过自定义令牌把本机的 Claude Code 或 OpenAI Codex 订阅共享给远程客户端,OAuth 鉴权在本机完成。 |
oom-killer | 内存不足保护(memory_limit、safety_margin、检查间隔),用于内存受限的部署。 |
usbip-server / usbip-client | 通过 USB/IP 导出 / 导入 USB 设备。见 USB/IP。 |
最简示例
json
{
"services": [
{
"type": "resolved",
"tag": "resolved",
"listen": "127.0.0.53",
"listen_port": 53
}
]
}说明
resolved内嵌与入站相同的ListenOptions;省略时listen默认127.0.0.53,listen_port默认53。ssm-api接受一个servers映射(路径 → Shadowsocks 入站 tag)和可选的cache_path。- 构建标签决定可用性:
derp需要with_tailscale,ccm需要with_ccm,ocm需要with_ocm,hysteria-realm需要with_quic,usbip-server/usbip-client需要with_usbip(Linux、Windows,以及带 CGO 的 macOS)。api、resolved、ssm-api与oom-killer始终编译在内。官方发布的二进制包含以上全部标签。 api内嵌ListenOptions。客户端以authorization: Bearer <secret>认证;secret为空时不做认证,因此在非回环地址上监听时务必设置。可选的dashboard块会下载 sing-box Dashboard,并在同一监听器的/dashboard/下提供。hysteria-realm只承载信令:位于 NAT 之后的 Hysteria2 服务端登记其通过 STUN 发现的公网地址,客户端查询后打洞建立直连 QUIC 连接,此后代理流量在两者之间直接传输。usbip-server默认监听 3240 端口,并与标准 USB/IP 客户端保持互通;usbip-client要求服务端为 sing-box(sing-usbip)。- 未注册的
type会在启动时报 "unknown service type"。
跨内核说明
源码: option/service.go:18-22 · v1.14.2 (af6e64c)
