Linux系统结合clash做旁路网关/透明代理
旁路网关起到的作用是可以对咱们客户端请求的数据做一个转发,正常我们请求数据是交由路由器来转发并把数据返回给我们。 然而路由器的功能可能并不强大,做不到对数据进行处理的效果,这时候我们可能需要借助一个旁路由来对数据进行一个处理,一般我们都是选择使用 openwrt 来对数据处理,然而很多朋友没有这个设备。今天介绍一个方法可以不使用软路由,只需要一台闲置电脑甚至是虚拟机都可以,结合 clash 客户端来实现一个科学上网的目的,下面来看下如何操作。
开始操作
先决条件
- 一台闲置/虚拟机 Linux
- clash-core-premium 下载地址
- clash-premium-installer 地址clash 有2个版本,分别是 clash-core 和 clash-core-premium,前者是开源版本,后者是不开源版本,我们需要用到的是 clash-core-premium 因为这里需要 clash tunnel 模式,这个功能只有clash-core-premium 里有 
安装步骤
- 我们需要借助上面的 - clash-premium-installer帮咱们安装- service mode,里面带了转发规则。 第一步先安装- git,- nftables,- iproute2- ubuntu - 1 - apt-get install -y git nftables iproute2 - centos - 1 - yum install -y git nftables iproute2 
- 下载 clash-premium-installer - 1 
 2- git clone https://github.com/Kr328/clash-premium-installer 
 cd clash-premium-installer
- 下载 clash-core-premium 
 点击进入下载地址
 选择适合自己电脑的版本,下载完成后,用 gunzip xx.gz 进行解压缩, 解压完成后,拷贝到- clash-premium-installer目录,并重命名为- clash
 赋予可执行权限:- chmod +x clash
- 执行安装 - 1 - ./installer.sh install - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10- root@ubuntu:~/clash-premium-installer# ./installer.sh install 
 Install successfully
 Home directory at /srv/clash
 All dns traffic will be redirected to 1.0.0.1:53
 Please use clash core's 'tun.dns-hijack' to handle it
 Use 'systemctl start clash' to start
 Use 'systemctl enable clash' to enable auto-restart on boot
到这里就已经安装完成了~ 通过 systemctl enable clash 设置为开机自动启动, clash 配置文件存放在 /srv/clash 目录
设置 clash 配置文件
在 /srv/clash/config.yaml 配置文件中添加如下内容
| 1 | dns: | 
这样就完成了 clash 的所有配置,下面只需要把客户端的网关地址和DNS地址指向当前这台电脑IP便可
客户端设置
- 路由器, 以小米路由器为例在常用设置 -> 局域网设置 -> DHCP服务 
 把 DNS1 和 默认网关指向你的 Linux 服务器便可。
 所有连上路由器的设备都可以实现科学上网 
- iOS & android 在网络链接设置成手动/静态 IP,把网关和DNS 指向 Linux 服务器  
打开网络客户端
有时候我们需要查看节点以及连接的状态,如果都是通过命令行来查看未免会显得有点麻烦,好在 clash 是支持 rest 接口,并有成熟的网页客户端 点击打开
打开网页客户端后设置 -> 外部控制设置 点击输入ip 以及端口(一般9090)便可查看clash 信息
总结
使用 Linux & Clash 透明代理只需要简单几步就可以完成设置,让所有把 Linux 服务器设置成网关的设备都可以实现科学上网。如果路由器的网关/DNS 设置成Linux服务器的话,这样所有连接上路由器的设备都可以科学上网,包括手机、电脑、电视等设备
Linux系统结合clash做旁路网关/透明代理



