141 lines
9.1 KiB
Markdown
141 lines
9.1 KiB
Markdown
# 新增地区与新增站点
|
||
|
||
当舰队里加入新地区(香港、日本、韩国、台湾、英国……)的节点时,按本文操作。
|
||
|
||
> 背景:策略组的地区筛选靠**节点名称正则**,不靠节点的 `region` 字段。所以节点命名是一切的前提。
|
||
|
||
## 当前状态(2026-10-04)
|
||
|
||
节点登记/启用数量、完整策略组矩阵和服务规则归属集中见 [当前生产状态](CURRENT-STATE.md)。下面维护地区命名与扩展方法;新增站点不自动启用已有停用线路。
|
||
|
||
有美国、新加坡、日本三个地区的节点,策略组里对应 `🇺🇸 United States`、`🇸🇬 Singapore`、`🇯🇵 Japan` 三个地区组。
|
||
日本组于 2026-09-14 随 jp 站点(VMISS 东京,八条线路)按本文步骤重建,站点码 `JP`,当前加入的服务组为 Proxy/Automatic/Streaming/AI/Bybit。约定:**凡是成员含美国或新加坡的组,都应同时含日本**;NoAuto 当前只含大陆,不在此列。Speedtest 组及其专用规则已删除。
|
||
2026-10-04 已删除线上 Apple/Global Services 组及指向它们的专用规则,并删除 AI 的 Bing 规则;不再给这两个已删除的服务组添加地区。同日进一步将所有原先直接指向 Automatic 的 20 条规则改为 Proxy,包括 `global`/`global_plus`、CDN 及 Facebook 等;x.com/bing.com 当前自然匹配 `global` → Proxy,由用户在 Proxy 中选择出口。Automatic 改为 `url-test`,仅 Proxy 保留其成员引用;AI/Speedtest/NoAuto 已移除 Automatic。具体约束与验证见 [Proxy 与 Automatic 选择链](PROXY-AUTOMATIC-2026-10-04.md)。App Store DIRECT、Apple News 美国及 Apple Relay AI 例外继续保留。原始初始化模板仍有旧组和旧引用;已有生产数据以管理 API 为准,不通过规则 reset 恢复旧分流。
|
||
香港、台湾、英国、韩国的地区组**仍处于删除状态**——留着会是空组,在客户端里显示为无可用节点。
|
||
兜底的 `🌍 Other` 组也已删除:所有节点都能被现有三个地区组收纳,它恒为空。
|
||
当前组显示顺序为 Proxy、Automatic、All Nodes、美国、新加坡、日本、AI、🧠 AI Nodes、Streaming、Bybit、Mainland、NoAuto。🧠 AI Nodes 为独立收纳全部节点的 select 组,紧接 AI;其选择与 All Nodes 独立保存,见 [AI Nodes](AI-NODES-2026-10-04.md)。两组的节点按完整名称字符串升序输出;当前节点 sortOrder 统一为默认 0,新增节点保持默认值即可沿用名称排序。组显示顺序不决定分流优先级;实际规则保留协议防护与 Unbreak 例外在前,启用的 AI 规则集中置于广告及普通分流之前,见 [AI 与广告优先级](AI-PRIORITY-2026-10-04.md)。
|
||
|
||
## 一、给新节点命名(决定它能被哪个组收纳)
|
||
|
||
命名格式:`<国旗> <国家码> · <站点码> · <协议> · <出口>`
|
||
|
||
```
|
||
🇭🇰 HK · VMess · 直连
|
||
🇯🇵 JP · Trojan · WARP
|
||
🇺🇸 US · LA · VMess · 直连 ← 同国多站点时插入站点码
|
||
```
|
||
|
||
- **国家码必须出现在名字里**(HK/JP/US/SG…),地区组的正则靠它匹配
|
||
- 出口词(`直连` / `WARP`)必须保留:客户端里没有出口标签,用户只能靠名字区分同协议的两条线路。界面上显示时会自动隐去,不必担心重复
|
||
- 站点码(LA/RN/AWS)用于节点页的分段归类,来自节点的 `region` 字段
|
||
|
||
节点的 `region` 字段填站点码(`SG`、`LA`、`RN`、`HK`…),它决定节点页里归到哪一段。
|
||
|
||
## 二、让站点标题显示国旗
|
||
|
||
`web/src/components/stations.ts` 的 `STATION_LABELS` 加一行:
|
||
|
||
```ts
|
||
const STATION_LABELS: Record<string, string> = {
|
||
SG: '🇸🇬 SG AWS',
|
||
LA: '🇺🇸 US LA',
|
||
RN: '🇺🇸 US RN',
|
||
HK: '🇭🇰 HK 香港站点名', // ← 新增
|
||
};
|
||
```
|
||
|
||
未配置的站点码会原样显示,不影响功能。
|
||
|
||
## 三、新建地区策略组
|
||
|
||
在「策略组」页点「添加策略组」,按下表填写:
|
||
|
||
| 字段 | 值 |
|
||
|---|---|
|
||
| 名称 | `🇭🇰 Hong Kong`(emoji 前缀 + 英文原名) |
|
||
| 类型 | `url-test` |
|
||
| 成员 | 留空 |
|
||
| 收纳全部节点 | **开启** |
|
||
| 名称筛选正则 | 见下方对照表 |
|
||
| 测速 URL | `http://cp.cloudflare.com/generate_204` |
|
||
| 间隔 | `300` |
|
||
| 容差 | `50` |
|
||
|
||
「收纳全部节点」+「筛选正则」的组合会生成 `include-all-proxies=true, policy-regex-filter=…`(Surge)、`include-all-proxies: true, filter: …`(Clash)、`policy-regex-filter=…`(ShadowRocket),三端都是**动态筛选**——之后再加同地区节点会自动进组,不用改配置。ShadowRocket 不使用 `use=true`,其正则从 App 内全部节点筛选。
|
||
|
||
各地区的正则(取自原模板,可直接复制):
|
||
|
||
```
|
||
香港 港|🇭🇰|香港|HK|Hong
|
||
日本 日|🇯🇵|日本|JP|Japan
|
||
台湾 台|🇹🇼|台湾|TW|Tai
|
||
韩国 韩|韩国|Korea|KR|🇰🇷
|
||
英国 🇬🇧|英国|英|英格兰|UK|United Kingdom
|
||
新加坡 坡|🇸🇬|新加坡|狮城|SG|Singapore
|
||
美国 美|🇺🇸|美国|US|States|American
|
||
```
|
||
|
||
## 四、兜底组 `🌍 Other`(当前不存在)
|
||
|
||
原模板有一个 `🌍 Other` 组,用否定前瞻正则收纳「不属于任何已建地区组」的节点。**当前已删除**,因为现有节点都能被美/新/日三个组收纳,它恒为空。
|
||
|
||
加入尚无地区组的节点时,优先按本文新建对应地区组。若确需恢复 Other,以下仅是历史模板示例,必须先核对目标客户端的正则能力与实际产物:
|
||
|
||
| 字段 | 值 |
|
||
|---|---|
|
||
| 名称 | `🌍 Other` |
|
||
| 类型 | `url-test`,收纳全部节点开启 |
|
||
| 筛选正则 | 见下(把所有**已建**地区组的关键字排除掉) |
|
||
|
||
```
|
||
^((?!港|🇭🇰|香港|HK|Hong|日|🇯🇵|日本|JP|Japan|坡|🇸🇬|新加坡|狮城|SG|Singapore|美|🇺🇸|美国|US|States|American|Remain|Expired|官网|如需|套餐|去除|剩余|距离|Reset|重置|流量).)+$
|
||
```
|
||
|
||
否定前瞻不能视为三个客户端都支持的正则;本系统会把 filterRegex 透传给 Clash 的 filter,不自动改写成等价的排除条件。当前简单地区正则的验证结果不覆盖这个历史示例,跨端恢复需先验证,必要时调整数据模型与生成器。
|
||
|
||
**如果重建了 Other,每次新增地区组都必须往这个否定前瞻里追加对应关键字**,否则新地区节点会同时出现在自己的组和 Other 里。
|
||
|
||
## 五、把新地区加进服务组的可选项
|
||
|
||
新建地区组后,它不会自动出现在服务组的成员里。按需编辑这些组,把新地区加进成员列表:
|
||
|
||
| 组 | 当前成员 | 建议 |
|
||
|---|---|---|
|
||
| `⚡️ Automatic`(url-test) | SG、US、JP | 加入所有地区组;仅由 Proxy 引用,不让规则直接指向它 |
|
||
| `🚀 Proxy` | Automatic、All Nodes、SG、US、JP | 加入所有地区组 |
|
||
| `🎬 Streaming` | SG、US、JP | 加入解锁能力强的地区(HK/TW/JP) |
|
||
| `🤖 AI` | US、SG、JP、🧠 AI Nodes | 加入 AI 服务可用地区;不加入 Automatic |
|
||
| `🧠 AI Nodes`(select) | 全部节点 | 保持 includeAllNodes,与 All Nodes 独立选择;新增节点自动进入,sortOrder 保持默认 0 |
|
||
| `🪙 Bybit` | DIRECT、SG、US、JP | 同 Proxy |
|
||
| `🎯 NoAuto` | Mainland | 不加入 Automatic |
|
||
|
||
成员的顺序就是客户端里的排列顺序。对于 `select` 组,客户端没有有效的已保存选择时,**第一个成员是默认选中项**;Automatic 为 `url-test`,按测速结果与容差选择成员。
|
||
|
||
## 六、地区流媒体解锁规则(可选)
|
||
|
||
模板原有按地区解锁的规则集。当前 `stream_us` 的域名/IP 两条已指向美国,`stream_jp` 的两条已指向日本;`stream_hk`、`stream_tw`、`stream_kr`、`stream_eu` 的八条规则仍指向 `🎬 Streaming`,相关地区组当前不存在。
|
||
|
||
如果新建了对应地区组,可以在「规则」页把这些规则的策略改回该地区组,解锁效果更精准:
|
||
|
||
| 规则集 | 建议策略 |
|
||
|---|---|
|
||
| `stream_hk`(non_ip + ip 两条) | `🇭🇰 Hong Kong` |
|
||
| `stream_jp`(两条) | `🇯🇵 Japan`,当前已应用 |
|
||
| `stream_tw`、`stream_kr`、`stream_eu` | 对应地区组 |
|
||
|
||
## 七、验证
|
||
|
||
1. 「策略组」页:新地区组的**命中**一栏应列出该地区的所有节点
|
||
2. 「节点」页:新站点应有独立分段,标题显示国旗
|
||
3. 从真实 HTTPS 订阅入口获取各端产物,先确认下载成功及配置结构,再按 [订阅变更与验证](SURGE-CHANGES.md)运行 Surge CLI/规则集快照与独立目录的 `mihomo -t`;结构通过后仍需客户端连接验收。
|
||
4. 若重建过 `🌍 Other`,确认它的命中里**不再包含**新地区节点
|
||
|
||
## 删除某个地区(反向操作)
|
||
|
||
1. 把指向该组的规则改指向别的组(否则规则会被自动跳过——IR 层有悬空引用防护,但那是兜底不是意图)
|
||
2. 从其他组的成员里摘掉它
|
||
3. 删除该组
|
||
4. Other 的排除列表可以保留该地区关键字(留着无害,将来重建时省事)
|
||
|
||
> 上述 1–3 步如果漏做,生成器不会产出无效配置(悬空引用会被自动跳过、FINAL 会降级为 DIRECT),但分流意图会悄悄改变,所以要显式处理。
|