官方图文介绍
通过 route.rule_set 引用二进制 SRS,再把规则集绑定到已有出站或拒绝动作。 下方为对应客户端的官方资料图,具体规则的添加方法见本页教程。
根据 sing-box 官方资料(新窗口) 整理

图片为官方发布素材或标明的官网页面实拍;中文介绍由本站根据官方资料整理。平台与版本不同,界面可能有所差异。
01 · 开始前,准备好这三样
本教程从你已经安装 sing-box、并有一份能正常连接的配置开始。先确认网页能够通过现有节点打开,再添加分流,这样遇到问题时更容易判断是节点、规则还是配置格式的原因。
- 备份:导出或复制当前完整配置,记下原本启用的配置名。先在副本上修改,随时可以恢复。
- 出口名称:抄下已有代理策略组或出站标签的全名。示例里的大写占位名称需要替换,空格、大小写和符号都要一致。
- 测试目标:先选一个服务,例如 GitHub。只添加一组规则并测试成功,再逐步加入其他资源。
JSON 的 route.rule_set / route.rules。SRS 是二进制规则集,不是 JSON 配置,也不是节点订阅。下载链路参数在不同版本有变化,1.14 起请查看官方 http_client 说明;本页基础片段不预设你的下载出站。
三个词先认识
- 规则内容
- 要匹配的域名、IP 或条件。域名填写 github.com,不带 https:// 或网页路径。
- 策略 / 出站
- 匹配后交给哪个出口,或者选择直连、拒绝。规则本身不提供代理线路。
- 兜底
- 没有其他规则命中时的处理方式。保留现有兜底,不要把它误放到具体规则前面。
02 · sing-box 的规则内容
下表提供本软件对应的远程规则资源。规则源负责维护匹配名单,你负责指定策略。先从需要的一项开始,不必一次全部启用。YAML domain 与本页 SRS 均为域名集合,直接使用 IP 的流量还需要 IP 规则。
| 用途 | 配置中的标识 | 策略 | 对应资源 |
|---|---|---|---|
| 广告拦截 | science-category-ads-all | 拦截 | 打开 SRS / binary |
| YouTube | science-youtube | 已有代理出站 | 打开 SRS / binary |
| Netflix | science-netflix | 已有代理出站 | 打开 SRS / binary |
| OpenAI | science-openai | 已有代理出站 | 打开 SRS / binary |
| Telegram | science-telegram | 已有代理出站 | 打开 SRS / binary |
| GitHub | science-github | 已有代理出站 | 打开 SRS / binary |
| Steam | science-steam | 已有代理出站 | 打开 SRS / binary |
| 国内直连 | science-cn | 直连 | 打开 SRS / binary |
广告拦截是可选项。遇到登录、支付、验证码或视频加载异常,先看是否命中拦截规则,再对实际误拦截域名建立优先放行规则。选择代理策略只改变连接出口,不保证某个服务的地区权限或线路可用性。
具体网站与大范围规则重叠怎么办?
按需要把明确的网站例外放在更优先的位置。国内集合或通用代理集合范围很大,可能提前命中某个服务;查看实际匹配记录后再调整顺序。同一网站还可能使用独立的登录、图片、视频域名,不能只测试首页。
03 · sing-box 图文设置教程
1. 确认内核版本与出站标签
本页路由动作示例适用于 sing-box 1.11 及之后的配置写法。先导出完整 JSON,查看 outbounds 数组中的 tag。把 PROXY_TAG 和 DIRECT_TAG 替换成实际存在的代理与直连出站 tag,不能只凭显示名称猜测。
2. 合并远程 rule_set
将示例 route.rule_set 数组中的对象并入原来的同名数组。type=remote 表示远程下载,format=binary 对应 .srs,tag 是这个集合在当前配置中的名字。已有 route 对象时只能合并,不能再写第二个 route。
3. 插入路由规则
把 route.rules 中的对象插入原规则数组。rule_set 的名称必须与前一步 tag 完全一致;代理与直连用 action=route 并写 outbound,广告用 action=reject。保留原来的 DNS 处理、嗅探规则和 route.final。
4. 校验、加载与排查
保存完整配置后,可用 sing-box check -c config.json 校验,再在实际使用的客户端加载。确认远程集合下载成功,通过日志核对规则及出站。若 GitHub 资源下载失败,需要为对应版本配置可用的下载出站;不要把未校验的网络参数直接套到所有版本。
04 · 视频教程
05 · 配置片段与下载
下面是用于合并的规则片段,没有节点、监听端口或完整客户端设置。不要用它替换整个配置。把片段放入上文指定的位置;已有同名段或数组时合并内容,并保留原有配置。
PROXY_TAG 和 DIRECT_TAG 必须对应现有 outbounds 中的 tag。拒绝连接使用 action: reject,不需要创建一个叫 reject 的出站。
{
"route": {
"rule_set": [
{
"type": "remote",
"tag": "science-category-ads-all",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/category-ads-all.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-youtube",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/youtube.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-netflix",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/netflix.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-openai",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/openai.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-telegram",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/telegram.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-github",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/github.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-steam",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/steam.srs",
"update_interval": "1d"
},
{
"type": "remote",
"tag": "science-cn",
"format": "binary",
"url": "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/sing/geo/geosite/cn.srs",
"update_interval": "1d"
}
],
"rules": [
{
"rule_set": [
"science-category-ads-all"
],
"action": "reject"
},
{
"rule_set": [
"science-youtube"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-netflix"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-openai"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-telegram"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-github"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-steam"
],
"action": "route",
"outbound": "PROXY_TAG"
},
{
"rule_set": [
"science-cn"
],
"action": "route",
"outbound": "DIRECT_TAG"
}
]
}
}下载文件与上面展示的内容一致,按钮会保存到本地;若浏览器直接显示文本,可用“另存为”保存并保留原文件后缀。JSON 文件不允许注释或尾随逗号,YAML 使用空格缩进,配置中的逗号和等号应使用英文符号。
后续怎样更新?
示例使用 update_interval: 1d 检查远程资源。客户端应能下载 SRS;名单更新不会改变你手动指定的出站 tag。
06 · 怎样确认真的生效?
- 先看配置:确认当前启用的就是刚修改的配置或路由方案,运行模式能够使用分流规则。
- 再看资源:远程规则应显示下载或更新成功;本地规则应能在配置或编辑页面中找到。文件下载成功和规则被引用是两件事。
- 发起新连接:关闭测试网站的旧连接后重新打开,例如 github.com。只刷新网页可能复用旧连接,导致看到的仍是旧策略。
- 核对结果:在请求、活动连接或日志里找到目标域名,检查规则与出口。需要走代理的访问应命中相应策略,而国内直连应显示直连。
先只配置 GitHub,给它指定一个已有代理策略。访问 github.com,找到这次请求。若记录显示的是通用兜底,回去检查规则位置;若已经匹配 GitHub 却打不开,就检查该策略里选中的线路。两种情况的处理方法不同。
07 · 常见问题与恢复方法
下载后为什么不能直接导入节点订阅?
本页下载的是规则片段或规则集合,节点订阅是另一种数据。按本软件教程合并规则,再使用你已有的节点;不能把规则链接当成节点地址。
提示找不到策略、出站或标签怎么办?
检查占位名称是否已经替换,并逐字比较大小写、空格和特殊符号。规则写了一个名称,不会自动创建该策略或出站。
配置保存后没有效果怎么办?
依次确认:选中了正确配置、没有全局代理或全局直连覆盖、目标应用流量进入客户端、规则成功加载、具体规则没有被更早的规则抢先匹配。每次只改一个条件再测试。
远程文件打不开或格式报错怎么办?
先从本页资源链接确认拿到的是实际规则内容,不是登录页、错误网页或 GitHub 文件预览页。再核对扩展名和声明格式;不要通过改名把 SRS、MRS、LIST、YAML 相互转换。
误拦截后怎样恢复?
先停用刚添加的拦截规则或恢复备份配置。恢复联网后,查看误拦截域名并添加更具体的放行例外,再逐条重新启用;不要为了修复一个站点而清空所有已有规则。
修改会不会被订阅更新覆盖?
直接编辑远程订阅生成的配置,可能在更新时丢失。软件支持覆写或扩展时使用对应机制;采用本地完整配置副本时,需要自己合并后续订阅变化。
浏览器能走代理,其他软件却没有命中规则?
系统代理只覆盖遵循该设置的程序,部分程序使用自己的代理设置或直接连接。先在客户端日志确认目标程序是否出现;没有记录时检查接管方式与分应用设置。只有客户端明确支持并完成所需配置时才使用 TUN;仅添加规则不能接管原本未进入客户端的流量。
域名规则已命中,为什么仍有部分图片、登录或视频失败?
同一服务往往分别使用页面、账号、图片和媒体域名。先查看失败请求的真实目标与最终出口,再判断是否缺少规则、命中拦截或出口不可用。应用直连 IP、IPv6 或 UDP 的连接也可能走不同路径;按对应软件文档检查,不能只凭首页成功认定全部请求都正常。
更新后提示不认识字段,怎样判断是语法还是版本问题?
记录当前客户端和内核版本,查该版本支持的字段与规则格式。先使用配置检查功能查看具体行号:缩进、逗号等属于文件语法,unknown field 一类提示还可能是功能版本不匹配。恢复备份确认原配置可用后,再按官方迁移说明逐项调整。
提交问题反馈时应该准备什么?
提供客户端与内核版本、设备系统、问题出现步骤,以及脱敏后的目标域名、命中规则、出站名称和错误码。保留一份能正常工作的配置用于对照;不要公开完整订阅地址、账号密钥或包含认证信息的日志。
08 · 资料来源
以下资料用于核对软件语法与设置方式。教程按 2026-09-25 可访问资料整理;软件界面随版本变化时,请以其官方文档及实际界面为准。