如何在OpenWrt软路由上设置OpenClash
注:
这篇文章可能违反了中国大陆的法律规定。如果您在中国大陆,请立刻离开。请勿转载和传播,否则可能受到中国大陆法律的处罚或制裁。
杂话
因为已经开学了好久,最近都没什么时间除草,中间还因为一次手误,导致博客丢了几篇文章(备份系统不知道为什么失效了),很烦!所以最近对博客系统进行了一次更改,增加多层备份,并且简化了网络结构,使其更加稳定。
引子
最近发现SSRP+这类的软路由代理插件有一定的局限性,不能做到很强大的分流,无法进行无缝的故障转移,对于我这种需要通过梯子进行国际考试的考生来说十分痛苦。随即想到了使用OpenClash。Clash相对于大多数人都不会陌生,CFW,ClashX,ClashR等等终端上的软件也是耳熟能详,但是很少人接触过OpenClash。这篇文章主要讲OpenClash该如何设置,并且如何避开一些坑。
因为OpenClash还处于开发活跃阶段,本文存在一定的时效性,如果时间过长,可能导致本文的内容失效!
固件准备
首先需要准备一个带有OpenClash的固件,这里不推荐自己使用OPKG进行安装,依赖等问题很难办,而且谁也不知道你用的什么上古版本的OpenWrt,所以说,随机编译较为稳定。这里会提供一个Github Actions的自动编译。固件含有OpenClash,需要可以自取。因为是自动编译,并没有每一个都进行测试,所以并不能保证100%的稳定性
配置文件准备
熟悉Clash的朋友们应该知道,使用Clash必须要有一个yaml的配置文件。Clash无法直接使用Vmess,SSR,SS,Trojan的分享URL,需要第三方工具进行转化,并且,由于我们需要强大的分流规则,所以这里推荐ACL4SSR的规则转换
当然,还有另外一种方法,OpenClash提供了配置文件生成插件,可以自主进行规则的设置和节点的分组,但是因为我使用的ACL4SSR,没有使用OpenClash自带的,这里就不再赘述了。
开始设置
首先在配置文件订阅
中添加配置文件,然后设置好自动更新,可以添加多个,然后在配置文件管理
中选择需要使用的配置文件
更新内核
进入常规设置
选择适配的CPU架构。
进入版本更新
,找到一键更新,进行自动更新。
如果自动更新失败,请手动下载内核文件,并且传入指定目录。OpenClash的页面写的很清楚,这里没必要细说。重启路由器。
模式设置
进入全局设置
,然后看见有模式选择,默认是Redir-Host模式。这里推荐是Redir-Host模式,这个模式更加稳定,性能更好,但是更新内核文件会出现问题,DNS请求会更慢。
底下有一个黄色按钮切换到Fake-IP模式
。Fake-ip能够让用户获得更加快速的DNS请求,并且可以完美更新内核文件。但是缺点很明显,DDNS会获取到错误IP,性能较差。
这里不推荐使用TUN,会导致吞吐量极具降低!
默认选择Rule
模式,推荐启用大陆IP绕过模式
,减少内存和CPU占用。
UDP模式按照自己需求来开。
DNS设置
本地DNS劫持请开启,保证正常功能的使用。如果有上游DNS,请按照提示进行设置
IPV6 DNS请关闭,OpenClash对于IPV6支持较差,不建议开启。
禁止DNSmasq缓存建议开启,有时错误的缓存会导致终端无法上网。
高级设置按需进行设置,不一定要开。
其他设置
GeoIP,大陆白名单,第三方规则 库都建议进行定时升级,确保最好的网络访问状态。
在网络--DHCP/DNS
中查看DNS转发
是否是:127.0.0.1#7874,如果不是,请修改。关闭DNS v6的解析。
如果使用TUN模式,在网络--防火墙
中,间VPN接口的规则设置为全部接受。
如果发现性能跟不上,网速跑不满,请关闭:流控类软件(Qos,SQM等),BBR,SFE,Flowoffload之类的加速软件。可以一个一个关闭排除问题,不用一下子全部关掉。建议Turbo ACC中关闭DNS加速。
在主界面点击启动OpenClash
Clash设置
回到OpenClash主页面,点击Yacd后面的打开控制面板
这里推荐Yacd面板,比较稳定。DashBoard有时候会连接显示不全,并且跳出验证项。请勿两个同时使用,配置文件不能实时互通。
策略设置
熟悉Clash的朋友们这里就不用看了,和软件版的Clash设置基本一样。
点击Proxies
将节点选择切换为自动选择(最稳定最快)
这样理论上就能进行畅快的网络遨游了。
也可以选择继续设置:
将每种Selector(后面都会有显示,如下图所示)选择自己想要的模式,达到最适合自己的分流目的。
漏网之鱼和Global两种模式推荐节点选择或者Direct(直连)
节点选择:不适配任何规则的流量通过代理
Direct:不适配任何规则的流量不通过代理,直连。
这里请按照自己的需求选择。’
正式上网
如果一步不错的做到这里,应该就可以正常访问世界范围内的公网了。
可以对本机进行测速,或者进入Yacd面板查看Connections,检查是否连上。如果出现问题,请看下文。
其他设置
进行调试
OpenClash 有两个显示日志文件的地方,两个地方显示的日志文件不同。
在全局设置-调试日志-生成日志
后,可以检查到OpenClash和路由器本身的一些设置。检查问题并且进行更改。
在OpenClash最上面一条的任务栏上有一个运行日志
,这里主要显示OpenClash的运行状态和问题。
如果发现OpenClash正常启动了,却无法上网,请检查调试日志。如果OpenClash本身出错,请检查运行日志。如果需要咨询,请附上日志文件,并详细描述问题,否则自动忽略。
自定义
使用的过程中必不可少的会发现有些规则并不是我们想要的,我们就需要自定义我们的规则了。
- DNS解析问题:如果想强制使某个域名使用国内DNS解析,在
全局设置--DNS设置--高级设置
中启用此功能。并且在下面根据示例进行填写。 - 自定义适用规则:进入
全局设置--规则设置
中启用自定义规则
。在下方自定义规则中,按照示例,添加适用的规则 - DNS劫持:拉到最下面,修改自定义HOSTS文件。
完成设置
到这里应该所有设置就完成了,如果需要询问,请发邮件至博主邮箱,或者通过自己的方式联系到我。