Run sing-box/mihomo as client in shell
Go to file
juewuy 7f96489c5f
Update README.md
排版优化
2020-07-09 12:28:32 +08:00
clash config
clash.zip
README.md Update README.md 2020-07-09 12:28:32 +08:00

clash_tun-for-Miwifi

在小米AX3600/AX1800/AX5等路由器上使用clash_tun模式做透明代理

PS

•支持ss,v2ray,trojan但不支持ssr也不支持订阅需要自行编辑config.yaml以配置服务器
•小米路由内置的openwrt默认阉割了对tproxy的支持所以使用redir模式做透明代理时无法转发udp流量只能采用tun模式转发udp流量
•tun模式对udp的转发支持非常好而且延迟非常低小米官方内置的tx网游加速器其实就是使用的tun模式
•clash对tun模式的官方文档内容不是很完善折腾了好几天也没搞懂怎么使用真实ip模式进行透明代理故只能采用配置相对简单的fake-ip模式
•fake-ip模式在数据向dns查询时默认会返回例如198.18.0.x这样的虚拟ip地址故部分必须验证真实ip地址的网站或app可能会受影响
•系统默认的dnsmasq会强行劫持所有53端口流量所以必须修改dnsmasq的默认端口以让流量经过clash内置的dns服务以使用fake-ip模式
•fake-ip+tun模式的透明代理方式可能适用于大部分同样采用openwrt内核的路由器或者软路由有需求的可以自行斟酌使用
•理论上clash可以通过内置规则去广告这里提供的规则没有包括有需求的可以参考https://github.com/ACL4SSR/ACL4SSR 使用

使用依赖:

•请确认路由器或设备已经开启ssh并获取root权限小米AX系列可参考https://www.right.com.cn/forum/thread-4032490-1-1.html
•ssh工具例如puttybitvise等
•scp工具如winscp内置了putty注意小米AX系列没有内置sftp服务而是内置了scp服务

使用方式:

•下载 clash.zip 并解压
根据自己需求参考备注修改config.yaml配置文件并保存重要!!!
·如有必要也可以自行前往下载更新clash核心文件 https://github.com/Dreamacro/clash/releases/tag/premium 小米AX系列都是armv7架构其他路由器请自查
•将clash文件夹以及内部4个文件通过winSCP上传到路由器/etc文件夹下最终应该是/etc/clash/"4个文件"
•登陆SSH并在SSH中用root用户执行下方的相应命令即可理论上非root用户也可以运行请参考官方文档自行研究
•启用后可以通过 http://clash.razord.top 管理clash内置规则通常无需额外设置即可正常使用
•也可以自行配置http代理端口7890或者sock5代理端口7891速度比tun模式更快但是相对延迟可能略高

#首次启用clash
mv /etc/clash/clashservice /etc/init.d/clash #将clash服务文件移动到系统目录
chmod  777 /etc/clash/clash  #授予权限
chmod  777 /etc/init.d/clash #授予权限
service clash enable    #启用clash开机启动
service clash start     #启动clash服务
sed -i "8iport=5335" /etc/dnsmasq.conf #修改dnsmasq监听端口为5335
service dnsmasq restart #重启dnsmasq服务报错“cp: can't stat '/etc/dnsmasq.d/*'……”可无视)
#启用clash透明网关
service clash enable    #启用clash开机启动
service clash start     #启动clash服务
sed -i "8iport=5335" /etc/dnsmasq.conf #修改dnsmasq监听端口为5335
service dnsmasq restart #重启dnsmasq服务报错“cp: can't stat '/etc/dnsmasq.d/*'……”可无视)
#停止clash透明网关
service clash disable   #禁用clash开机启动
service clash stop      #停止clash服务
sed -i '/port=5335/d' /etc/dnsmasq.conf #重置dnsmasq监听端口为默认值port:53)
service dnsmasq restart #重启dnsmasq服务报错“cp: can't stat '/etc/dnsmasq.d/*'……”可无视,不放心可重启系统)
#卸载clash相关文件卸载前请先配合“停止clash透明网关”使用
rm -rf /etc/clash       #删除clash文件夹及文件
rm /etc/init.d/clash    #删除clash开机启动文件

已知问题:

•部分软件不会经过clash例如telegram可以通过设置软件内置sock5或http代理解决
•tun模式的CPU耗用较高速度不是很理想而且会影响全局流量所有tcp和udp流量都会经过tun虚拟网卡和clashax1800实测带宽在60M左右。不过p2p流量通常不会进入tun故下载速度应该不受影响
•由于使用了clash的fake-ip模式暂不支持ipv6且部分v4网站可能会出现验证错误待确认
•由于变相禁用了dnsmasq的dns解析服务且clash不支持内置hostsmiwifi.com或www.miwifi.com 无法打开路由器管理界面只能使用192.168.31.1进入app不受影响
•由于同样使用了tun模式虚拟网卡clash服务可能会和小米路由器内置的tx网游加速器冲突请谨慎同时使用
•不支持订阅由于clash本身不支持对v2raysstrojan等协议的订阅所以订阅只能通过更新clash的配置文件config.yaml来进行有条件的可以自行写更新脚本
•全局模式代理无效原因不明同样的配置文件在pc端或者安卓上都可以使用全局模式怀疑是clash核心的bug

参考:

https://lancellc.gitbook.io/clash/start-clash/clash-tun-mode
https://comzyh.gitbook.io/clash/
https://h-cheung.gitlab.io/post/使用_clash_和路由表实现透明代理/