Skip to content

性能狂飙:2026 最新 Sing-box Rule Set(规则集)配置与本地编译/自动更新全攻略

毛佳国

习惯了使用 Clash 或旧版 V2Ray 的朋友,在初次看到 Sing-box 的规则分流模块时,肯定会被一个新的概念吸引 —— Rule Set(规则集)

传统代理工具的分流,大多依赖体积庞大的纯文本列表(如几万行的 Clash YAML 规则集),或者笨重的 geoip.datgeosite.dat 数据库。这导致每次启动软件时,客户端都要花费数秒来解析这些海量行文本,且会常驻占用上百 MB 昂贵的系统内存。

而 Sing-box 引入的**二进制规则集(扩展名为 .srs)**彻底改变了这一切。它将海量规则提前编译为精简的二进制树,解析速度瞬间提升百倍,内存占用低至微乎其微。

今天这篇进阶指南,将带你彻底玩转 Sing-box 的规则集,实现性能狂飙!


🧐 一、什么是 Rule Set(规则集)?二进制优势在哪?

在 Sing-box 中,规则集分为两种形态:

  1. 源文件(Source 文件,.json 格式):由人类编写的可读纯文本,里面包含域名、IP 段等数组。
  2. 编译文件(Compile 文件,.srs 格式):由 Sing-box 核心将 JSON 原文件进行高性能二进制编译后生成的专属数据库。

为什么首选 .srs


🛠️ 二、如何在配置文件中定义与使用 rule_set

在 Sing-box 配置文件 config.json最顶层(与 inboundsoutbounds 并列),我们使用 rule_set 数组来声明我们需要加载的规则集。

下面是推荐的声明范例(同时包含本地加载与远程 HTTP 自动更新):

{
  "rule_set": [
    {
      "tag": "geosite-cn",
      "type": "remote",
      "format": "binary",
      "url": "https://raw.githubusercontent.com/lyc8503/sing-box-rules/rule-set-geosite/geosite-cn.srs",
      "download_detour": "proxy-auto-group",
      "update_interval": "1d"
    },
    {
      "tag": "geoip-cn",
      "type": "remote",
      "format": "binary",
      "url": "https://raw.githubusercontent.com/lyc8503/sing-box-rules/rule-set-geoip/geoip-cn.srs",
      "download_detour": "proxy-auto-group",
      "update_interval": "1d"
    },
    {
      "tag": "geosite-ads",
      "type": "local",
      "format": "binary",
      "path": "/etc/sing-box/rules/geosite-category-ads-all.srs"
    }
  ]
}

💡 核心参数解析:


🔀 三、在路由规则 route.rules 中引用

声明好规则集后,我们在 route.rules 路由判断模块中,就可以极度清爽地通过 rule_set 进行标签引用了:

{
  "route": {
    "rules": [
      {
        "rule_set": ["geosite-ads"],
        "outbound": "block" // 广告拦截规则最先匹配,流向黑洞
      },
      {
        "rule_set": ["geosite-cn", "geoip-cn"],
        "outbound": "direct" // 国内域名与IP直接走直连
      }
    ],
    "final": "proxy-auto-group" // 国外其余域名走代理
  }
}

使用这种架构,原本需要几万行规则塞满的配置文件,现在只需要几十行就能完成终极分流,文件结构清爽可读!


🔨 四、进阶:如何在本地编译自定义的 Rule Set (JSON -> SRS)

如果您需要根据自己的工作需要(比如公司内网 IP 阻断、特定私人域名分流),定制一套独一无二的规则集,你可以直接使用 Sing-box 核心命令行在本地快速编译:

1. 编写自定义 JSON 源文件

新建一个文本文件,保存为 my-rules.json

{
  "version": 1,
  "rules": [
    {
      "domain": ["mycompany.com", "internalserver.net"],
      "domain_suffix": [".internal.mycompany.com"],
      "ip_cidr": ["10.199.0.0/16"]
    }
  ]
}

2. 使用命令行进行高性能二进制编译

打开终端,执行以下 Sing-box 编译指令:

sing-box rule-set compile my-rules.json -o my-rules.srs

执行成功后,终端会秒级生成一个二进制的 my-rules.srs 文件。您只需将其拷贝至客户端对应的 rules 目录下,并在 rule_set 中使用 "type": "local" 引入即可使用。


🏁 结语与更新安全屏障

远程拉取云端规则集(通常托管于 GitHub Releases)是保持分流规则库最新的最佳范式。然而,在日常实际运行中,如果您的客户端首次启动时由于代理未完全建连,导致下载 GitHub 规则集文件超时卡死,会让整个代理网络陷于瘫痪。

因此,配置一个高稳定性、连接快速、且能稳定加速 GitHub API 等资源的节点源是极其关键的保障。

推荐参考本站对老牌高性价比商家的深度评测:《“饿饭CC云”怎么样?2026 最新饿饭CC云机场深度评测与 Sing-box 订阅配置指南》。其提供的高带宽专线和经过净化的优质接入 IP,能确保您的 Sing-box 客户端在每日凌晨自动重载规则集时,以绝对稳定的通路瞬时完成数据拉取,保障您的全天候极速体验。


(相关工具导航:如果您在配置过程中需要寻找更适合的低成本自建 VPS、免费公共苹果账号或者最新的客户端下载,请访问我们的 《YGJC•BEST 极客精选资源导航》,快速搞定所有极客工具!)

下一篇
双剑合璧:2026 最新 VPS 原生利用 Sing-box 部署最新 TUIC v5 + Hysteria 2 双协议高能极速节点实战