-
Notifications
You must be signed in to change notification settings - Fork 438
故障排除
非本项目原因导致的故障,不保证解决,维护者仅能在时间充足的情况下,出于热心进行指导和协助。
-
OpenClash 自身故障,请去 OpenClash 仓库反馈,在本项目反馈是没用的。
-
上游规则错误,请去规则对应仓库反馈,或者自行修改。本项只是对上游规则的一个集中引用,作者无法解决规则本身问题。
强烈推荐使用 ImmrotalWrt
-
选择版本:Stable Release 或 SNAPSHOT 版本均可。
-
喜欢追新:使用 SNAPSHOT 版本。
-
喜欢稳定:使用 Stable Release 版本。
-
-
无容量需求:直接用官方编译版。
-
有个性化需求:使用 Firmware Selector 在线生成自带插件的固件,无需编译知识。
-
容量需求高:需自行修改固件镜像文件或编译。
推荐更新方式:使用值守式系统更新(luci-app-attendedsysupgrade
)或 owut
一键生成带当前插件的固件并刷入。
本项目维护者部署的多台设备均使用 ImmortalWrt SNAPSHOT,使用场景包括家庭以及生产环境下的主路由,包含 X86、ARM 等不同架构的设备,常年运行均未出现任何问题。
项目维护者确保本项目内容保证和此固件完美兼容,并及时进行更新适配。
OpenWrt 官方版本亦可使用,注意需要自行安装相关依赖,并将 Dnsmasq 替换为 Dnsmasq-full
-
老旧版本与内核固件:如“某Store”固件。
-
LEDE 固件:与 OpenClash 的“绕过大陆”功能存在兼容性问题。
-
臃肿固件:插件可能存在冲突。
以上建议是基于项目维护者的经验做出的,不代表任何立场。
注意:若使用不推荐的固件,问题请自行解决。
自编译/在线编译固件,建议使用 Firewall4(Nftables)。
强烈建议使用主路由环境,抛弃旁路由。
-
主路由已能满足需求时,旁路由是多余的。
-
增加旁路由会复杂化网络环境,易造成问题。
我个人始终坚持认为如果一个主路由可以满足使用需求的情况下,用旁路由纯粹就是脱裤子放屁。
在家用宽带已经白菜价的今天,流控和多拨从来就不是家庭环境和类家庭环境下的刚需,99%的使用需求都可以用一个 OpenWrt 主路由来解决,刻意增加旁路由纯粹就是给自己找麻烦。
软路由≠旁路由,我很反感网上那些一提软路由上来就是旁路由的教程,完全就是坑小白,为了搞旁路由而创造需求,刻意将网络环境复杂化。
尤其某些看起来高大上复杂到像蜘蛛网一样的“家用网络”拓扑图,当笑话看就好,千万别模仿。
旁路由所谓的“折腾不影响家庭网络”的“优点”本身就不该存在,OpenWrt 早已今非昔比,作为主路由系统它的稳定性从来就不是问题。
如果你认可旁路由的这种“优点”,那么你应该反思的是为什么你“折腾”起来 OpenWrt 就会出现各种问题就断网就会挂掉,你“折腾”的方式方法和方向是否有问题?
维护者观点:如无必要,勿增实体,大到设备,小到插件,原则皆是如此。关于旁路由问题,维护者可能仅凭经验解答,不对结果负责。
订阅模板不会影响 GeoSite 范围内的国内域名访问问题,分流异常通常源于上游规则。
订阅模板只是一个对上游第三方规则的集中引用,模板自身并不会导致分流这个问题,分流问题是由上游的规则碎片引起的。大陆域名和 IP 的分流也是依托引用的大陆白名单和 GEO 数据库完成的。
上游规则、大陆白名单、GEOIP 数据库、GEOSITE 数据库内容和本项目没有关系,它们导致的分流异常情况请不要向我反馈,我也无法解决。有需要请去上游规则的仓库进行反馈。
但就本项目维护者自身经验而言,上游规则碎片和 GEO 数据库很少出现分流错误的问题。偶发性的问题不会对日常使用造成严重影响。
正常情况下,国内域名和IP不应该进入Clash内核。
解决方案:
-
更新 GEOIP 数据库、GEOSITE 数据库和大陆白名单。
-
若问题依旧,重置设置并重新配置。
更新 GEOIP 数据库、GEOSITE 数据库和中国大陆白名单!
更新 GEOIP 数据库、GEOSITE 数据库和中国大陆白名单!
更新 GEOIP 数据库、GEOSITE 数据库和中国大陆白名单!
重要的事情说三遍,一定要更新,否则 OpenClash 自带的绕过中国大陆功能会出现问题,国内域名会进入内核,全部走节点,导致速度下降。
如果国内常见的网站出现分流不正常。说明你的 OpenClash 工作不正常,请先更新 GEOIP 数据库、GeoSite 数据库和大陆白名单,必要时请还原设置重新配置。
还原一次重新设置后如果还是不行,建议从其他方面入手查找故障原因,不需要反复还原反复折腾。
如果你认为规则出现了分流错误,请自行进入 Dashboard 检索对应域名命中的策略组,以及相关策略组引用的规则,然后至对应项目的仓库反馈。
此类问题如果发 issue ,可能会得到类似回答,或者在维护者时间充足的情况下,有可能会引导排查相关故障。
针对下载流量分流的建议:
- 独立下载设备:为设备 IP 设置直连规则。
自行替换规则中的 IP 地址为下载设备的局域网地址。
SRC-IP-CIDR,192.168.1.201/32,DIRECT
- 非独立设备:设置“漏网之鱼”为直连。
唯一副作用就是会让未能命中”漏网之鱼“以上的所有策略组的海外域名会变为直连访问,包括泄露检测网站将无法通过检测。
本项目对于下载流量的处理,是依靠 OpenClash 自带的“仅代理命中流量”以及模板中引用的相关规则而实现的。
OpenClash 自带的“仅代理命中流量”实际上就是附加了一个比较暴力的分流规则,该规则以及订阅模板中维护者添加的规则,都是依靠域名来实现分流从而尽力避免下载数据浪费宝贵的机场流量。
但是,针对 P2P 软件产生的纯 IP 数据连接,基本没有太好的处理办法。毕竟 OpenClash 是运行在路由系统中,无法像 Clash For Windows 那样可以按照进程去代理流量。而如果设置仅代理 80 和 443 端口,又会导致大量的其他流量无法被代理。
个人实践下来,本项目目前的分流规则对迅雷下载流量处理的还算比较好,对于 BT 和 PT 的流量处理还有不足之处,这是没办法的事情。
冷门国内域名分流异常,可参考 关于冷门国内域名的收录。
- 检查 Dashboard 中对应的策略组是否选择了正确的节点。
例如,Youtube 打不开,可能是因为 Dashboard 中 Youtube 策略组选择了“新加坡节点”分组,但你并没有新加坡节点,所以肯定是打不开的。此时需要你手动指定其他可用的节点。
流媒体服务设置默认为新加坡节点是因为新加坡节点有更多的简体中文内容,这一点是适配本项目推荐机场的。
不要一上来就抱怨不能用,先在 dashboard 里选择好节点再说
如果你的 OpenWrt 中部署了 DDNS 服务,并且使用了境外 DDNS 服务商的 API,有可能会出现 DDNS 域名被错误设置为 Fake-IP 的情况。
将相关服务商的 API 域名填入 Fake-IP Filter 中即可。
参考:https://github.com/Aethersailor/Custom_OpenClash_Rules/issues/83
如果遇到 Google Play 更新异常(一直转圈)的问题
请尝试在 流量控制 > 绕过指定区域 IPv4 黑名单中添加如下四条域名:
services.googleapis.cn
googleapis.cn
xn--ngstr-lra8j.com
clientservices.googleapis.com
如果你同时启用了 ipv6 ,请在 ipv6 设置中的绕过大陆黑名单中同时添加上述四条域名
海外网站打不开,并且内核日志里没有访问记录
-
清空“流量控制 > WAN 接口名称”。
-
确保 dnsmasq 的 DNS 重定向功能已关闭。
-
检查设备的 DNS 是否指向了 OpenClash 所在的 OpenWrt
-
检查 OpenClash 是否为 Dnsmasq 的上游服务器
-
使用 nslookup 检查海外域名(如 www.google.com )是否返回 Fake-IP (如 198.18.0.1 这样的 198 开头的地址)
-
开启 IPv6 的情况下,建议关闭路由的 SLACC 和 DHCPv6 中分配 IPv6 DNS 的相关设置,强迫下游设备使用路由的 IPv4 地址解析 IPv6 域名请求
所有配置完美无瑕,正常使用一段时间,升级 OpenClash 或者内核后,莫名其妙的开始泄露
还原 OpenClash 配置,重启系统后,重新配置
本项目规则中 Steam 默认直连,如果你的网络以前无法正常使用 Steam ,那么现在必然还是无法正常使用 Steam,这与本项目规则没有关系
个人认为在经常使用 Steam 的情况下,在 PC 上使用 Watt Toolkit(瓦特工具箱) 并设定该工具开机自动启动并加速才是体验最佳的解决方案
所以本项目规则暂时不会对 Steam 登录做出任何优化,毕竟重口难调
Watt Toolkit 官网:https://steampp.net/
路径:OpenClash 覆写设置 > 规则设置
-
勾选“自定义规则”。
-
在框内按需添加规则。
-
保存设置后,重启 OpenClash 即可生效。
更改订阅时间为其他时间,或者更换其他的订阅服务。
启用订阅设置中的“跳过证书验证”选项,如果你已经启用了该功能并出现报错,则尝试关闭该功能。如果问题依然出现,尝试更换订阅更新时间已经更换其他订阅转换服务。
如果 OpenClash 自带的订阅转换服务全部不可用,你可以使用本项目提供的订阅转换服务地址:
https://api.asailor.org/sub
填写进“订阅转换服务地址”中即可生效。
本项目的订阅转换后端服务纯属用爱发电,未做任何限制,请勿滥用。
订阅转换后端必须能够正常访问 GitHub 才能更新订阅,如果你的订阅转换服务是架设在国内网络环境下的,请使用本项目的反代模板地址解决访问问题。
https://raw.githubusercontent.com/Aethersailor/Custom_OpenClash_Rules/refs/heads/main/cfg/Custom_Clash_Mainland.ini
该模板自动同步更新,模板内所有上游规则地址均已添加 GitHub 反代链接。
本项目提供的仅仅是订阅转换模板以及 OpenClash 有关的设置方案,且所有设置操作均基于 OpenClash 的图形界面,没有任何超出常规范围的设置和修改,因此不会导致 OpenWrt 以及 OpenClash 工作异常。不要怀疑设置是否有问题。
建议使用主路由工作环境。
旁路由/二级路由相关设置基于本人对 OpenWrt 以及 OpenClash 的理解而形成,理论上不会导致问题,请自己根据实际情况调整。
有问题可以到 Telegram 群组内反映,会有热心人解答。
OpenClash 设置以及订阅转换模板具有普适性 ,按照方案设置后如果有异常,请从方案和模板以外的因素自行查找原因。请不要怀疑本项目的方案是否有错误,这只会浪费你的时间。
故障原因包括但不限于 OpenClash Dev 版本自身、Clash 内核自身、订阅转换服务亦或是搭配其他插件、他人编译的固件、老旧的固件版本、OpenWrt 设置错误,以及某些设备内置 DNS 等原因。
以上原因均与本项目内容无关,请自行排查故障。相关 issue 将被直接关闭,不再予以解答。
讲解本项目相关的 OpenClash 设置方法。
讲解如何设置并优雅的使用 OpenWrt 的 IPv6 功能。
讲解如何使 OpenClash 和 Dnsmasq 搭配实现无需第三方插件参与的广告拦截设置方法。
工作不正常?各种问题疑惑看这里