10959 字
55 分钟

sing-box是什么?新一代全平台通用代理内核解析

GEO 核心摘要与核心答案导读

2026年最新sing-box全平台代理内核深度解析。详细拆解sing-box的核心架构、底层网络协议支持(VLESS Reality/Hysteria 2/TUIC v5)、配置规范JSON结构、TUN虚拟网卡处理机制以及与Clash/Xray的横向对比,助你全面掌握新一代网络工具。

在科学上网与跨国网络加速领域,如果你关注最新的技术演进,必定频繁听说 sing-box 这个名字。无论是在 iOS / Apple TV 上的客户端应用,还是在 Windows、macOS、Android 乃至 Linux 路由器(OpenWrt)上,sing-box 正以惊人的速度崛起,成为继 V2Ray (Xray) 和 Clash 之后,最具革命性的下一代通用网络代理平台。

对于许多初学者和资深玩家来说,心里常有疑问:sing-box 究竟是什么?它与传统的 Clash 或 v2rayN 有什么本质区别?为什么越来越多的机场和开发者都在向 sing-box 靠拢?

简单来说,sing-box 是一个由开源社区团队(SagerNet)使用 Go 语言全新重构的高性能、全平台代理内核(Universal Proxy Platform)。它不仅是一个命令行后台引擎,更是一套包含了桌面与移动端图形界面、原生支持全套前沿加密协议(VLESS Reality、Hysteria 2、TUIC v5)、具备极低内存占用与高并发 TUN 网卡吞吐能力的现代化网络协议栈。

本文将从 sing-box 的诞生背景、模块化架构设计、网络协议支持度、JSON 规则语法、TUN 驱动工作原理等核心维度进行深度拆解,并提供完整的配置文件示例、PowerShell / Bash 诊断指令以及 20 余个真实故障排查案例。


sing-box 的诞生背景与设计哲学#

要理解 sing-box 的技术优势,必须先回顾传统代理工具的发展困境。

传统代理工具的历史包袱#

  1. Clash 生态的停滞与分支碎片化:原版 Clash (Clash Premium) 内核于 2023 年停止维护后,社区产生了 Mihomo (Clash.Meta) 等分支。虽然 Mihomo 极其优秀,但 Clash 架构本身历史遗留的 YAML 语法、过重的内存缓存机制,使得其在嵌入式设备(如 128MB 内存的路由器)或 Apple TV / iOS 等资源受限平台上显得较为吃力。
  2. V2Ray / Xray 的模块耦合与臃肿:Xray-core 拥有极强的前沿协议支持(如 VLESS Vision),但其配置文件结构繁琐、JSON 层级极深,且核心代码库历经多年演进,模块间耦合度较高,跨平台移动端 UI 适配成本昂贵。

sing-box 的三大核心设计原则#

为了彻底解决上述痛点,sing-box 从第一行代码开始就确立了极简与高效的设计原则:

  • 完全模块化与轻量化(Modular & Lightweight):sing-box 采用了高度解耦的组件设计。代码库中没有冗余的中间转换层,在编译时可以根据目标平台裁剪不必要的模块。这使得 sing-box 编译出来的二进制文件体积极小,静态运行内存占用仅为 30MB–60MB,非常适合运行在软路由、Apple TV 及轻量掌机上。
  • 第一方原生支持前沿协议(Native Modern Protocols):sing-box 不依赖任何第三方 Core 外挂。它将 VLESS RealityHysteria 2TUIC v5ShadowTLSSSHTor 等协议作为第一方核心功能原生集成,握手开销与 UDP 转发效率达到了行业顶尖水平。
  • 全平台统一架构(Unified Cross-Platform):sing-box 提供了统一的 JSON 配置规范与自研的图形客户端(Sing-box App)。无论是 Windows、macOS、Linux,还是 iOS、iPadOS、Android、Apple TV,用户都可以使用完全相同的配置文件与规则集,彻底打破了平台间的壁垒。

sing-box 内部核心模块架构拆解#

sing-box 内部采用了极其严谨的管道式流量处理架构。一个网络数据包进入 sing-box 后,会依次经过 Inbounds(入站) -> DNS(域名解析) -> Route(路由引擎) -> Outbounds(出站) 四大核心模块。

flowchart TD
subgraph ClientRequests ["客户端流量来源"]
R1["SOCKS5 / HTTP 端口请求"]
R2["TUN 虚拟网卡 IP 数据包"]
R3[" Redirect / TProxy 透明代理"]
end
subgraph singboxCore ["sing-box 核心处理管道"]
subgraph InboundModule ["1. Inbounds (入站监听)"]
I1["Mixed / Socks / HTTP"]
I2["TUN Device (gVisor/System Stack)"]
end
subgraph DNSModule ["2. DNS Engine (内置 DNS 路由)"]
D1["FakeIP 地址池 (198.18.0.0/16)"]
D2["DoH / DoT / QUIC 加密查询"]
end
subgraph RouteModule ["3. Route Engine (分流引擎)"]
M1["Rule-Sets 规则集 (.srs 二进制)"]
M2["Geosite / GeoIP 匹配树"]
M3["Process Name / User 匹配"]
end
subgraph OutboundModule ["4. Outbounds (出站执行)"]
O1["VLESS Reality 出站"]
O2["Hysteria 2 / TUIC v5 出站"]
O3["Direct 直连 / Block 拦截"]
end
end
subgraph ExtNetwork ["目标网络方向"]
N1["中国大陆网站 (直连)"]
N2["境外互联网目标 (加密代理)"]
end
R1 --> I1
R2 --> I2
R3 --> I1
I1 --> DNSModule
I2 --> DNSModule
DNSModule --> RouteModule
RouteModule -->|匹配 Direct| O3
RouteModule -->|匹配 Proxy| O1
RouteModule -->|匹配 Hy2| O2
O1 --> N2
O2 --> N2
O3 --> N1

1. Inbounds(入站模块)#

定义了 sing-box 如何接收来自系统或应用程序的流量。常见类型包括:

  • mixed:同时监听 HTTP 和 SOCKS5 协议的混合端口;
  • tun:创建系统级 TUN 虚拟网卡,接管全局 Layer 3 IP 数据包;
  • tproxy / redirect:用于 Linux / OpenWrt 软路由环境下的透明代理。

2. DNS(内置 DNS 引擎)#

sing-box 内置了一套功能极其强大的 DNS 路由解析器。它支持:

  • Fake-IP 模式:瞬间响应假 IP 地址,规避本地 DNS 污染并实现 0ms 解析延迟;
  • 多源 DoH (DNS over HTTPS) / DoT / DoQ (DNS over QUIC) 并行查询与分流;
  • 独立 DNS 路由规则:根据域名分流结果,将国内域名发送给 223.5.5.5 解析,海外域名经由代理发送给 1.1.1.1 解析。

3. Route(分流路由引擎)#

sing-box 的分流引擎摒弃了传统的粗暴规则扫描,引入了全新的编译型规则集:

  • rule_set 规则集:支持将数万条规则预编译为 .srs 高效二进制文件,在内存中实现位运算级极速匹配;
  • 丰富的规则匹配维度:支持 domaindomain_suffixip_cidrportprocess_name(进程名)、package_name(安卓包名)及 clash_mode

4. Outbounds(出站模块)#

定义了数据包离开 sing-box 后的加密转发路径。支持所有的现代加密协议(VLESS、VMess、Hysteria2、TUIC、Shadowsocks、Trojan、WireGuard、Tor、SSH),并支持 selector(节点选择)和 urltest(自动延迟测试)分组。


sing-box 与 Clash (Mihomo) & Xray-core 横向对比#

为了更加客观地评价 sing-box,下表将其与目前桌面端和路由器端最主流的 Clash Verge Rev (Mihomo 内核) 以及 v2rayN (Xray-core 内核) 进行全方位对比:

技术指标与特性sing-boxClash Verge Rev (Mihomo)v2rayN (Xray-core)
开发语言与理念Go (通用平台极简重构)Go (Clash 拓展增强版)Go (经典 V2Ray 衍生扩展)
配置文件格式规范化 JSON 结构YAML 语法结构JSON 深度嵌套结构
规则匹配引擎.srs 二进制规则集 (极速)Radix Tree 基数树Protobuf geoip.dat
内存静态开销最省 (~30MB – 60MB)中等 (~80MB – 150MB)较大 (~100MB – 180MB)
Hysteria 2 原生性能第一方原生 (UDP极速)完美兼容支持依赖第三方内核调用
VLESS Reality 支持原生完美支持完美兼容支持官方原生发起者
TUIC v5 协议支持第一方原生支持完美兼容支持不支持 / 需插件扩展
Apple TV 平台支持官方原生应用完美支持无官方应用无官方应用
TUN 模式性能极致 (gVisor/System混合)优秀 (Wintun 驱动)一般 (System/Wintun)
软路由 (OpenWrt) 占用极低 CPU 与内存中等占用较高占用
上手学习曲线中等 – 较高 (需理解JSON)低 – 中等 (规则丰富)中等 (界面选项较多)

配置代码实战:完整 sing-box JSON 生产级配置示范#

以下是一份可以直接用于生产学习的完整 sing-box JSON 配置文件,包含了日志、DoH DNS 配置、混合端口与 TUN 双入站、VLESS Reality 与 Hysteria2 出站以及基础分流规则:

{
"log": {
"level": "info",
"timestamp": true
},
"dns": {
"servers": [
{
"tag": "dns-remote",
"address": "https://1.1.1.1/dns-query",
"address_resolver": "dns-direct",
"detour": "proxy"
},
{
"tag": "dns-direct",
"address": "223.5.5.5",
"detour": "direct"
},
{
"tag": "dns-fakeip",
"address": "fakeip"
}
],
"rules": [
{
"outbound": "any",
"server": "dns-direct"
},
{
"clash_mode": "Direct",
"server": "dns-direct"
},
{
"query_type": [
"A",
"AAAA"
],
"server": "dns-fakeip"
}
],
"fakeip": {
"enabled": true,
"inet4_range": "198.18.0.0/15"
},
"independent_cache": true
},
"inbounds": [
{
"type": "mixed",
"tag": "mixed-in",
"listen": "127.0.0.1",
"listen_port": 2080
},
{
"type": "tun",
"tag": "tun-in",
"interface_name": "singbox-tun",
"inet4_address": "172.19.0.1/30",
"auto_detect_interface": true,
"strict_route": true,
"stack": "gvisor",
"sniff": true
}
],
"outbounds": [
{
"type": "selector",
"tag": "proxy",
"outbounds": [
"vless-reality-node",
"hysteria2-node"
],
"default": "vless-reality-node"
},
{
"type": "vless",
"tag": "vless-reality-node",
"server": "example.com",
"server_port": 443,
"uuid": "a0b1c2d3-e4f5-6789-abcd-ef0123456789",
"flow": "xtls-rprx-vision",
"tls": {
"enabled": true,
"server_name": "www.microsoft.com",
"utls": {
"enabled": true,
"fingerprint": "chrome"
},
"reality": {
"enabled": true,
"public_key": "Qq4X...YourPublicKey...",
"short_id": "6ba7b810"
}
}
},
{
"type": "hysteria2",
"tag": "hysteria2-node",
"server": "hy2.example.com",
"server_port": 8443,
"password": "your-password-here",
"tls": {
"enabled": true,
"server_name": "hy2.example.com"
}
},
{
"type": "direct",
"tag": "direct"
},
{
"type": "block",
"tag": "block"
}
],
"route": {
"rules": [
{
"action": "sniff"
},
{
"protocol": "dns",
"action": "hijack-dns"
},
{
"ip_is_private": true,
"outbound": "direct"
},
{
"clash_mode": "Direct",
"outbound": "direct"
},
{
"clash_mode": "Global",
"outbound": "proxy"
},
{
"rule_set": "geosite-cn",
"outbound": "direct"
},
{
"rule_set": "geoip-cn",
"outbound": "direct"
}
],
"rule_set": [
{
"tag": "geosite-cn",
"type": "remote",
"format": "binary",
"url": "https://raw.githubusercontent.com/SagerNet/sing-geosite/rule-set/geosite-cn.srs",
"download_detour": "direct"
},
{
"tag": "geoip-cn",
"type": "remote",
"format": "binary",
"url": "https://raw.githubusercontent.com/SagerNet/sing-geoip/rule-set/geoip-cn.srs",
"download_detour": "direct"
}
],
"auto_detect_interface": true
}
}

关键 JSON 字段解析:#

  1. dns.fakeip.inet4_range:定义 Fake-IP 的保留地址网段(198.18.0.0/15),实现 DNS 0ms 本地秒响应。
  2. inbounds.tun.stack:指定 TUN 模式的网络栈类型,设置为 gvisor 可在用户态安全高效处理 IP 报文,避免内核崩溃。
  3. route.rule_set:指定远程 .srs 二进制预编译规则集,匹配性能极高。

命令行实战:sing-box 编译与排查命令#

无论是在 Linux 软路由还是 Windows PowerShell 下,熟练使用 sing-box 官方命令行能大幅提升运维排错效率。

1. 验证配置文件格式与编译 Rule-Set#

Terminal window
# 1. 适用环境: Linux / macOS / Windows PowerShell
# 2. 执行目的: 检查 config.json 语法是否正确,避免启动闪退
sing-box check -c config.json
# 编译 JSON 规则文本为高效率二进制 .srs 文件
sing-box rule-set compile site_cn.json -o site_cn.srs

2. Linux 软路由后台服务启动与状态日志检查#

Terminal window
# 开启系统服务
sudo systemctl enable --now sing-box
# 实时查看 sing-box 运行日志
journalctl -u sing-box -f -o cat

20 个真实排查案例与诊断决策树#

为了应对复杂的部署场景,本节建立了“sing-box 故障诊断树”,并拆解 20 个典型案例。

故障诊断流程树#

[sing-box 无法正常工作]
┌─────┴─────┐
▼ ▼
[配置报错] [网络断开/无法连通]
│ │
运行check 检查inbound监听与出站配置
语法检查 │
┌─────┴─────┐
▼ ▼
[DNS解析失败] [节点握手超时]
│ │
检查DoH地址 检查TLS/Reality公钥
与FakeIP网段 与服务器端口开放

案例一:启动 sing-box 提示 parse config error: unknown field inbounds.0.socks_port#

  • 问题现象:将旧版配置文件导入 sing-box v1.8 后无法启动,终端报错 unknown field socks_port
  • 环境信息:sing-box v1.8.0。
  • 初步判断:sing-box 已经在 1.8 规范中弃用了独立的 socks_port 字段,统一合并为 type: mixedlisten_port
  • 排查路径:运行 sing-box check -c config.json,准确定位报错行号。
  • 关键证据:JSON 字段不符合当前版本的 Schema 定义。
  • 执行步骤:将 inbounds 中的配置修改为: {"type": "mixed", "listen": "127.0.0.1", "listen_port": 2080}
  • 结果验证:再次运行 sing-box check,提示 configuration is valid,启动成功。
  • 复盘:sing-box 迭代迅速,需关注官方 Version Migration Guide。

案例二:开启 TUN 模式后系统全局断网,提示 TUN device permission denied#

  • 问题现象:在 Linux / Windows 下配置了 type: tun 入站,启动时直接报错退出。
  • 环境信息:Ubuntu 22.04 LTS / Windows 11。
  • 初步判断:创建 TUN 虚拟网卡需要操作系统内核的管理员特权(CAP_NET_ADMIN 或 Windows Administrator)。
  • 执行步骤
  • Linux 下:使用 sudo sing-box run -c config.json 运行,或给二进制赋予权限 sudo setcap cap_net_admin,cap_net_bind_service=+ep /usr/local/bin/sing-box
  • Windows 下:右键终端选择 “以管理员身份运行”
  • 结果验证:成功创建 singbox-tun 虚拟网卡,网络恢复畅通。
  • 复盘:TUN 驱动工作在 Layer 3,特权提升是硬性前提。

案例三:Apple TV 上的 sing-box 客户端连接节点后无流量吞吐#

  • 问题现象:在 Apple TV (tvOS 17) 上打开 sing-box,节点显示延迟正常,但所有视频 App 提示“网络未连接”。
  • 环境信息:Apple TV 4K 3rd,tvOS 17.4,sing-box App。
  • 初步判断:Apple TV 局域网 DNS 与 sing-box 内置的 dns.rules 发生死锁,或者路由规则中缺少对本地局域网(192.168.x.x)的直连白名单。
  • 执行步骤:在配置文件 route.rules 的顶部加入 { "ip_is_private": true, "outbound": "direct" },并将 Apple TV 的系统 DNS 设置为自动获取。
  • 结果验证:重新连接,Apple TV 视频流瞬间秒开。
  • 复盘:Apple TV 严格依赖局域网 AirPlay 与家庭组网,必须优先放行私有 IP。

案例四:Hysteria 2 节点频繁断连,提示 UDP Buffer Overflow#

  • 环境信息:Windows 11,sing-box v1.8.3。
  • 原因解析:Windows 系统的网络 Socket UDP 缓冲区默认配置过小,在高并发流量下导致数据包溢出。
  • 解决步骤:在 sing-box 的 outbounds Hy2 配置中添加 "up_mbps": 100, "down_mbps": 500 显式限制速率,或在系统注册表中调大 UDP Buffer。

案例五:导入机场转换的 JSON 订阅后无法访问任何国内网站#

  • 环境信息:macOS Sonoma,sing-box。
  • 原因解析:转换后的规则集中缺少 geosite-cn,导致所有国内流量默认落入最底部的 proxy 规则。
  • 解决步骤:在 route.rules 中显式添加 geosite-cn 规则指向 direct

案例 6–20 实战疑难简表#

案例编号故障场景描述核心根因分析精准修复方案
案例 6sing-box 启动报 address already in use本地 2080 端口已被其他代理软件占用修改配置文件中的 listen_port3080
案例 7Windows 下 TUN 模式与 VMware 虚拟机冲突虚拟网卡跃迁点(Metric)被抢占设置 auto_detect_interface: true 自动探测主网卡
案例 8VLESS Reality 节点连接测试提示 TLS Handshake Timeout节点 public_keyshort_id 填写错误重新核对并填写正确的 Reality 密钥参数
案例 9软路由 Linux 下 CPU 占用率过高选择了开销较大的 stack: system在 TUN 配置中将 stack 切换为 gvisor
案例 10Telegram 无法加载图片与视频Telegram 的 IP 段被误判走直连在规则中添加 "geoip": "telegram", "outbound": "proxy"
案例 11Android sing-box 开启后消耗电池电量极快内置 DNS 查询陷入死循环在 DNS 配置中开启 independent_cache: true 缓存
案例 12访问 HTTPS 网站报 cert common name invalid嗅探模块把 SNI 解析到了错误的域名route.rules 中配置 "action": "sniff" 白名单
案例 13远程 .srs 规则文件下载失败GitHub 资源在国内访问被污染拦截修改 download_detourproxy 走代理下载规则
案例 14sing-box 在 OpenWrt 下掉进程闪退路由器 OOM 内存溢出触发 Linux Kill增加 Swap 交换分区或关闭不必要的内存缓存
案例 15开启 FakeIP 模式后打不开部分公司内网应用假 IP 破坏了内网实名 DNS 鉴权机制dns.fakeip 中将内网域名加入 exclude_rule
案例 16节点名在选择器中重复导致启动失败Outbounds 中的 tag 标签必须全局唯一重新修改 JSON 中的 tag 字符串确保唯一性
案例 17TUIC v5 节点在高延迟线路上丢包率高拥塞控制算法未能自动选择 BBR在 TUIC 配置中添加 "congestion_control": "bbr"
案例 18sing-box 控制台持续报 Warning deprecated option使用了旧版本的过时配置语法使用 sing-box check 命令引导更新字段名称
案例 19Docker 容器内无法访问宿主机的 sing-box监听绑定在 127.0.0.1 隔离地址listen 修改为 0.0.0.0 允许跨容器通信
案例 20macOS 升至 Sequoia 后 TUN 模式无法自动装载系统安全策略屏蔽了未签名内核扩展进入系统设置 -> 隐私与安全性 -> 允许 sing-box 扩展


iOS / Apple TV NetworkExtension 内存极限裁切技术#

在 iOS 和 Apple TV (tvOS) 操作系统上,所有网络代理软件(如 Quantumult X、Shadowrocket、Stash 以及 sing-box)都必须运行在苹果系统限定的 NetworkExtension (NEProvider) 进程沙盒中。

苹果对 NetworkExtension 沙盒施加了极其严苛的物理内存硬性限制:

  • 在 iOS 移动设备上,扩展进程的最大物理内存消耗不得超过 50 MB
  • 在 Apple TV (tvOS) 设备的扩展进程中,限制更是被压缩到了恐怖的 15 MB

如果一个代理内核在加载庞大的规则集、建立数百个 TCP 并发连接或解析大容量 PAC / GeoIP 数据库时,内存稍有超标,iOS 内核就会立刻触发 EXC_RESOURCE 异常,强行杀死代理扩展进程,导致用户表现为“代理图标突然闪退离线”。

[苹果 iOS / tvOS 系统 NetworkExtension 内存瓶颈]
├── iOS 扩展内存上限: 50 MB ────► 超标触发 EXC_RESOURCE 强杀进程
└── tvOS (Apple TV) 上限: 15 MB ──► 绝大多数传统代理软件无法稳定运行
[sing-box 内存裁剪攻坚机制]
├── 预编译 .srs 二进制规则集: 占用降低 80%,内存映射 (mmap) 极速匹配
├── Go 语言 sync.Pool 零内存分配: 避免小数据包并发触发垃圾回收 (GC)
└── Cgo 嵌入式轻量封装: 内存开销稳定锁定在 12MB - 25MB 范围

sing-box 如何突破 15MB 内存生死线?#

  1. .srs 二进制编译规则集:传统的文本格式规则库(如几万行的域名列表)在加载到内存时,需要解析成庞大的树状节点对象,产生数万个独立内存指针,极其消耗内存。sing-box 引入了预编译的 .srs(sing-box rule-set)二进制文件。在运行时,内核可以通过内存映射(Memory Mapping)直接读取紧凑的位图与字节数组,内存占用相比传统 Clash 规则集降低了近 80%。
  2. Go sync.Pool 零分配缓冲池:在处理千兆 TCP/UDP 数据包吞吐时,sing-box 广泛使用了 sync.Pool 机制重用固定大小的数据缓冲区。这意味着无论并发传输速率多高,内核不会频繁向 Go 运行时申请和释放新内存,有效阻止了内存碎片的产生,从根本上杜绝了因为 GC 延迟引发的内存突发飙升。

TUN 模式三大网络栈深度对比:gVisor vs System vs Mixed#

sing-box 在 inbounds.tun 配置中提供了三种可选的技术栈(stack):gvisorsystem 以及 mixed。选择不同的网络栈,直接影响着系统的 CPU 负载与软件兼容性。

1. stack: gvisor(用户态 TCP/IP 协议栈,推荐)#

  • 底层机制gVisor 是由 Google 开源的高性能沙盒内核网络栈。sing-box 将操作系统内核截获的 Raw IP 数据包直接交给运行在用户态的 gVisor 处理。
  • 优点:完全运行在用户态,安全性极高;跨平台行为 100% 一致;不会因为错误的 IP 数据包格式导致 Windows 或 Linux 系统蓝屏崩溃。
  • 缺点:由于在用户态模拟了完整 TCP 重组与 TCP 窗口控制,CPU 计算开销略高于原生系统栈。

2. stack: system(操作系统原生内核网络栈)#

  • 底层机制:sing-box 将 IP 数据包重新交回 Windows / Linux 操作系统的原生 TCP/IP 协议栈进行 Socket 拆包。
  • 优点:能够充分利用操作系统内核级别的 TCP Offloading(如 TSO/GRO 硬件加速),处理超大流量吞吐时 CPU 占用最低。
  • 缺点:在某些驱动不兼容的 Windows 机器上,可能会触发网卡驱动冲突。

3. stack: mixed(混合模式)#

  • 底层机制:对于 TCP 流量采用 system 栈提升吞吐效率;对于 UDP 流量采用 gvisor 栈避免 UDP 数据包丢包。

20 个高频故障排查案例深度分析(全)#

为确保排查流程科学高效,本节补充 15 个涵盖 Windows、macOS、Linux 及 Apple TV 环境的真实疑难杂症分析。


案例六:sing-box 在 Linux (OpenWrt) 上运行提示 fatal error: runtime: out of memory 崩溃#

  • 问题现象:在 256MB 内存的软路由上启动 sing-box,加载包含 10 万条规则的第三方 GeoIP 文本库时,软件直接挂掉并弹出 out of memory 报错。
  • 环境信息:OpenWrt 23.05,RAM 256MB,无 Swap 交换分区。
  • 初步判断:在加载未编译的原始文本规则时,Go 语言内存分配瞬间超出物理内存限制。
  • 排查路径:在 Linux 查看控制台输出,显示系统触发了 OOM Killer。
  • 关键证据:进程内存需求在初始化解析阶段突破物理内存界限。
  • 执行步骤:在 PC 端使用 sing-box rule-set compile site.json -o site.srs 命令,将文本规则编译为 .srs 二进制格式,并在配置文件中引入二进制 .srs 链接。
  • 结果验证:重新启动 sing-box,内存占用稳定在 28MB,流畅运行无报错。
  • 复盘:内存受限的嵌入式设备必须使用预编译的 .srs 二进制规则集。

案例七:Android 版 sing-box 开启后访问国内 App 图片加载极慢或无网#

  • 问题现象:手机安装 sing-box 开启代理后,访问海外网页正常,但打开微信朋友圈、淘宝图片加载极慢或频繁超时。
  • 环境信息:Android 14,sing-box App v1.8.5。
  • 初步判断:Android 系统的分流未拦截应用包名,或者本地 DNS 规则未将国内 DNS 与 FakeIP 彻底隔离。
  • 排查路径:打开 sing-box 日志,发现微信的图片域名解析到了海外代理节点,走了加密隧道转发。
  • 关键证据:规则匹配失误,国内流量被误判走代理。
  • 执行步骤:在配置文件 dns.rules 中将 geosite-cn 的 DNS 服务器强制指定为 dns-direct(如 223.5.5.5),并在 route.rules 中将 package_name: com.tencent.mm 加入直连白名单。
  • 结果验证:重新连接后,微信朋友圈图片秒级加载。
  • 复盘:Android 平台的 App 分流需要结合包名(Package Name)与 DNS 路由联动配置。

案例八:sing-box 配置了 Hysteria 2 节点后提示 tls: failed to verify certificate: x509: certificate signed by unknown authority#

  • 问题现象:添加自行搭建的 Hysteria 2 节点,测试连接时报错 TLS 证书校验失败。
  • 环境信息:macOS Sonoma,sing-box v1.8.0,自签证书节点。
  • 初步判断:节点的 TLS 证书使用了自签名证书,未被系统的受信任根证书颁发机构(CA)认可。
  • 排查路径:查看出站 TLS 配置,未配置 insecurecertificate_path
  • 关键证据:TLS 强安全校验拒绝未知的根证书。
  • 执行步骤:在节点的 tls 配置块中,暂时添加 "insecure": true(仅用于测试),或者将自签证书的根证书路径通过 "certificate_path": "/path/to/ca.crt" 显式导入。
  • 结果验证:测试节点连接成功,Hy2 流量恢复吞吐。
  • 复盘:生产环境建议申请免费的 Let’s Encrypt 或 ZeroSSL 证书以获得最佳安全性。

案例九:Windows 下 sing-box TUN 模式无法代理 CMD 或 PowerShell 中的 ping 命令#

  • 环境信息:Windows 11,sing-box。
  • 原因解析:Windows 的 ping 命令发送的是原生 ICMP 报文,而部分代理协议(如纯 HTTP/SOCKS5)不支持 ICMP 转发。
  • 解决步骤:在 sing-box 的 TUN 配置中启用 ICMP 代理重定向,或使用 curl 命令替代 ping 进行网络连通性测试。

案例十:sing-box 作为透明代理运行时,局域网设备无法通过软路由上网#

  • 环境信息:OpenWrt,sing-box 开启 TProxy 模式。
  • 原因解析:Linux 系统内核的 net.ipv4.ip_forward 转发开关未开启,或者 iptables / nftables 的 MANGLE 链未正确配置策略路由。
  • 解决步骤:执行 sysctl -w net.ipv4.ip_forward=1 并配置对应的 nftables 规则重定向流量至 2080 端口。

案例十一至二十实战排错简表#

案例编号故障场景描述核心根因分析精准修复方案
案例 11sing-box 配置文件中的 JSON 注释导致启动报错标准 JSON 格式不支持双斜杠 // 注释移除配置文件中的所有注释,或转换为标准无注释 JSON
案例 12macOS 下开启 TUN 模式提示 utun 接口冲突旧的代理软件退场时残留了虚拟网卡在终端执行 ifconfig 找到残留 utun 并使用命令删除
案例 13sing-box 配置 FakeIP 后访问局域网 NAS 提示地址无法找到FakeIP 范围覆盖到了局域网私有网段在 FakeIP exclude_rule 中添加 192.168.0.0/16
案例 14Hysteria 2 在高丢包环境下上传速度极慢未显式配置客户端上传带宽预期值在 Hy2 出站配置中添加 "up_mbps": 50 显式速率声明
案例 15sing-box 作为服务开机启动失败显示 Timeout启动时网络接口尚未获取到有效 IP 地址在 Systemd 服务文件中添加 After=network-online.target
案例 16节点配置中带有 clash_api 但无法打开 Web 界面缺少 external_ui 视觉 UI 资源文件夹下载 Clash-Dashboard 解压到指定目录并设置路径
案例 17TUIC v5 节点在高并发连接下突发丢包客户端与服务器端口之间发生了 UDP 状态解封在 TUIC 配置中调整 zero_rtt_handshake 策略
案例 18sing-box 在 Apple TV 上使用一段时间后无法自动刷新订阅Apple TV 后台刷新权限被系统关闭进入 tvOS 设置 -> 通用 -> 开启后台应用刷新功能
案例 19访问部分加密网站提示 TLS 1.3 握手失败节点代理服务器缺少 TLS 1.3 密码套件支持在 TLS 配置中允许降低版本回退至 tls_version: 1.2
案例 20sing-box 日志中大量出现 dns: no server for domainDNS 路由规则组未设置默认底线 serverdns.rules 最下方配置一条匹配任意域面的默认 DNS


sing-box 独立持久化缓存 (Cache File) 与高效 DNS 恢复机制#

在传统的代理内核中,每次重新启动软件或重启电脑,系统内存中的 Fake-IP 域名映射表以及 DoH 解析缓存都会被瞬间清空。这会导致重新联网后的前几分钟,所有网页和应用必须重新进行一轮域名解析,不仅增加了首包延迟,还容易触发 DNS 碰撞。

sing-box 在架构设计上引入了 experimental.cache_file(持久化缓存文件) 机制:

{
"experimental": {
"cache_file": {
"enabled": true,
"path": "cache.db",
"cache_id": "my_singbox_cache",
"store_fakeip": true
}
}
}

1. store_fakeip 内存映射持久化#

开启 store_fakeip: true 后,sing-box 会将内存中建立的 域名 <-> Fake-IP (198.18.x.x) 动态映射表同步写入本地轻量级数据库(如 cache.db)。当电脑休眠唤醒或软件重启时:

  • 内核会秒级将 cache.db 加载回内存;
  • 之前浏览器已打开的网页、正在下载的背景后台线程无需重新触发 DNS 重新查询,直接沿用历史 Fake-IP 映射;
  • 这在 Windows 11 和 macOS 设备休眠恢复时,能够实现网络“零缝隙秒连”。

2. 独立 DNS 缓存(Independent DNS Cache)策略#

传统的 DNS 模块往往依赖操作系统的 DNS 缓存策略。sing-box 内置的 DNS 路由引擎支持 independent_cache: true。内核会在用户态维护一份高优先级的 LRU(Least Recently Used)缓存链表。即便上游 DoH 服务器短时间内产生网络波动,sing-box 依然能从本地 LRU 缓存中提供 TTL 未过期的解析结果,显著提升了在弱网与高丢包环境下的解析健壮性。


前沿加密协议深拆:TUIC v5、ShadowTLS 与多级节点链式级联 (Chaining)#

除了广为人知的 VLESS Reality 和 Hysteria 2,sing-box 还在协议库中原生集成了 TUIC v5ShadowTLS,并提供了极其强大的 Outbound Cascading(节点多级级联) 逻辑。

1. TUIC v5 (Two-Way UDP QUIC Protocol)#

TUIC v5 是基于 QUIC 协议重构的高性能自定义代理协议。与 Hysteria 2 相比:

  • TUIC 更加侧重于 0-RTT 极速握手 与降低连接建立时延;
  • 它在 QUIC 的 Multiplexing(多路复用)基础上,实现了多条 TCP/UDP 数据流在同一条 QUIC 隧道内的并发无阻塞传输,从根本上消除了传统 TCP 代理的队头阻塞(Head-of-Line Blocking)问题。

2. ShadowTLS 协议伪装#

ShadowTLS 通过在客户端与代理服务器之间引入轻量级 SNI 握手转发,允许用户将自身的代理流量完美伪装成访问权威第三方 HTTPS 网站(如 Cloudflare 或 CDN 节点)的真实 TLS 握手。即便防火墙发起主动探测,收到的是真实目标服务器返回的合规证书,隐蔽性极高。

3. 多级节点链式级联 (Outbound Detour Chaining)#

在某些高隐私保护或复杂内网穿透场景下,用户希望流量先通过“前置国内中转节点 A”,再通过中转节点 A 发起连接至“落地海外节点 B”。

在 sing-box 中,可以通过在出站节点中配置 detour 参数,秒级实现任意多级节点的链式级联:

{
"outbounds": [
{
"type": "vless",
"tag": "landing-node",
"server": "landing.example.com",
"server_port": 443,
"detour": "relay-node"
},
{
"type": "shadowsocks",
"tag": "relay-node",
"server": "relay.example.com",
"server_port": 8388
}
]
}

在此配置中,发往 landing-node 的所有加密数据包,全会被自动二次封装并通过 relay-node 建立中转隧道。这种优雅的级联能力在传统代理软件中往往需要开启多个软件实例,而在 sing-box 中仅需一个原生 detour 字段即可搞定。


5 个新增深度实战案例解析#


案例二十一:开启 sing-box 后,WSL2 (Windows Subsystem for Linux) 子系统无法联网#

  • 问题现象:Windows 11 宿主机启动 sing-box 的 TUN 模式后,宿主机上网一切正常,但 WSL2 子系统终端内运行 apt updatecurl 命令完全超时无响应。
  • 环境信息:Windows 11 23H2,WSL2 (Ubuntu 22.04),sing-box v1.8.5。
  • 初步判断:WSL2 在默认 NAT 模式下拥有独立的 Hyper-V 虚拟网卡与子网。sing-box 的 TUN 网卡未能接管来自 Hyper-V 虚拟交换机(vSwitch)的出站 IP 数据包。
  • 排查路径:在 WSL2 中运行 route -n,发现网关指向 172.25.160.1,而在 Windows 宿主机中运行 route print,发现发往 WSL2 网段的路由未经过 sing-box TUN 接口。
  • 关键证据:Hyper-V 虚拟网卡流量避开了系统层 TUN 拦截。
  • 执行步骤
  1. 在 Windows 用户的家目录下创建或修改 .wslconfig 文件;
  2. 添加 [wsl2] 配置:networkingMode=mirrored(开启 WSL2 镜像网络模式);
  3. 打开 CMD 执行 wsl --shutdown 并重新启动 WSL2。
  • 结果验证:重新打开 WSL2 运行 curl https://www.google.com,瞬间返回 200 OK,WSL2 无缝共享 sing-box 代理。
  • 复盘:镜像网络模式让 WSL2 直接复用 Windows 宿主机的网络协议栈与 TUN 虚拟接口。

案例二十二:sing-box 配置 DoH 域名解析时触发无线死循环(DNS Loop)#

  • 问题现象:在 dns.servers 中将 DoH 服务器设置为 https://dns.cloudflare.com/dns-query,启动后日志瞬间弹出成百上千条 DNS 报错,CPU 飙升至 100%。
  • 环境信息:sing-box 命令行版 v1.8.0。
  • 初步判断:sing-box 为了向 dns.cloudflare.com 发起 HTTPS 请求,首先需要解析 dns.cloudflare.com 这个域名本身;而为了解析该域名,它又去调用该 DoH 服务器,从而触发了自我循环调用的 DNS 死锁(DNS Loop)。
  • 排查路径:查看日志,显示 resolving dns.cloudflare.com -> querying dns.cloudflare.com
  • 关键证据:DoH 服务器的 Host 域名解析未指定静态 Bootstrap(引导)IP。
  • 执行步骤:在 dns.servers 的 DoH 服务器配置中,添加 address_resolver 参数指向一个纯 IP 的直连 DNS,或者在 address 中直接填写 IP 形式:https://1.1.1.1/dns-query
  • 结果验证:重新启动 sing-box,死循环消失,日志恢复正常的域名解析记录。
  • 复盘:加密 DNS 服务器的域名必须指定硬编码 Bootstrap IP 或基础直连解析器。

案例二十三:sing-box 在 M1/M2/M3 芯片 Mac 上运行,休眠唤醒后 CPU 占用持续 100%#

  • 环境信息:macOS Sonoma,Apple Silicon M2 芯片,sing-box v1.8.2。
  • 原因解析:macOS 系统休眠时,TUN 虚拟网卡的文件描述符(File Descriptor)被系统挂起,唤醒后 Go 运行时的 netpoller 事件循环在无效句柄上陷入忙等待(Busy Loop)。
  • 解决步骤:在 sing-box 的 TUN 配置中开启 auto_detect_interface: true,并将内核更新至 v1.8.4 以上版本(修复了 macOS 唤醒句柄重置逻辑)。

案例二十四:使用 SSH Outbound 协议代理流量时,高并发连接导致 SSH 服务器拒绝连接#

  • 环境信息:Linux 客户端,sing-box,使用远程 Linux 服务器作为 SSH 出站。
  • 原因解析:SSH 协议原生设计不适合高并发多路复用,瞬间发起的数十个 TCP 请求触发了远程 SSH 服务端 /etc/ssh/sshd_config 中的 MaxStartups 保护阈值。
  • 解决步骤:在 sing-box 的 outbounds SSH 配置中启用多路复用参数 "multiplex": { "enabled": true }

案例二十五:Android 版 sing-box 开启后无法访问局域网内的路由器管理后台 (192.168.1.1)#

当在手机上开启 sing-box 全局代理后,经常遇到无法打开路由器后台网页 192.168.1.1 的问题。可以在 route.rules 中添加一条优先放行私有 IP 网段的硬性规则:

{
"ip_is_private": true,
"outbound": "direct"
}

结合 auto_detect_interface: true,内核即可自动判断局域网网段并进行毫秒级直连放行。

Windows 11 24H2 环境下 Wintun 驱动与物理网卡数据环路性能调优#

在 Windows 11 24H2 操作系统中,微软对底层网络驱动程序架构(NDIS 6.85)进行了重构。传统的 TAP-Windows 驱动由于采用了过时的虚套接字缓冲机制,在面对千兆光纤网络高并发大吞吐量传输时,常常会导致单个 CPU 逻辑核心占满、网络产生微小抖动甚至系统微小顿卡。

sing-box 默认集成了基于微软与 WireGuard 团队联合开发的 Wintun 驱动。Wintun 专门为第三层(Layer 3)IP 数据包转发设计,放弃了 TAP 驱动中繁琐的二层以太网包头模拟。在驱动层,Wintun 在内存中直接开辟了一块环形缓冲区(Ring Buffer),并通过 Windows 完成端口(IOCP)与 sing-box 运行时的 Go 协同程序(Goroutine)直接对接。

[传统 TAP 驱动模式]
应用数据包 ──► 二层以太网帧封装 ──► 虚拟网卡内存拷贝 ──► 内核解包 (CPU单核吃满)
[sing-box + Wintun 极速环路模式]
应用数据包 ──► 三层 IP 报文 ──► 内存环形缓冲区 (Ring Buffer) ──► Go 零拷贝处理 (吞吐提升300%)

在实际高并发场景下,使用 Wintun 驱动配合 sing-box 的 stack: gvisor 模式,能够使网络数据包处理开销相比传统驱动降低 60% 以上。此外,为了充分发挥 CPU 的多核处理能力,建议在 Windows 系统的网卡高级属性中开启“接收侧调节(RSS)”与“大型发送重载(LSO)”,从而保障在进行 4K/8K 超高清视频推流或百G超大文件下载时,系统的整体网络丢包率锁定在近乎零的水平。


硬件加速指令集(AES-NI / AVX2 / ARMv8 Crypto)对加密协议吞吐的影响#

科学上网客户端在处理高清视频流或高速数据传输时,大部分 CPU 资源其实被消耗在了数据包的加密与解密计算上。sing-box 作为基于 Go 语言原生开发的内核,能够自动识别并调用硬件底层的 CPU 加密指令集。

1. x86_64 架构下的 AES-NI 与 AVX2 指令集优化#

在现代 Intel 与 AMD 处理器上,针对使用 AES-128-GCM、AES-256-GCM 以及 TLS 1.3 加密套件的代理节点(如经典的 VLESS / VMess / Shadowsocks),sing-box 会直接调用 CPU 内置的 AES-NI (Advanced Encryption Standard New Instructions) 硬件指令集。

调用 AES-NI 硬件指令后,单核加密解密计算速度相比纯软件逻辑提升了 5 到 8 倍。即使在百兆甚至千兆满速下载时,CPU 的加解密开销仅占用不足 5% 的资源。此外,在处理大量并发数据包时,sing-box 还会利用 AVX2 / AVX-512 向量指令集进行内存数据的批量拷贝,彻底消除了应用层与内核层之间的数据传输瓶颈。

2. ARM64 架构(Apple M系列芯片与移动端)的 ARMv8 Crypto 加速#

在苹果 Mac (M1/M2/M3/M4 芯片)、iPhone、iPad 以及搭载高通骁龙处理器的 Android 手机上,sing-box 充分利用了 ARMv8 Crypto 拓展指令集以及 NEON 向量协同处理器。

特别是针对基于 UDP 的 Hysteria 2TUIC v5 协议,由于这两个协议使用了 ChaCha20-Poly1305 或 AES-128-GCM 加密,ARMv8 Crypto 指令集的硬解能力使得手机或 Apple TV 在进行数百兆流量吞吐时,芯片温度几乎没有明显上升,功耗降到了最低点,从根本上解决了移动设备开启代理后“发热严重、电池电量掉电飞快”的行业难题。


自建 VPS 节点用户的 Happy Eyeballs 双栈路由与连接保持调优#

对于喜欢自行购买海外 VPS 部署节点的进阶玩家来说,如何配置 sing-box 才能获得最稳定的长期连接体验,是一个非常关键的技术议题。

1. Happy Eyeballs (RFC 8305) 算法应用#

在目前复杂的网络环境中,许多海外服务器同时拥有 IPv4 和 IPv6 两个地址。然而,国内不同宽带运营商对 IPv6 线路的出海路由质量参差不齐。有时 IPv6 线路延迟极低,但丢包率很高;有时 IPv4 线路拥堵,但连接稳定。

sing-box 内置了符合 RFC 8305 标准的 Happy Eyeballs 算法。当配置文件中 domain_strategy 设置为 PreferIPv4PreferIPv6 时:

  • 内核在连接远程节点域名时,会同时向 IPv4 和 IPv6 目标发起握手探测;
  • 内核会根据实际回包响应时间与丢包情况,毫秒级自动选择质量最优的 IP 地址建立连接;
  • 避免了因为单条 IPv6 线路断连导致整个代理服务长时间挂起的隐患。

2. TCP Keep-Alive 与 UDP 心跳心包优化#

在长途跨国网络传输中,运营商的防火墙和 NAT 网关通常会对空闲连接设置较为苛刻的超时回收机制(如超过 30 秒没有数据交互的 TCP / UDP Socket 会被强制关掉)。

为了保持代理连接的长期在线,可以在 sing-box 出站配置中开启 TCP 保活与 UDP 心跳机制:

{
"outbounds": [
{
"type": "vless",
"tag": "my-vps",
"server": "vps.example.com",
"server_port": 443,
"tcp_fast_open": true,
"tcp_multi_path": false
}
]
}

通过开启 tcp_fast_open: true(TCP 快开),可以在首包握手阶段直接捎带 SYN 数据,将 TCP 建立连接的时间缩短一轮 RTT(往返延迟)。这对于需要频繁发起新请求的浏览场景,能带来极为明显的“秒开”体验。

常见问题 FAQ 深度补充专区#

Q6:sing-box 的 JSON 配置文件太难写,有什么可视化图形界面工具推荐吗?#

:目前生态中有非常优秀的第三方图形客户端。例如在 Windows / macOS / Linux 平台上,可以使用 GUI.for.SingBoxClash Verge Rev(切换 sing-box 内核);在 Android 上可以使用官方 sing-box AppNekoBox;在 iOS / Apple TV 上推荐使用官方 sing-box App。这些图形客户端均支持直接粘贴订阅链接自动生成可视化界面,无需手动手写 JSON。

Q7:sing-box 中的 Fake-IP 和 Real-IP 模式,在性能上有什么本质区别?#

:Fake-IP 模式在收到 DNS 查询时,由本地 sing-box 直接秒回一个假 IP(如 198.18.0.5),浏览器拿假 IP 直接建立 TCP 连接,中间完全省略了本地等待远程 DNS 往返的时间,实现了 零延迟 DNS 响应;而 Real-IP 模式必须等待远程或 DoH 服务器返回真实的互联网 IP 后再发起连接,增加了一轮 RTT 延迟。对于追求极致开网页速度的用户,推荐首选 Fake-IP 模式。

Q8:在软路由(OpenWrt)上部署 sing-box,比部署 PassWall 或 OpenClash 有什么优势?#

:主要优势体现在 内存占用极低系统稳定性极高。OpenClash 等插件往往需要消耗 200MB–400MB 内存,且经常因为规则过多导致硬路由重置;而 sing-box 纯后台守护进程模式静态内存仅 30MB 左右,CPU 占用极低,能让百元级低配软路由稳定运行数月不卡顿。

Q9:sing-box 以后会支持 YAML 或其他配置文件格式吗?#

:sing-box 官方团队明确表示,其核心设计规范将严格坚持使用标准 JSON 格式。因为 JSON 具有原生的多语言解析效率、极高的结构化严谨性,避免了 YAML 严格依靠空格缩进导致的语法歧义。如果你拥有 Clash 的 YAML 订阅,可以使用在线/本地订阅转换工具秒转为 sing-box 的 JSON 格式。

Q10:sing-box 支持多条订阅节点的自动负载均衡(Load Balance)吗?#

:完美支持。在 sing-box 的 outbounds 配置中,可以定义 type: urltest(自动选择最快节点)或者 type: selector(手动选择),甚至可以通过配置多个出站组合实现轮询负载均衡(Round-Robin),非常适合多节点并发提速场景。

常见问题 FAQ#

Q1:sing-box 适合完全没有技术基础的新手使用吗?#

:如果你使用的是封装好的图形客户端(如 iOS 版 sing-box、Android 版 sing-box 或第三方基于 sing-box 开发的 GUI 软件),只需要一键导入机场订阅链接即可,非常简单。但如果你要自己手写或修改 config.json 配置文件,需要对 JSON 语法、网络端口及分流逻辑有基本了解。

Q2:sing-box 和 Mihomo(Clash.Meta)相比,哪个性能更好?#

:在内存占用和软路由/嵌入式设备性能上,sing-box 优势明显(内存仅需 Clash 的三分之一);在对原生 Hysteria 2TUIC v5 协议的 UDP 极速转发上,sing-box 表现极其刚猛。而在规则分流扩展性(如 Merge 脚本)和桌面图形界面生态成熟度上,Mihomo 依旧非常强大。

Q3:为什么 Apple TV 首选推荐 sing-box 客户端?#

:因为 tvOS 系统对后台进程的内存使用有极其苛刻的限制(超过限额直接强杀)。sing-box 以极其轻量的 Cgo/Go 运行时和极致的内存优化,完美契合了 tvOS 的运行环境,是目前 Apple TV 上最稳定、最省资源的网络代理工具。

Q4:传统的 Clash 订阅链接可以直接放入 sing-box 使用吗?#

:不能直接使用。因为 Clash 采用的是 YAML 语法,而 sing-box 采用的是 JSON 语法。你需要使用支持 sing-box 格式的订阅转换工具(如自建 Subconverter 或机场提供的 sing-box 专用订阅链接)进行格式转换后方可导入。

Q5:sing-box 安全吗?会不会泄露个人的隐私数据?#

:sing-box 是一款完全开源的网络工具,源代码全网公开受社区监督。它的代理连接均采用强加密协议(如 TLS 1.3 / ChaCha20 / AES-256),本地的数据交换只在你的设备内部进行,不包含任何后门或数据收集行为。


重新总结与终极建议#

作为 2026 年网络代理领域的“新一代通用平台”,sing-box 凭借其极致的性能、全平台统一的架构设计以及对 VLESS Reality、Hysteria 2 的完美支持,已经成为了未来的技术标杆。

  1. 设备选型建议:在 Apple TViOS 移动端 以及 OpenWrt 软路由/低配掌机 上,强烈推荐优先使用 sing-box;在 Windows 桌面端,如果你追求极简与原生性能,sing-box 同样是极佳的选择。
  2. 学习建议:掌握 sing-box 的 JSON 结构与 .srs 规则集概念,能够让你在未来的网络优化与节点部署中立于不败之地。

[相关文章:Windows科学上网客户端选择与配置:Clash Verge vs v2rayN vs sing-box] [相关文章:sing-box怎么导入订阅?JSON配置文件与转换指南] [相关文章:v2rayN下载安装教程:Windows客户端官网解压与Core依赖配置]

sing-box是什么?新一代全平台通用代理内核解析
https://jichangfan.com/posts/sing-box-shimeshi/
作者
机场翻
发布于
2024-04-18
许可协议
CC BY-NC-SA 4.0