Mihomo / Clash 问题与修复
使用 clash 时部分域名无法访问 在网络中增加跳过代理的域名 --- Clash 规则 DOMAIN 精准匹配 testflight.apple.com 域名 DOMAIN-SUFFIX 匹配所有…
使用 clash 时部分域名无法访问
在网络中增加跳过代理的域名
1# 如果你还想排除 .com.cn、.net.cn 等,也同样被 .cn 覆盖。
2*.cn
1chinaccs.cn,*.chinaccs.cn,ctcdn.cn,*.ctcdn.cn
Clash 规则
1rules:
2 - DOMAIN,testflight.apple.com,🔰国外流量
3 - DOMAIN-SUFFIX,feedly.com,DIRECT
4 - DOMAIN-KEYWORD,aria2,DIRECT
5 - IP-CIDR,3.123.36.126/32,🔰国外流量,no-resolve
6 - IP-CIDR6,2001:b28:f23d::/48,🔰国外流量,no-resolve
7 - GEOIP,CN,DIRECT
8 - MATCH,⚓️其他流量
DOMAIN 精准匹配 testflight.apple.com 域名
DOMAIN-SUFFIX 匹配所有 feedly.com 结尾的域名(包括子域名)
DOMAIN-KEYWORD 匹配包含 aria2 关键字的域名
IP-CIDR 将 IP 地址 3.123.36.126 的流量按“🔰国外流量”处理,不进行 DNS 解析(no-resolve)
IP-CIDR6 匹配 IPv6 地址范围 2001:b28:f23d::/48 的流量,并按“🔰国外流量”策略处理,也不进行 DNS 解析
GEOIP,CN 匹配所有 IP 属于中国(CN)地理区域的流量
MATCH 默认匹配所有没有被前面规则捕获的流量,并使用“⚓️其他流量”策略处理
Clash 解析无法走本地 hosts
/etc/hosts 生效但 Clash 拦截了 DNS
1. 添加直连规则(DIRECT)
1rules:
2 - DOMAIN-SUFFIX,example.com,DIRECT
3 - MATCH,Proxy
- 此规则确保所有以 .example.com 结尾的域名,包括 hr.example.com,都不走代理,实现直连访问。
2. 确保 DNS 解析使用本地 /etc/hosts
1dns:
2 enable: true
3 enhanced-mode: redir-host # 支持 HOSTS 映射
4 listen: 0.0.0.0:53
5 nameserver:
6 - 114.114.114.114 # 公共DNS
7 - 223.5.5.5
8 fallback:
9 - 8.8.8.8
10 fallback-filter:
11 geoip: true
12 ipcidr:
13 - "192.168.0.0/16"
- 确认你的系统 DNS 指向 Clash(如 127.0.0.1:53),并重启 Clash,使其优先读取 /etc/hosts。
如果第 2 条不行,则看一下 UI 界面的 Clash 配置
Clash Verge - 设置 - DNS 覆写 - 使用 Hosts ✅|使用系统 Hosts ✅
TUN 模式
“TUN”的全称是 network TUNnel,即“网络隧道”的意思,它是一种由操作系统内核提供的虚拟网卡,与物理网卡类似,但专注于第 3 层(网络层/IP)数据包的处理。TUN 模式会 创建一个虚拟网卡(如 tun0, utun0),并通过系统路由重定向所有 TCP/UDP 流量到这个网卡,由 Clash 虚拟网卡拦截并处理,实现真正的系统级透明代理。
可以不用开启系统代理(System Proxy)
此模式需要应用有管理员权限
在虚拟网卡(TUN模式)下,通常无法直接开启热点供其他设备访问。
| 功能/影响 | System Proxy(系统代理) | TUN 模式 |
|---|---|---|
| 流量拦截方式 | 设置 IE/WinHTTP 代理,需应用配合支持 | 通过虚拟网卡 + 路由全部拦截 |
| 代理对象 | 浏览器、支持代理的应用 | 全系统 App、包括游戏、终端等 |
| TCP/UDP 支持 | 通常仅支持 HTTP(S),难以拦截 UDP 流量 | 支持 TCP 和 UDP |
| 安装/配置复杂度 | 简单易操作,但不鲁棒 | 需安装 Service Mode、配置防火墙 |
| 与 EasyConnect 等 VPN 兼容性 | 冲突高,被动设置系统代理会被检测 | 不修改系统代理,兼容性更高 |
- 开启 TUN 模式后,关闭 System Proxy:
- Clash for Windows / Verge / Meta 都提供独立开关。启用 TUN 时,不要勾选系统代理
- 如有服务检测系统代理,将找不到,冲突消除。
- 注意防火墙设置:
- Windows TUN 模式需安装 “Service Mode”,并允许 Clash core 放通虚拟网卡流量。
- macOS/Linux 同样需安装虚拟网卡服务,并在系统设置中允许路由。
- TUN 模式更适合不支持代理设置的应用:
- 如游戏、UWP 应用、git、命令行工具等,System Proxy 模式下常“走不出”
总结
- TUN 模式本质上可替代系统代理:不再需要设置 IE/系统代理;
- 更加底层透明,能够劫持所有流量(包括不遵守系统代理的软件和 UDP 流量);
- 对冲 EasyConnect 类型软件冲突也更友好;
- 使用时只需开启 TUN、安装虚拟网卡服务、关闭系统代理即可。
GeoData
GeoData 主要包括两个部分
- GeoIP(IP 地址段) 包含各个国家、地区、服务提供商的 IP 地址段数据,例如:
- 哪些 IP 属于中国(CN);
- 哪些 IP 属于美国(US);
- 哪些 IP 属于 Facebook、Google、Microsoft 等。
- GeoSite(域名列表) 包含特定国家或服务的域名规则,例如:
- Google 所有相关域名;
- Netflix、YouTube、Telegram 等服务的域名列表;
- 国内网站域名(如 bilibili、百度、淘宝等);
为什么要定期更新 GeoData?
GeoData 数据是不断变化的:
1- IP 分配会调整;
2- 网站域名结构可能变更;
3- 新的服务和应用上线;
如果不更新,可能导致:
1- 原本应该直连的流量走了代理(浪费带宽);
2- 原本应该走代理的请求被直连(访问失败或被墙);
3- 无法访问新服务(例如最近更新的流媒体网站);
使用 Tun 连接手机热点无法访问网络
在 Clash 客户端中,启用 TUN 模式后,也同时打开“系统代理(System Proxy)”或 HTTP/SOCKS 代理功能