Re-structure

This commit is contained in:
Yaojia Wang
2026-03-21 11:31:31 +01:00
parent e61baf7e4e
commit cdba2497a7
30 changed files with 299 additions and 251 deletions

View File

@@ -0,0 +1,149 @@
---
tags:
- resource
- openclash
- vless-reality
- security-audit
- networking
- router
- homelab
---
# OpenClash 配置 Review (2026-03-19)
> 审计范围源配置、运行配置、UCI 设置、custom 文件
> 审计日期2026-03-19
> 状态:**全部修复完成**P3 备用节点除外)
---
## 1. 安全问题 (CRITICAL)
### 1.1 敏感信息在 Git 仓库中明文暴露
以下敏感值出现在 Knowledge vault 的笔记中:
| 类型 | 值 | 出处 |
|------|-----|------|
| VLESS UUID | `04a7cfe3-...` | vless-reality.yaml |
| REALITY public-key | `RTO_UOk5...` | vless-reality.yaml |
| Dashboard Secret | `Dc7jZkmO` | Router-iStoreOS.md |
| Proxy Auth | `Clash:O6IlMO6L` | 运行配置 |
**结论**:仓库 remote 为自建 Gitea (`git@git.colacoder.com`),非公开,风险可接受。
### 1.2 Dashboard 绑定 0.0.0.0
```yaml
external-controller: 0.0.0.0:9090
```
LuCI 覆写硬编码为 `0.0.0.0`,无法通过源配置修改。
**结论**WAN zone 默认 INPUT=REJECT9090 端口从外网不可达,仅 LAN 可访问,风险可接受。
### 1.3 mixed-port 绑定 0.0.0.0
`allow-lan: true` + `bind-address: "*"` 意味着代理端口对全网段开放。
**结论**同上WAN 防火墙已阻止外网访问。
---
## 2. 源配置与运行配置不一致 — 已修复
源配置已清理,去掉了陈旧的 DNS 段(`redir-host``192.168.68.111``nsniffer`DNS 全部交给 LuCI 覆写管理。
当前源配置只保留proxies、proxy-groups、rules、hosts。其余由 LuCI 覆写生成。
---
## 3. 规则问题 — 已修复
### 3.1 规则精简为仅视频/音乐
之前配置了 60+ 条国内域名 + `GEOSITE,cn` + `GEOIP,CN`,导致所有国内流量走代理。
**已修复**:移除电商、社交、搜索、银行、`GEOSITE,cn``GEOIP,CN`,只保留:
- 国内视频B站、爱奇艺、优酷、芒果TV、搜狐、腾讯视频、抖音、西瓜、小红书
- 国内音乐网易云、酷狗、酷我、QQ音乐
- 其余 `MATCH,DIRECT`
### 3.2 代理服务器 IP 直连规则 — 已修复
已添加 `IP-CIDR,8.138.1.192/32,DIRECT` 防止环路。
### 3.3 腾讯视频规则细化
之前用 `DOMAIN-SUFFIX,qq.com` 会把 QQ 邮箱、QQ 空间等全部代理。
**已修复**:改为 `v.qq.com` / `video.qq.com` 只匹配腾讯视频QQ 音乐用 `y.qq.com`
---
## 4. Fake-IP Filter — 已修复
### 4.1 去重完成
删除所有 `*.xxx.com` 重复项,只保留 `+.xxx.com`(已是超集)。
### 4.2 amazonaws 范围缩小
移除 `+.amazonaws.com`(全量 AWS只保留 `+.ecr.aws`
当前 fake-ip-filter 列表16 条):
```
+.colacoder.com, +.k8s.home — 内网域名
*.lan, *.local, *.localdomain, *.home.arpa — 本地域名
+.quay.io, +.ghcr.io, +.docker.io,
+.docker.com, +.gcr.io, +.k8s.io,
+.registry.k8s.io — 容器仓库
+.ecr.aws — AWS ECR
+.billo.life — 公司 VPN
+.finance.yahoo.com — Yahoo Finance API
```
---
## 5. Sniffer 配置 — 已修复
清空了 `force-domain` 列表(之前包含 Netflix/Disney+/amazonaws无实际意义
保留 `skip-domain`Mijia Cloud、向日葵、蒲公英、Apple Push。
---
## 6. 其他注意事项
| 项目 | 当前值 | 说明 |
|------|--------|------|
| `bypass_gateway_compatible` | `0`(关闭) | 网络正常,无需开启 |
| `disable_udp_quic` | `1`(禁用) | 强制走 TCP可能降低部分网站速度 |
| NTP `write-to-system` | `true` | 路由器上正常 |
| 单代理节点 | 只有 CN-Proxy | 无备用,服务器挂了断国内 |
| `china_ip_route` | overwrite 开启 | 国内 IP 绕过 TUN 直连 |
---
## 7. 修复记录
| 优先级 | 项目 | 状态 |
|--------|------|------|
| P0 | Dashboard 绑定 | 无需修复 — WAN REJECT外网不可达 |
| P0 | Knowledge 仓库隐私 | 已确认 — 自建 Gitea非公开 |
| P1 | 代理服务器 IP 加 DIRECT 规则 | 已修复 (2026-03-19) |
| P1 | 清理源配置(去掉陈旧 DNS 设置) | 已修复 (2026-03-19) |
| P2 | 精简规则(只保留视频/音乐) | 已修复 (2026-03-19) |
| P2 | fake-ip-filter 去重 | 已修复 (2026-03-19) |
| P2 | 缩小 amazonaws 范围 | 已修复 (2026-03-19) |
| P3 | 清理 sniffer force-domain | 已修复 (2026-03-19) |
| P3 | 添加备用代理节点 | 可选 — 用户自行决定 |
---
## 相关文档
- [[VLESS-REALITY-Router-iStoreOS]] -- 主配置文档
- [[家庭网络基础设施]] -- 网络拓扑总览
- [[VLESS-Reality 翻墙回国]] -- 项目概览

View File

@@ -0,0 +1,259 @@
---
tags:
- resource
- openclash
- vless-reality
- clash-config
- networking
- router
- dns
- homelab
---
# OpenClash 配置备份
> 路由器:`192.168.68.63` (iStoreOS, EasePi Pro)
> 最后更新2026-03-19
> 用途:仅国内视频/音乐走代理回国,其余全部直连
---
## 1. 源配置
路径:`/etc/openclash/config/vless-reality.yaml`
> DNS 段只写了最小声明,其余由 LuCI 覆写生成。
```yaml
# ============================================================
# VLESS + XTLS-Vision + REALITY翻墙回国 - 旁路由)
# 用途:仅国内视频/音乐走代理,其余全部直连
# 更新2026-03-19 精简规则 + 安全加固 + sniffer 清理
# ============================================================
mixed-port: 7890
redir-port: 7892
tproxy-port: 7895
allow-lan: true
bind-address: "*"
mode: rule
log-level: warning
unified-delay: true
external-controller: 192.168.68.63:9090
dns:
enable: true
listen: 0.0.0.0:7874
proxies:
- name: "CN-Proxy"
type: vless
server: 8.138.1.192
port: 443
uuid: 04a7cfe3-10f6-4e38-8319-22a604e24018
network: tcp
udp: true
tls: true
flow: xtls-rprx-vision
servername: www.microsoft.com
reality-opts:
public-key: RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk
short-id: ""
client-fingerprint: chrome
proxy-groups:
- name: "Proxy"
type: select
proxies:
- CN-Proxy
- DIRECT
rules:
# K8s 节点直连(绕过 OpenClash
- SRC-IP-CIDR,192.168.68.11/32,DIRECT
- SRC-IP-CIDR,192.168.68.21/32,DIRECT
- SRC-IP-CIDR,192.168.68.22/32,DIRECT
# 代理服务器本身必须直连(防环路)
- IP-CIDR,8.138.1.192/32,DIRECT
# 广告拦截
- GEOSITE,category-ads-all,REJECT
# 私有网络直连
- IP-CIDR,127.0.0.0/8,DIRECT
- IP-CIDR,10.0.0.0/8,DIRECT
- IP-CIDR,172.16.0.0/12,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT
# === 国内视频/流媒体(走代理回国) ===
# Bilibili
- DOMAIN-SUFFIX,bilibili.com,Proxy
- DOMAIN-SUFFIX,bilivideo.com,Proxy
- DOMAIN-SUFFIX,bilivideo.cn,Proxy
- DOMAIN-SUFFIX,biliapi.net,Proxy
- DOMAIN-SUFFIX,hdslb.com,Proxy
- DOMAIN-SUFFIX,acgvideo.com,Proxy
# 爱奇艺
- DOMAIN-SUFFIX,iqiyi.com,Proxy
- DOMAIN-SUFFIX,iqiyipic.com,Proxy
# 优酷
- DOMAIN-SUFFIX,youku.com,Proxy
# 芒果TV
- DOMAIN-SUFFIX,mgtv.com,Proxy
# 搜狐视频
- DOMAIN-SUFFIX,sohu.com,Proxy
# 腾讯视频
- DOMAIN-SUFFIX,v.qq.com,Proxy
- DOMAIN-SUFFIX,video.qq.com,Proxy
- DOMAIN-SUFFIX,livep.l.qq.com,Proxy
- DOMAIN-SUFFIX,vd.l.qq.com,Proxy
# 抖音/西瓜/字节
- DOMAIN-SUFFIX,douyin.com,Proxy
- DOMAIN-SUFFIX,douyinpic.com,Proxy
- DOMAIN-SUFFIX,douyincdn.com,Proxy
- DOMAIN-SUFFIX,douyinstatic.com,Proxy
- DOMAIN-SUFFIX,snssdk.com,Proxy
- DOMAIN-SUFFIX,amemv.com,Proxy
- DOMAIN-SUFFIX,ixigua.com,Proxy
- DOMAIN-SUFFIX,pstatp.com,Proxy
- DOMAIN-SUFFIX,bytedance.com,Proxy
- DOMAIN-SUFFIX,byteimg.com,Proxy
# 小红书
- DOMAIN-SUFFIX,xiaohongshu.com,Proxy
- DOMAIN-SUFFIX,xhscdn.com,Proxy
- DOMAIN-SUFFIX,xhslink.com,Proxy
# === 国内音乐(走代理回国) ===
# 网易云音乐
- DOMAIN-SUFFIX,music.163.com,Proxy
- DOMAIN-SUFFIX,163yun.com,Proxy
- DOMAIN-SUFFIX,126.net,Proxy
- DOMAIN-SUFFIX,netease.com,Proxy
# 酷狗
- DOMAIN-SUFFIX,kugou.com,Proxy
# 酷我
- DOMAIN-SUFFIX,kuwo.cn,Proxy
# QQ音乐
- DOMAIN-SUFFIX,y.qq.com,Proxy
- DOMAIN-SUFFIX,c.y.qq.com,Proxy
- DOMAIN-SUFFIX,streamoc.music.tc.qq.com,Proxy
# === 其他全部直连 ===
- MATCH,DIRECT
hosts:
"nas.colacoder.com": 192.168.68.70
"pve.colacoder.com": 192.168.68.70
"npm.colacoder.com": 192.168.68.70
"router.colacoder.com": 192.168.68.63
"adguard.colacoder.com": 192.168.68.63
"claw.colacoder.com": 192.168.68.70
"openvas.colacoder.com": 192.168.68.70
"invest-api.k8s.home": 192.168.68.240
"argocd.k8s.home": 192.168.68.240
"drone.k8s.home": 192.168.68.240
```
---
## 2. 自定义文件
### 2.1 Fake-IP 排除列表
路径:`/etc/openclash/custom/openclash_custom_fake_filter.list`
```
+.colacoder.com
+.k8s.home
*.lan
*.local
*.localdomain
*.home.arpa
+.quay.io
+.ghcr.io
+.docker.io
+.docker.com
+.gcr.io
+.k8s.io
+.registry.k8s.io
+.ecr.aws
+.billo.life
+.finance.yahoo.com
```
### 2.2 自定义 Hosts
路径:`/etc/openclash/custom/openclash_custom_hosts.list`
```yaml
nas.colacoder.com: 192.168.68.70
pve.colacoder.com: 192.168.68.70
npm.colacoder.com: 192.168.68.70
router.colacoder.com: 192.168.68.63
adguard.colacoder.com: 192.168.68.63
claw.colacoder.com: 192.168.68.70
openvas.colacoder.com: 192.168.68.70
invest-api.k8s.home: 192.168.68.240
argocd.k8s.home: 192.168.68.240
drone.k8s.home: 192.168.68.240
```
### 2.3 自定义 Sniffer
路径:`/etc/openclash/custom/openclash_custom_sniffer.yaml`
```yaml
sniffer:
force-dns-mapping: true
parse-pure-ip: true
override-destination: true
sniff:
QUIC:
ports: [443]
TLS:
ports: [443, 8443]
HTTP:
ports: [80, 8080-8880]
override-destination: true
force-domain: []
skip-domain:
- Mijia Cloud
- dlg.io.mi.com
- +.oray.com
- +.sunlogin.net
- +.push.apple.com
```
---
## 3. LuCI 覆写设置
以下设置通过 LuCI 后台配置,会覆盖源配置中的对应字段:
| 设置 | 值 |
|------|-----|
| 运行模式 | Fake-IP (TUN) |
| 代理模式 | Rule 策略代理 |
| 区域绕过 | 停用 |
| 域名嗅探 | 启用 |
| Default-NameServer | `8.8.8.8`, `1.1.1.1` |
| NameServer | `8.8.8.8`, `1.1.1.1` |
| Fallback | `dns.google`, `cloudflare-dns.com` (DoH) |
| store-fake-ip | 启用 |
| respect-rules | 启用 |
| custom-fakeip-filter | 启用 (blacklist 模式) |
| custom-host | 启用 |
| custom-fallback-filter | 启用 |
| china_ip_route | 启用 |
| tcp-concurrent | 启用 |
| IPv6 | 关闭 |
| QUIC | 禁用 |
---
## 相关文档
- [[VLESS-REALITY-Router-iStoreOS]] -- 主网关配置文档
- [[OpenClash-Config-Review-2026-03-19]] -- 配置审计报告
- [[家庭网络基础设施]] -- 网络拓扑总览

View File

@@ -0,0 +1,313 @@
---
tags:
- resource
- openclash
- vless-reality
- proxy
- networking
- macOS
- homelab
---
# VLESS + REALITY macOS 客户端连接指南(翻墙回国)
> 服务器:`8.138.1.192`(阿里云国内) | 部署日期2026-03-14
> 用途从海外通过国内代理访问国内资源B站、抖音、淘宝等
---
## 0. 两种使用方式
| 方式 | 说明 | 适合场景 |
|------|------|---------|
| **方式 A旁路由代理推荐** | Mac 网关指向旁路由,无需装客户端 | 在家,旁路由运行中 |
| **方式 BClashX Meta 客户端** | Mac 上独立运行代理 | 外出,不在家 |
### 方式 A旁路由代理
系统设置 → Wi-Fi → 详细信息 → TCP/IP → 手动:
- IP 地址:保持当前
- 子网掩码:`255.255.252.0`
- 路由器:`192.168.68.63`
- DNS 标签页:`192.168.68.63`
设置后无需装任何客户端,旁路由的 OpenClash 自动处理代理。详见 [旁路由文档](./VLESS-REALITY-Router-iStoreOS.md)。
### 方式 BClashX Meta 客户端(以下章节)
---
## 1. 客户端选择
ClashX Pro **不支持** VLESS + REALITY需使用基于 mihomo 内核的客户端:
| 客户端 | 说明 | 下载 |
|--------|------|------|
| **ClashX.Meta**(推荐) | 界面与 ClashX Pro 一致,切换无感 | https://github.com/MetaCubeX/ClashX.Meta/releases |
| Clash Verge Rev | 跨平台,功能更丰富 | https://github.com/clash-verge-rev/clash-verge-rev/releases |
### 安装 ClashX.Meta
1. 从 Releases 页面下载最新的 `.dmg` 文件
2. 拖入 Applications
3. 首次打开:右键 → 打开(绕过 Gatekeeper
4. 可卸载 ClashX Pro两者不冲突但不要同时运行
---
## 2. 配置文件
配置文件路径:`~/.config/clash.meta/config.yaml`(已自动写入)
**手动修改方法:** 菜单栏点击 ClashX.Meta 图标 → Config → Open config folder → 编辑 `config.yaml`
```yaml
# ============================================================
# VLESS + XTLS-Vision + REALITY翻墙回国
# 服务器: 8.138.1.192(阿里云国内)
# 用途: 海外访问国内资源
# 生成日期: 2026-03-14
# ============================================================
mixed-port: 7890
allow-lan: false
mode: rule
log-level: warning
unified-delay: true
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
fake-ip-filter:
- "*.lan"
- "*.local"
- "time.*.com"
- "ntp.*.com"
default-nameserver:
- 8.8.8.8
- 1.1.1.1
nameserver:
- https://dns.google/dns-query
- https://cloudflare-dns.com/dns-query
fallback:
- https://dns.alidns.com/dns-query
- https://doh.pub/dns-query
fallback-filter:
geoip: true
geoip-code: CN
proxies:
- name: "CN-Proxy"
type: vless
server: 8.138.1.192
port: 443
uuid: 04a7cfe3-10f6-4e38-8319-22a604e24018
network: tcp
udp: true
tls: true
flow: xtls-rprx-vision
servername: www.microsoft.com
reality-opts:
public-key: RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk
short-id: ""
client-fingerprint: chrome
proxy-groups:
- name: "Proxy"
type: select
proxies:
- CN-Proxy
- DIRECT
rules:
# 私有网络直连
- IP-CIDR,127.0.0.0/8,DIRECT
- IP-CIDR,10.0.0.0/8,DIRECT
- IP-CIDR,172.16.0.0/12,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT
# 国内视频/流媒体 → 走代理回国
- DOMAIN-SUFFIX,bilibili.com,Proxy
- DOMAIN-SUFFIX,bilivideo.com,Proxy
- DOMAIN-SUFFIX,bilivideo.cn,Proxy
- DOMAIN-SUFFIX,biliapi.net,Proxy
- DOMAIN-SUFFIX,hdslb.com,Proxy
- DOMAIN-SUFFIX,acgvideo.com,Proxy
- DOMAIN-SUFFIX,iqiyi.com,Proxy
- DOMAIN-SUFFIX,iqiyipic.com,Proxy
- DOMAIN-SUFFIX,youku.com,Proxy
- DOMAIN-SUFFIX,mgtv.com,Proxy
- DOMAIN-SUFFIX,sohu.com,Proxy
- DOMAIN-SUFFIX,qq.com,Proxy
- DOMAIN-SUFFIX,gtimg.cn,Proxy
- DOMAIN-SUFFIX,music.163.com,Proxy
- DOMAIN-SUFFIX,163yun.com,Proxy
- DOMAIN-SUFFIX,126.net,Proxy
- DOMAIN-SUFFIX,netease.com,Proxy
- DOMAIN-SUFFIX,kugou.com,Proxy
- DOMAIN-SUFFIX,kuwo.cn,Proxy
- DOMAIN-SUFFIX,douyin.com,Proxy
- DOMAIN-SUFFIX,douyinpic.com,Proxy
- DOMAIN-SUFFIX,douyincdn.com,Proxy
- DOMAIN-SUFFIX,douyinstatic.com,Proxy
- DOMAIN-SUFFIX,snssdk.com,Proxy
- DOMAIN-SUFFIX,amemv.com,Proxy
- DOMAIN-SUFFIX,ixigua.com,Proxy
- DOMAIN-SUFFIX,pstatp.com,Proxy
- DOMAIN-SUFFIX,bytedance.com,Proxy
- DOMAIN-SUFFIX,byteimg.com,Proxy
- DOMAIN-SUFFIX,xiaohongshu.com,Proxy
- DOMAIN-SUFFIX,xhscdn.com,Proxy
- DOMAIN-SUFFIX,xhslink.com,Proxy
# 国内常用服务 → 走代理回国
- DOMAIN-SUFFIX,taobao.com,Proxy
- DOMAIN-SUFFIX,tmall.com,Proxy
- DOMAIN-SUFFIX,alicdn.com,Proxy
- DOMAIN-SUFFIX,alipay.com,Proxy
- DOMAIN-SUFFIX,alipayobjects.com,Proxy
- DOMAIN-SUFFIX,alibaba.com,Proxy
- DOMAIN-SUFFIX,1688.com,Proxy
- DOMAIN-SUFFIX,jd.com,Proxy
- DOMAIN-SUFFIX,360buyimg.com,Proxy
- DOMAIN-SUFFIX,pinduoduo.com,Proxy
- DOMAIN-SUFFIX,yangkeduo.com,Proxy
- DOMAIN-SUFFIX,weibo.com,Proxy
- DOMAIN-SUFFIX,weibo.cn,Proxy
- DOMAIN-SUFFIX,sinaimg.cn,Proxy
- DOMAIN-SUFFIX,zhihu.com,Proxy
- DOMAIN-SUFFIX,zhimg.com,Proxy
- DOMAIN-SUFFIX,baidu.com,Proxy
- DOMAIN-SUFFIX,bdstatic.com,Proxy
- DOMAIN-SUFFIX,bdimg.com,Proxy
- DOMAIN-SUFFIX,douban.com,Proxy
- DOMAIN-SUFFIX,doubanio.com,Proxy
- DOMAIN-SUFFIX,wechat.com,Proxy
- DOMAIN-SUFFIX,weixin.qq.com,Proxy
- DOMAIN-SUFFIX,meituan.com,Proxy
- DOMAIN-SUFFIX,dianping.com,Proxy
- DOMAIN-SUFFIX,ctrip.com,Proxy
- DOMAIN-SUFFIX,eleme.cn,Proxy
# 国内银行/支付 → 走代理回国
- DOMAIN-SUFFIX,icbc.com.cn,Proxy
- DOMAIN-SUFFIX,ccb.com,Proxy
- DOMAIN-SUFFIX,boc.cn,Proxy
- DOMAIN-SUFFIX,abchina.com,Proxy
- DOMAIN-SUFFIX,cmbchina.com,Proxy
- DOMAIN-SUFFIX,unionpay.com,Proxy
# 国内 GeoIP → 走代理回国
- GEOSITE,cn,Proxy
- GEOIP,CN,Proxy
# 其他流量直连(海外网站本地直接访问)
- MATCH,DIRECT
```
---
## 3. 使用步骤
### 3.1 导入配置
1. 点击菜单栏 ClashX.Meta 图标
2. **Config****Open config folder**
3. 将上面的 `config.yaml` 复制到打开的目录中
4. 回到菜单 → **Config** → 选择刚才的配置文件
5. 点击 **Set as system proxy** 开启系统代理
### 3.2 验证连接
打开终端,运行:
```bash
# 测试代理是否回国ClashX Meta 实际端口为 7891
curl -x http://127.0.0.1:7891 http://cip.cc
```
预期输出 IP 为 `8.138.1.192`(阿里云广州),说明国内流量在走代理。
也可以直接打开浏览器访问 https://v.qq.com 或 https://bilibili.com 验证。
> **注意:** 如果网站显示地区限制,用无痕窗口(`Command + Shift + N`)重试,清除缓存。
### 3.3 切换模式
菜单栏点击 ClashX.Meta 图标,可切换:
| 模式 | 说明 |
|------|------|
| **Rule** | 按规则分流(推荐日常使用) |
| **Global** | 所有流量走代理 |
| **Direct** | 所有流量直连(关闭代理) |
---
## 4. 分流规则说明
当前配置采用**翻墙回国**策略(国内走代理、海外直连):
| 流量类型 | 走向 | 说明 |
|----------|------|------|
| B站/抖音/爱奇艺/优酷/腾讯视频 | Proxy回国 | 解除海外地区限制 |
| 网易云音乐/QQ音乐/酷狗 | Proxy回国 | 解除版权地区限制 |
| 淘宝/京东/拼多多/美团 | Proxy回国 | 正常访问国内电商 |
| 微博/知乎/百度/豆瓣/小红书 | Proxy回国 | 正常访问国内社交平台 |
| 支付宝/微信/国内银行 | Proxy回国 | 正常使用支付和银行 |
| 所有 GEOIP:CN 的 IP | Proxy回国 | 兜底匹配国内流量 |
| Google/YouTube 等海外网站 | DIRECT直连 | 本地直接访问,无需代理 |
如需修改,编辑 `~/.config/clash.meta/config.yaml``rules` 部分。
---
## 5. 常见问题
### Q: 连不上代理?
1. 确认 ClashX.Meta 已开启(菜单栏有图标)
2. 确认选择了正确的配置文件
3. 确认 "Set as system proxy" 已勾选
4. 检查 Dashboard菜单 → Dashboard中节点是否显示延迟
### Q: 网速慢?
- 菜单 → Dashboard → 点击节点测速
- 如果延迟 >300ms可能是服务器线路问题
### Q: 海外网站变慢了?
- 确认使用 **Rule** 模式(不要用 Global
- Rule 模式下海外流量直连,不受代理影响
### Q: 如何与 ClashX Pro 切换?
- 两个 App 可以共存,但**不要同时运行**
- 退出一个再打开另一个即可
### Q: macOS Gatekeeper 提示无法验证?
```bash
sudo xattr -rd com.apple.quarantine "/Applications/ClashX Meta.app"
```
---
## 6. 连接参数速查
| 参数 | 值 |
|------|-----|
| 协议 | VLESS |
| 地址 | `8.138.1.192` |
| 端口 | `443` |
| UUID | `04a7cfe3-10f6-4e38-8319-22a604e24018` |
| Flow | `xtls-rprx-vision` |
| 安全 | reality |
| SNI | `www.microsoft.com` |
| Public Key | `RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk` |
| ShortId | 留空 |
| Fingerprint | `chrome` |
| 本地代理端口 | `7890`HTTP/SOCKS5 混合) |

View File

@@ -0,0 +1,308 @@
---
tags:
- resource
- openclash
- vless-reality
- networking
- iStoreOS
- router
- dns
- homelab
---
# iStoreOS 主网关配置文档
> 主网关:`192.168.68.63` (iStoreOS 24.10.2, aarch64, EasePi Pro)
> WiFiDeco BE65AP 模式)
> 服务器:`8.138.1.192`(阿里云广州)
> 用途:国内视频/音乐翻墙回国 + 广告拦截 + 内网 DNS
> 状态:**已完成,正常工作** (2026-03-19 规则精简)
---
## 1. 网络拓扑
```
光猫 (拨号, Dynamic IP)
▼ WAN (eth0, DHCP)
iStoreOS (192.168.68.63) ← 主网关
├── dnsmasq (:53) → 内网 DNS + 转发到 OpenClash
├── OpenClash / mihomo (:7874) → fake-ip + TUN → 翻墙回国 + 广告拦截
├── 端口映射 (2200, 443, 51888)
├── DHCP (网关=.63, DNS=.63)
▼ LAN (eth1/eth2/eth3)
├── Deco BE65 (AP) → WiFi → 手机/平板/笔记本
└── 交换机 (2楼) → PVE + NAS
```
### DNS 解析链路
```
设备 → dnsmasq (:53)
├─ 内网域名 (*.colacoder.com, *.k8s.home) → 直接返回真实 IP
└─ 外部域名 → OpenClash (:7874, fake-ip)
├─ fake-ip-filter 匹配 → 返回真实 IP
├─ 广告域名 → REJECT
├─ 国内视频/音乐域名 → fake-ip → VLESS 代理回国
└─ 其余所有域名 → fake-ip → 直连
```
---
## 2. OpenClash 配置
### LuCI 后台设置
| 设置 | 值 |
|------|-----|
| 运行模式 | Fake-IP (TUN) |
| 代理模式 | Rule 策略代理 |
| 区域绕过 | **停用** |
| 域名嗅探 | 启用 |
| DNS 代理 | 停用 |
| 本地 DNS 劫持 | 使用 Dnsmasq 转发 |
### 覆写设置 → DNS
| 设置 | 值 |
|------|-----|
| Default-NameServer | `8.8.8.8`, `1.1.1.1` |
| NameServer | `8.8.8.8`, `1.1.1.1` |
| Fallback | `dns.google`, `cloudflare-dns.com` |
> **重要:** NameServer 必须用海外 DNS不能用国内 DNS114、119、223 等),
> 否则会产生 DNS 环路(国内 DNS IP 匹配 GEOIP,CN → 走代理 → 代理需要 DNS → 死循环)。
### 分流规则2026-03-19 精简)
只有国内视频和音乐走代理回国,其余全部直连:
```yaml
rules:
# K8s 节点直连
- SRC-IP-CIDR,192.168.68.11/32,DIRECT # k8s-cp1
- SRC-IP-CIDR,192.168.68.21/32,DIRECT # k8s-w1
- SRC-IP-CIDR,192.168.68.22/32,DIRECT # k8s-w2
# 代理服务器本身直连(防环路)
- IP-CIDR,8.138.1.192/32,DIRECT
# 广告拦截
- GEOSITE,category-ads-all,REJECT
# 私有网络直连
- IP-CIDR,192.168.0.0/16,DIRECT
# 国内视频B站/爱奇艺/优酷/芒果TV/搜狐/腾讯视频/抖音/西瓜/小红书)→ Proxy
# 国内音乐(网易云/酷狗/酷我/QQ音乐→ Proxy
# 其余全部直连
- MATCH,DIRECT
```
> 之前配置了 GEOSITE,cn + GEOIP,CN 导致所有国内流量走代理,
> 2026-03-19 精简为只代理视频和音乐。
K8s 节点 DNS 也改为 `8.8.8.8`(不经过 OpenClash详见 [[家庭网络基础设施#K8s 节点绕过 OpenClash]]
### 配置文件
- 源配置:`/etc/openclash/config/vless-reality.yaml`
- 运行配置:`/etc/openclash/vless-reality.yaml`(自动生成,勿手动改)
- API Secret`Dc7jZkmO`
- Dashboardhttp://192.168.68.63:9090
### 自定义文件(持久化,不被覆盖)
| 文件 | 用途 |
|------|------|
| `/etc/openclash/custom/openclash_custom_hosts.list` | 内网 DNS 映射 |
| `/etc/openclash/custom/openclash_custom_fake_filter.list` | fake-ip 排除域名 |
---
## 3. 内网 DNS
双重保障dnsmasq 和 OpenClash hosts 都配了内网记录。
### dnsmasq 配置
文件:`/etc/dnsmasq.d/internal-dns.conf`
```
address=/k8s.home/192.168.68.70
address=/nas.colacoder.com/192.168.68.70
address=/pve.colacoder.com/192.168.68.70
address=/npm.colacoder.com/192.168.68.70
address=/router.colacoder.com/192.168.68.63
address=/adguard.colacoder.com/192.168.68.63
address=/claw.colacoder.com/192.168.68.70
address=/openvas.colacoder.com/192.168.68.70
address=/invest-api.k8s.home/192.168.68.240
```
### OpenClash 自定义 hosts
文件:`/etc/openclash/custom/openclash_custom_hosts.list`
```yaml
nas.colacoder.com: 192.168.68.70
pve.colacoder.com: 192.168.68.70
npm.colacoder.com: 192.168.68.70
router.colacoder.com: 192.168.68.63
adguard.colacoder.com: 192.168.68.63
claw.colacoder.com: 192.168.68.70
openvas.colacoder.com: 192.168.68.70
invest-api.k8s.home: 192.168.68.240
argocd.k8s.home: 192.168.68.240
drone.k8s.home: 192.168.68.240
```
### fake-ip 排除列表
文件:`/etc/openclash/custom/openclash_custom_fake_filter.list`
```
*.colacoder.com
+.colacoder.com
*.k8s.home
+.k8s.home
*.lan
*.local
*.localdomain
*.home.arpa
```
---
## 4. 端口映射
| 规则名 | 外部端口 | 目标 |
|--------|---------|------|
| NAS-SSH-2200 | 2200 | 192.168.68.70:2200 |
| NAS-HTTPS-443 | 443 | 192.168.68.70:443 |
| Device-51888 | 51888 | 192.168.68.107:51888 |
---
## 5. DHCP 静态绑定22 台设备)
DHCP 范围:`.100` ~ `.229`start=100, limit=130避开 MetalLB `.240-.242`
详细分段和完整列表见 [[家庭网络基础设施#DHCP 静态绑定22 台设备)]]
### 摘要
| 名称 | IP | MAC |
|------|-----|-----|
| pve-docker | 192.168.68.102 | BC:24:11:3B:9C:8A |
| wireguard | 192.168.68.107 | BC:24:11:00:4D:D2 |
| Yaojia-ipad | 192.168.68.77 | 64:0B:D7:F0:D0:4C |
| Yaojias-iPhone | 192.168.68.73 | 68:EF:DC:B7:36:40 |
| Yiukai | 192.168.68.89 | 10:FF:E0:CC:1D:00 |
| Yiukai-Asus-wifi | 192.168.68.79 | 08:3A:88:59:1F:A6 |
| Yiukai-Asus-lan | 192.168.68.60 | 44:E5:17:DD:26:01 |
| yiukai-ubuntu | 192.168.68.108 | 1C:79:2D:5C:2C:C4 |
| YIUKAINAS | 192.168.68.70 | 24:5E:BE:5F:ED:38 |
| Yiukais-MBP | 192.168.68.87 | 5C:E9:1E:B2:56:79 |
| android-8fbbfff | 192.168.68.111 | 6C:2D:24:F8:F3:0C |
| easepi | 192.168.68.63 | EE:61:98:11:AD:C4 |
| homeassistant | 192.168.68.97 | BC:24:11:63:40:1E |
| kai-desktop-jetson | 192.168.68.104 | 3C:6D:66:1E:D7:62 |
| kuangxideiPhone | 192.168.68.88 | C4:C1:7D:7B:76:CC |
| lingke | 192.168.68.69 | 84:47:09:20:70:DA |
| network-scanner | 192.168.68.84 | BC:24:11:09:F1:9E |
| pc | 192.168.68.176 | 12:D0:5B:A3:8B:4F |
| adguard-vm | 192.168.68.112 | BC:24:11:C9:58:CB |
---
## 6. 踩坑记录
### DNS 环路(最关键)
OpenClash 的 nameserver 不能用国内 DNS114.114.114.114、119.29.29.29 等),
因为这些 IP 匹配 GEOIP,CN 规则 → 走代理 → 代理需要 DNS → 死循环。
**必须用海外 DNS8.8.8.8、1.1.1.1)。**
### OpenClash 配置覆盖
OpenClash 每次重启都会从源配置重新生成运行配置。
自定义 hosts 和 fake-ip-filter 必须放在 `/etc/openclash/custom/` 目录下的专用文件里。
直接改 yaml 文件会被覆盖。
DNS 相关设置必须在 LuCI 覆写设置里改,不能改 yaml。
### 区域绕过必须停用
翻墙回国场景下,"大陆"和"海外"绕过都不合适,必须选"停用"
让配置文件里的分流规则来决定。
### Redir-Host 模式不可用(已测试)
测试过从 fake-ip 切换到 redir-host (TUN) 模式,结果:
- Google、Bilibili 正常 ✅
- **v.qq.com 超时** ❌(国内 CDN 域名无法正确代理)
- billo.life VPN 域名正常 ✅
原因redir-host 模式下流量分流依赖 sniffer 从 TLS SNI 提取域名,
部分国内 CDN 的 SNI 无法正确匹配规则,导致连接失败。
**翻墙回国场景必须用 fake-ip 模式。**
### Fake-IP Filter 维护
VPN、容器仓库等需要真实 IP 的域名,手动加到 fake-ip-filter
`/etc/openclash/custom/openclash_custom_fake_filter.list`
当前已加入2026-03-19 去重精简,只用 `+.` 格式):
- `+.colacoder.com` / `+.k8s.home` — 内网域名
- `+.quay.io` / `+.ghcr.io` / `+.docker.io` / `+.docker.com` / `+.gcr.io` / `+.k8s.io` / `+.registry.k8s.io` — 容器仓库
- `+.ecr.aws` — AWS ECR不再用 `*.amazonaws.com` 全量排除)
- `+.billo.life` — 公司 VPN 域名
- `+.finance.yahoo.com` — Yahoo Finance API
---
## 7. 安全加固
已实施的安全措施,详见 [[家庭网络基础设施#安全加固2026-03-15 审计)]]
- DNS 只监听 LAN (`listen_address`)
- SSH 关闭密码认证,只绑 LAN (`PasswordAuth=off, Interface=lan`)
- ttyd 只绑 LAN (`interface=@lan`)
- uhttpd 只绑 LAN (`listen_http/https=192.168.68.63`)
- IPv6 关闭
- WAN ping 关闭
- OpenVPN 1194 规则已删除
---
## 8. 紧急恢复
```bash
SSH_AUTH_SOCK="$HOME/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock" ssh root@192.168.68.63
# 停止 OpenClash恢复直连上网
/etc/init.d/openclash stop
# 如果 DNS 也断了,临时用 8.8.8.8
echo "nameserver 8.8.8.8" > /etc/resolv.conf
```
---
## 9. 更新维护
```bash
# 更新 mihomo 内核
cd /tmp
curl -L -o mihomo.gz "https://github.com/MetaCubeX/mihomo/releases/latest/download/mihomo-linux-arm64.gz"
gunzip -f mihomo.gz && chmod +x mihomo
mv mihomo /etc/openclash/core/clash_meta
/etc/init.d/openclash restart
# 更新 OpenClash 插件
opkg install /tmp/luci-app-openclash_*.ipk
```
---
## 10. 配置审计
- [[OpenClash-Config-Review-2026-03-19]] -- 全面配置 review含安全、规则、DNS 问题及修复优先级

View File

@@ -0,0 +1,214 @@
---
tags:
- resource
- openclash
- vless-reality
- proxy
- networking
- setup-guide
- homelab
---
# VLESS + XTLS-Vision + REALITY 搭建文档
> 基于 Xray-core 官方仓库,当前最推荐的代理方案。
> 无需域名、无需 TLS 证书,流量伪装为正常 HTTPS 访问。
**部署状态:已完成** | 初始部署2026-03-14 | Xray 版本v26.2.6
**用途:翻墙回国** — 从瑞典通过国内代理访问国内资源
---
## 当前状态总览
### 已完成
- [x] 阿里云服务器 Xray-core 部署
- [x] iStoreOS 从旁路由升级为主网关
- [x] Deco BE65 切换为 AP 模式
- [x] DHCP 静态绑定19 台设备)
- [x] 端口映射迁移3 条规则)
- [x] OpenClash + mihomo 安装配置
- [x] 内网 DNSdnsmasq + OpenClash hosts
- [x] 广告拦截OpenClash GEOSITE 规则)
- [x] 翻墙回国验证v.qq.com 正常播放)
- [x] AdGuard Home 移除(由 OpenClash 接管广告拦截和 DNS
### 最终方案
不使用 AdGuard Home全部由 OpenClash + dnsmasq 处理:
- dnsmasq(:53) 负责内网 DNS + 转发到 OpenClash
- OpenClash(:7874) 负责 fake-ip 分流 + 广告拦截 + 翻墙回国
- NameServer 必须用海外 DNS8.8.8.8),不能用国内 DNS避免环路
---
## 服务器信息
| 项目 | 值 |
|------|-----|
| 服务器 | `8.138.1.192` (Ubuntu 24.04 LTS, 阿里云广州) |
| 端口 | `443` |
| UUID | `04a7cfe3-10f6-4e38-8319-22a604e24018` |
| Private Key | `mLQp0G0_yYYBNeviVJ674UmaYLimx9vbixVQhlESTWU` |
| Public Key | `RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk` |
| 伪装目标 | `www.microsoft.com` |
### 分享链接
```
vless://04a7cfe3-10f6-4e38-8319-22a604e24018@8.138.1.192:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=www.microsoft.com&fp=chrome&pbk=RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk&type=tcp#VLESS-Reality
```
---
## 网络拓扑
### 当前状态
```
光猫 (拨号, 瑞典 ISP)
▼ WAN (eth0, DHCP, 公网 IP)
iStoreOS / EasePi (192.168.68.63) ← 主网关
├── DHCP 服务器 (网关=.63, DNS=.63)
├── AdGuard Home Docker (:53) ← 临时,待迁出
├── OpenClash (已安装,未启用,与 AGH 冲突)
├── 端口映射 (2200, 443, 51888)
▼ LAN (eth1/eth2/eth3)
├── Deco BE65 (AP 模式) → mesh WiFi → 手机/平板/笔记本
└── 交换机 (2楼) → PVE + NAS + 其他有线设备
```
### 目标架构
```
光猫 → iStoreOS (192.168.68.63, 主网关)
├── DHCP (网关=.63, DNS=AGH的IP)
├── OpenClash (:7874, fake-ip + DNS劫持)
├── 端口映射
├── Deco BE65 (AP) → WiFi 设备
└── 交换机 (2楼)
├── PVE (192.168.68.69) → VM 跑 AdGuard Home
└── NAS (192.168.68.70)
DNS 链路:
设备 → AdGuard Home (PVE VM:53, 广告过滤+内网重写)
└→ 上游: OpenClash (192.168.68.63:7874, fake-ip)
├→ 国内域名 → VLESS 代理回国
└→ 海外域名 → 直连
```
---
## 物理布局
```
1楼: 光猫 → iStoreOS (EasePi) → Deco BE65 主机
2楼: 交换机 ← 网线连接 Deco → PVE 服务器 + NAS
```
注意2楼设备通过 Deco AP 桥接到 iStoreOS不是直连。
---
## 相关文档
| 文档 | 说明 |
|------|------|
| [主网关配置](./VLESS-REALITY-Router-iStoreOS.md) | iStoreOS 网络/DHCP/端口映射/OpenClash 配置 |
| [macOS 客户端](./VLESS-REALITY-Client-macOS.md) | ClashX Meta 客户端配置(外出时使用) |
| [AdGuard Home 备份](./adguardhome-backup-20260315.tar.gz) | 完整备份(配置+数据89MB |
---
## PVE 虚拟机列表
| VMID | 名称 | IP | 状态 | 说明 |
|------|------|-----|------|------|
| 100 | HA (Home Assistant) | - | running | 智能家居 |
| 101 | k8s-cp1 | - | running | K8s 控制面 |
| 102 | Wireguard | 192.168.68.107 | running | VPN |
| 103 | k8s-w1 | - | running | K8s 工作节点 |
| 104 | k8s-w2 | - | running | K8s 工作节点 |
| 105 | pg-01 | - | running | PostgreSQL |
| 106 | network-scanner | 192.168.68.84 | running | 网络扫描 |
| 110 | adguard-home (LXC) | 192.168.68.110 | running | AdGuard Home网络不稳定待修复 |
---
## 踩坑记录
### 1. OpenClash + AdGuard Home 53 端口冲突
OpenClash fake-ip 模式需要 DNS 劫持(占 53 端口),与 AdGuard Home 冲突。
尝试的方案:
- 关闭 DNS 劫持 → fake-ip 不生效,无法代理
- 开启防火墙转发 → dnsmasq 不运行DNS 全断
- AdGuard Home 上游指向 OpenClash → 其他设备(旁路由模式下)拿到 fake-ip 断网
**结论:必须分开部署在不同机器上。**
### 2. Deco BE65 不支持自定义 DHCP 网关/DNS
Deco 系列路由器的 DHCP 设置完全封闭,无法自定义下发网关和 DNS。
**解决方案:** Deco 切 AP 模式iStoreOS 接管 DHCP。
### 3. PVE LXC 容器网络延迟不稳定
Ubuntu 25.04 LXC 容器 eth0 不能自动启动,需要手动 `ip link set eth0 up`
即使手动配置后ping 延迟在 9ms~200ms 之间波动。
PVE 主机和 NAS 延迟正常3-7ms说明是 LXC 网络栈的问题。
**待解决:改用完整 VM 或修复 LXC 网络。**
### 4. 旁路由模式 bypass_gateway_compatible
OpenClash 旁路由模式下必须开启 `bypass_gateway_compatible=1`,否则转发流量不通。
同时必须关闭 `enable_redirect_dns=0`,否则会劫持所有设备 DNS 导致断网。
### 5. 1Password SSH Agent
SSH 到新 IP 时需要在 `~/.ssh/config` 中添加 `IdentityAgent` 配置指向 1Password socket。
不能用 `IdentitiesOnly=yes`,否则会阻止 1Password agent。
---
## 服务器管理
### 阿里云服务器 (8.138.1.192)
```bash
ssh admin@8.138.1.192
# Xray 管理
systemctl status xray
systemctl restart xray
journalctl -u xray -f
# 更新
bash -c "$(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh)" @ install
```
### iStoreOS 主网关 (192.168.68.63)
```bash
SSH_AUTH_SOCK="$HOME/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock" ssh root@192.168.68.63
# 紧急恢复(如果 OpenClash 搞坏了网络)
/etc/init.d/openclash stop
nft -a list chain inet fw4 dstnat | grep 'DNS Hijack' | grep -o 'handle [0-9]*' | while read h; do nft delete rule inet fw4 dstnat $h; done
nft -a list chain inet fw4 nat_output | grep 'DNS Hijack' | grep -o 'handle [0-9]*' | while read h; do nft delete rule inet fw4 nat_output $h; done
```
### PVE (192.168.68.69)
```bash
SSH_AUTH_SOCK="$HOME/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock" ssh root@192.168.68.69
# LXC 管理
pct list
pct start/stop/restart 110
pct exec 110 -- bash
```

View File

@@ -0,0 +1,65 @@
---
created: "2026-03-15"
type: resource
tags:
- resource
- openclash
- vless-reality
- proxy
- networking
- homelab
---
# VLESS-Reality 翻墙回国
## 目标
从瑞典通过阿里云国内服务器代理访问国内地区限制内容B站、腾讯视频、抖音、小红书等
## 架构
```
光猫(拨号) → iStoreOS(192.168.68.63, 主网关) → Deco BE65(AP) → 所有设备
├── dnsmasq(:53) → 内网DNS + 转发到 OpenClash
├── OpenClash(:7874) → fake-ip + TUN → 翻墙回国 + 广告拦截
└── 端口映射 (2200, 443, 51888)
```
## 关键组件
| 组件 | 位置 | 版本 |
|------|------|------|
| Xray-core | `8.138.1.192` (阿里云广州) | v26.2.6 |
| OpenClash | iStoreOS `192.168.68.63` | v0.47.071 |
| mihomo | iStoreOS | v1.19.21 |
| dnsmasq | iStoreOS | 内置 |
## 详细文档
- [[VLESS-REALITY-Setup-Guide|总览文档]]
- [[VLESS-REALITY-Router-iStoreOS|主网关配置]]
- [[VLESS-REALITY-Client-macOS|macOS 客户端(外出用)]]
## 核心踩坑
1. **DNS 环路**OpenClash nameserver 不能用国内 DNS否则匹配 GEOIP,CN → 走代理 → 代理需要 DNS → 死循环
2. **OpenClash + AdGuard Home 冲突**fake-ip 模式的 DNS 劫持与 AGH 抢 53 端口,最终去掉 AGH由 OpenClash + dnsmasq 接管
3. **OpenClash 配置覆盖**:自定义 hosts/fake-ip-filter 必须放在 `/etc/openclash/custom/` 专用文件里,直接改 yaml 会被覆盖
4. **区域绕过必须停用**:翻墙回国场景下 "大陆" 和 "海外" 都不对,选 "停用"
5. **Deco BE65 限制**:不支持自定义 DHCP 网关/DNS必须切 AP 模式让 iStoreOS 接管
## 服务器连接信息
| 参数 | 值 |
|------|-----|
| 协议 | VLESS |
| 地址 | `8.138.1.192` |
| 端口 | `443` |
| UUID | `04a7cfe3-10f6-4e38-8319-22a604e24018` |
| Public Key | `RTO_UOk5ncr3DAAYR08g08L0fo5ax9pmGFj8c8lXWgk` |
| 伪装目标 | `www.microsoft.com` |
| Flow | `xtls-rprx-vision` |
## 相关
- [[PVE Security Scanner]]