Total Pageviews

Tuesday, 20 October 2020

OpenClash


A Clash Client For OpenWrt.

本插件是一个可运行在 OpenWrt 上的 Clash 客户端

兼容 Shadowsocks、ShadowsocksR、Vmess、Trojan、Snell 等协议,根据灵活的规则配置实现策略代理

- 感谢 frainzy1477 ,本插件基于 Luci For Clash 进行二次开发 -

使用手册

下载地址

依赖

  • luci
  • luci-base
  • iptables
  • dnsmasq-full
  • coreutils
  • coreutils-nohup
  • bash
  • curl
  • jsonfilter
  • ca-certificates
  • ipset
  • ip-full
  • iptables-mod-tproxy
  • iptables-mod-extra
  • libcap
  • libcap-bin
  • kmod-tun(TUN模式)
  • luci-compat(Luci-19.07)
  • ip6tables-mod-nat(ipv6)

编译

从 OpenWrt 的 SDK 编译

# 解压下载好的 SDK
tar xjf OpenWrt-SDK-ar71xx-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2.tar.bz2
cd OpenWrt-SDK-ar71xx-*

# Clone 项目
mkdir package/luci-app-openclash
cd package/luci-app-openclash
git init
git remote add -f origin https://github.com/vernesong/OpenClash.git
git config core.sparsecheckout true
echo "luci-app-openclash" >> .git/info/sparse-checkout
git pull origin master
git branch --set-upstream-to=origin/master master

# 编译 po2lmo (如果有po2lmo可跳过)
pushd luci-app-openclash/tools/po2lmo
make && sudo make install
popd

# 开始编译

# 先回退到SDK主目录
cd ../..
make package/luci-app-openclash/luci-app-openclash/compile V=99

# IPK文件位置
./bin/ar71xx/packages/base/luci-app-openclash_0.39.7-beta_all.ipk
# 同步源码
cd package/luci-app-openclash/luci-app-openclash
git pull

# 您也可以直接拷贝 `luci-app-openclash` 文件夹至其他 `OpenWrt` 项目的 `Package` 目录下随固件编译

make menuconfig
# 选择要编译的包 LuCI -> Applications -> luci-app-openclash

许可

from  https://github.com/vernesong/OpenClash

相关帖子:https://briteming.blogspot.com/2018/10/clash-clashx.html

-------

OpenClash使用教程

OpenClash 是一个可运行在 OpenWrt 上的 Clash 客户端,一般来说你的路由器的第三方固件会附带,当然也可以自行安装。相比于传统的 SS、SSR 或者 PassWall 这些客户端来说,OpenClash 使用 Clash 的配置文件,规则代理会灵活很多,配合 yacd 等 WebUI 控制台操作也非常方便。

安装

OpenClash 会发布编译好的 IPK 文件(openwrt 的软件包),你可以直接下载安装,然后 SSH 到 openwrt 后台进行安装。

cd /tmp
wget https://github.com/vernesong/OpenClash/releases/download/v0.42.05-beta/luci-app-openclash_0.42.05-beta_all.ipk 

opkg install luci-app-openclash_0.42.05-beta_all.ipk

配置

添加配置文件

你的机场一般会给你提供一个订阅地址,有没有 Clash 的订阅都没关系。ss、v2ray、trojan 都是支持的. SSR 不行,复制准备好。

打开 openclash,在 ConfigUpdate 配置文件订阅里选择新增。

  • 配置文件名随便取个名字

  • 然后在订阅地址里填写机场给你提供的(不是 SSR 的都行)

  • 在线订阅转换勾选上 | 如果你机场提供的就是 Clash 的配置订阅并且你也不想改,就不用勾选

  • 订阅转换模版如果你有喜欢的可以里面选择一个,或者默认即可

  • 其它默认即可。当然其它的选项你理解,并且有需求可以自行更改。

然后保存配置。

保存配置后,应用配置理论上就能直接使用了,打开 Google YouTube 等网站应该不会有问题。你可以选择打开自动更新,这样就会每天更新你机场的节点变动。

在 OpenClash 打开后会提供控制面板,推荐你选择 Yacd 的。控制面板提供流量信息,可以方便的切换节点配置。(如果你打开后需要填写 ip 地址就是你这台 openwrt 路由器的 IP,端口默认是 9090,密码默认是:123456 )控制面板的信息在上图中也有提供。

在代理里面能切换节点。简单介绍下规则:

  • 节点选择就是默认的选择节点(你也可以选择 url-test,系统就会选择默认延迟低的;全球直连则是不走代理)
  • 自动选择(这个你可以忽略)
  • 国外媒体、微软服务、苹果服务等等,你的可能不一样。你可以针对每个服务进行选择,这样的好处是灵活。比如你可以让电报走美国节点,Netflix 选择香港、苹果的选择直接连接等等。

这个文件规则是你上面「订阅转换模版」选择的结果,你可以在那里选择功能更丰富的规则。

在配置里默认是 Rule 就是有规则的代理,国内网站不走代理,国外的才走,能大大提升速度节省流量。如果你想完全不走代理你在这里可以选择 Direct、如果你想所有的网站包括国内都走代理可以在这里选择 Global,然后在上一步代理的 Global 里即可选择节点。

方便的 Web 管理

你可以打开 http://yacd.haishan.me/ 保存这个网站到书签或者你浏览器的首页,手机、电脑任何一个设备都可以。然后添加你的控制面板信息,http://路由器IP:端口、然后输入密码、像是上图我的那样(结尾不需要/)。就可以成功添加。

这样局域网里的任何设备都能非常方便的控制 Clash 的规则、查看网络信息等等。非常方便

后记

OpenClash 可能看起来麻烦点,不过实际使用却非常方便灵活,能按规则的走代理,让不同的服务走不同的节点就非常方便。配合 Web 网页的控制后台,非常推荐大家路由器都使用这种更先进的上网方式。

No comments:

Post a Comment