Files
proxy-station/docs/FFSB-DIRECT-2026-10-19.md
YANG JIANKUAN a5d980a5e9 feat: 添加 WireGuard 设备管理并完善客户端分流
实现独立加密设备身份、网关 agent、持久生命周期任务和 Surge/FlClash 专属订阅凭证。

完善 Shadowrocket 规则转换与 Clash AI DNS,增加 Surge FFSB 适配、规则快照、运维工具及验收文档。
2026-11-02 22:44:23 +08:00

45 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# FFSB 专线与 Surge 直连例外(2026-10-19)
本机 FFSB 报 Anthropic 探测等待响应头超时;检查发现 `link.fufeishangban.com` 返回 fake-IP,目标服务器路由进入 Surge utun5。当前活动配置为 Proxy Station,增强模式开启。
经管理 API 在生产规则最前添加以下规则,保留原有规则相对顺序和唯一末尾 FINAL:
```ini
IP-CIDR,147.93.172.146/32,DIRECT,no-resolve
IP-CIDR,185.180.19.201/32,DIRECT,no-resolve
DOMAIN,link.fufeishangban.com,DIRECT
```
Surge General 的既有 `always-real-ip` 追加精确域名 `link.fufeishangban.com`,避免专线客户端收到 fake-IP;未固定域名 IP,也未扩大到所有域名。域名当前真实解析与隧道服务器 IP 不同,分别处理域名与隧道服务器,不应将两者混为一谈。
备份:生产 `data/backups/before-ffsb-direct-20261019-103801.db`,已确认 root/600。规则由 267 增至 270,重读确认旧规则顺序与其他设置不变。
实际 HTTPS Surge 订阅及 49/49 远程规则集快照通过官方 CLI 校验,静态域名遮蔽提示为 0。本机更新原托管配置后,新增直连规则命中 DIRECT,系统 DNS 已返回真实公网 IP,策略组列表与更新前一致。Clash 实际订阅已获取并确认包含新 IP 规则,但本机未安装 mihomo,未完成其原生语法校验。
DIRECT 表示 Surge 直连转发,并不保证系统路由不再显示 utun;不能只凭 utun 路由判定连接仍走外层代理。FFSB 首次重连后服务器改为当前解析 IP `147.93.172.146`,因此补充该 IP 的直连规则。再次刷新订阅并重连后,客户端出口检测成功,显示住宅出口及 5591 ms 延迟,原 Anthropic 超时提示消失。该结果为即时检测,未验证长期稳定性。
依据:[Surge always-real-ip](https://manual.nssurge.com/dns/advanced.html)。
## 后续:FFSB 服务 STUN 被拦截
Surge 请求记录确认 `ffsb-service` 的 `stun.cloudflare.com:3478` 请求命中 `PROTOCOL,STUN,REJECT`。仅豁免服务器 IP 无法覆盖该连接。经实际进程路径核对,新增高优先级规则:
```ini
IP-CIDR,185.180.19.82/32,DIRECT,no-resolve
PROCESS-NAME,/Applications/FFSB.app/Contents/MacOS/ffsb-service,DIRECT
```
新 IP 来自 FFSB 设置页的当前服务器说明。进程规则使服务自身的隧道与 STUN 连接直连,不更改其他应用的 STUN 拦截或 Claude 域名路由。保留此前域名 fake-IP 豁免;进程规则不能替代 DNS 阶段的真实 IP 返回。
本次生产备份 `data/backups/before-ffsb-process-direct-20261019-105916.db` 已确认 root/600。规则 270 → 272,既有规则顺序保持;实际 HTTPS 订阅与规则集快照通过官方 Surge CLI。更新本机后以相同 STUN 目标和协议、不同进程路径核验:FFSB 服务 DIRECT,Chrome REJECT。FFSB 主界面随后显示住宅出口与 589 ms 延迟。该即时结果不代表长期稳定性验证;Clash 原生校验仍缺 mihomo。
参考:[Surge 进程规则](https://manual.nssurge.com/rules/process.html)。
## 修正:符号链接路径与真实进程路径
此前从 `ps` 取得 `/usr/local/bin/ffsb-service`,但该路径是符号链接,指向 `/Applications/FFSB.app/Contents/MacOS/ffsb-service`。Surge 原始请求 `#50934` 记录后者,导致前次完整路径例外未匹配,真实 STUN 仍被 REJECT。前次通过手工传入符号链接路径的 rule match 只验证了假设,不能作为真实流量已修复的依据;当时业务出口成功也不能证明 STUN 放行。
生产原规则已定向修改为上文真实路径,规则数仍为 272、顺序与其他字段保持。备份 `data/backups/before-ffsb-real-process-path-20261019-110335.db`,root/600。实际 HTTPS 订阅和规则集快照通过官方 Surge CLI,刷新托管配置并重连 FFSB 后,新请求 `#51133` 到 `stun.cloudflare.com:3478` 命中真实路径的 PROCESS-NAME DIRECT,rejected=false,发送 20 字节、收到 32 字节;隧道请求亦有双向流量。其他进程的同一 STUN 模拟请求仍 REJECT。客户端显示已连接、25/25 域名、4734 ms 延迟,出口 IP 栏为“手动查看”,未据此声称出口 IP 已重新验证。
后续进程规则应核对符号链接目标并从 `surge-cli --raw dump request` 的 `processPath` 取得真实路径;使用新连接的真实规则与收发数据验收,而非仅依赖 `ps` 或模拟匹配。