自己用的一些 sing-box 配置文件模板, 支持 Toperlock/sing-box-subscribe 远程调用。
模板仅适用于客户端, 不适用于服务器和路由器。
#!/bin/bash
url_gene="https://a.com" # 生成配置的后端地址
url_sub="https://b.com" # 来自机场的订阅链接
url_tpl="https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config.json" # 配置所用模板的地址
url_dl="$url_gene/config/$url_sub&ua=clashmeta&emoji=1&file=$url_tpl"
echo $url_dl
curl -L -o config.json "$url_dl"
在 Android 或 Apple 设备的 sing-box 图形客户端中添加这个最终的 URL 作为订阅链接。
对于 Linux 和 Windows, 阅读 sing-box on Linux 和 sing-box on Windows。
至于 Toperlock/sing-box-subscribe 的更多参数信息, 阅读其 README.md。
模板仅适用于客户端, 不适用于服务器和路由器。
推荐使用入站方式为 tun
的模板:
https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config.json
如果要使用 FakeIP, 选择:
https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config_fakeip.json
或者使用入站方式为 mixed
的模板:
https://raw.githubusercontent.com/senzyo/sing-box-templates/public/mixed/doh/ali/google/mirror.ghproxy.com/config.json
只推荐使用入站方式为 tun
的模板:
https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config.json
如果要使用 FakeIP, 选择:
https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config_fakeip.json
文件的存储路径按照 "入站方式 → DNS 协议 → ** DNS 服务商 → 国际 DNS 服务商 → 规则集 CDN → 配置文件名称" 进行层级划分。
比如对于 https://raw.githubusercontent.com/senzyo/sing-box-templates/public/tun/doh/ali/google/mirror.ghproxy.com/config.json
, 即 https://raw.githubusercontent.com/senzyo/sing-box-templates/<Git 分支名称>/<入站方式>/<DNS 协议>/<** DNS 服务商>/<国际 DNS 服务商>/<规则集 CDN>/<配置文件名称>
。
入站方式
的可选值:mixed
,tun
DNS 协议
的可选值:doh
,doq
,dot
,h3
** DNS 服务商
的可选值:ali
,dnspod
国际 DNS 服务商
的可选值:adguard
,cloudflare
,google
,opendns
规则集 CDN
的可选值:mirror.ghproxy.com
,ghproxy.net
,fastly.jsdelivr.net
,gcore.jsdelivr.net
,testingcf.jsdelivr.net
配置文件名称
的可选值:- 对于
入站方式
为mixed
的, 可选值:config.json
- 对于
入站方式
为tun
的, 可选值:config.json
,config_fakeip.json
- 对于
"inbounds": [
{
"type": "tun",
"inet4_address": "172.19.0.1/30",
"inet6_address": "fdfe:dcba:9876::1/126",
"gso": false,
"auto_route": true,
"strict_route": true,
"endpoint_independent_nat": false,
"stack": "mixed",
"exclude_package": ["com.android.captiveportallogin"],
"platform": {
"http_proxy": {
"enabled": true,
"server": "127.0.0.1",
"server_port": 7890
}
},
"sniff": true,
"sniff_override_destination": false
},
{
"type": "mixed",
"listen": "::",
"listen_port": 7890,
"sniff": true,
"sniff_override_destination": false
}
],
"inbounds": [
{
"type": "mixed",
"listen": "::",
"listen_port": 7890,
"sniff": true,
"sniff_override_destination": false
}
],
DNS 协议使用 DNS over HTTPS
或 DNS over QUIC
或 DNS over TLS
或 DNS over HTTP/3
, 更多 DNS 协议与格式参考 sing-box 文档。
** DNS
包括 Ali DNS
和 DNSPod
。
国际 DNS
包括 AdGuard DNS
, Cisco OpenDNS
, Cloudflare DNS
和 Google DNS
。
更多 DNS 服务商 参考。
根据 公共 DNS 免费版接入限速, 单 IP 访问量 超过 20 QPS, UDP/TCP 流量超过 2000 bps 将被限速。 升级到公共 DNS 付费版, 每月有 1000 万次 的免费解析额度。
根据 DoH 与 DoT 说明, 单个域名解析调用频率 限制为 20 QPS。 开通腾讯云 Public DNS 专业版, 每月有 300 万次 的免费解析额度。
"dns": {
"servers": [
{
"tag": "国际 DNS",
"address": "https://dns.google/dns-query",
"address_resolver": "系统 DNS",
"detour": "🚀 默认出站"
},
{
"tag": "** DNS",
"address": "https://dns.alidns.com/dns-query",
// 可修改 address 为自己的专属地址
"address_resolver": "系统 DNS",
"detour": "🐢 直连"
},
{
"tag": "系统 DNS",
"address": "local",
"detour": "🐢 直连"
}
...
],
...
},
仅影响客户端下载规则集的速度。
"route": {
...
"rule_set": [
...
{
"tag": "download-process",
"type": "remote",
"format": "binary",
"url": "https://mirror.ghproxy.com/https://raw.githubusercontent.com/senzyo/sing-box-rules/master/download-process.srs",
"download_detour": "🐢 直连",
"update_interval": "3d"
},
...
]
}
源地址举例:
https://raw.githubusercontent.com/senzyo/sing-box-rules/master/download-process.srs
CDN 地址列举:
https://mirror.ghproxy.com/https://raw.githubusercontent.com/senzyo/sing-box-rules/master/download-process.srs
https://ghproxy.net/https://raw.githubusercontent.com/senzyo/sing-box-rules/master/download-process.srs
https://fastly.jsdelivr.net/gh/senzyo/sing-box-rules@master/download-process.srs
https://gcore.jsdelivr.net/gh/senzyo/sing-box-rules@master/download-process.srs
https://testingcf.jsdelivr.net/gh/senzyo/sing-box-rules@master/download-process.srs
可自行替换模板中使用的 CDN, 替换前推荐对这些 CDN 的域名进行 网站测速。不推荐 cdn.jsdelivr.net
。
由于暂时无法准确分流 BitTorrent 流量, 干脆匹配 下载软件的进程 来一刀切。使用 Bittorrent 方式下载时, 手动切换 📥 Downloader
分组的策略, 改用 🐢 直连
。
根据 issue#883, 如果在 TUN 模式下无法使用进行 SSH 访问, , 需要关闭严格路由:
"inbounds": [
{
"type": "tun",
...
"strict_route": false,
...
},
...
],
如果关闭了严格路由, Linux 平台在 TUN 模式下还是无法使用 IPv6 进行 SSH 访问, 根据 issue#458 得知:
由于技术限制, 在 Linux 平台中 tun 的自动路由会阻止 IPv6 入站连接, 您可以选择手动配置路由。