全段时间知道了clash之后一直使用clash当做代理软件,最近clash更新了tun模式之后尝试使用clash当做旁路由使用,经过一番尝试有了这篇文章.
第一步,下载clash-tun文件:
点这里
第二步,修改配置文件,开启开启tun的模式.
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
nameserver:
- 114.114.114.114
tun:
enable: true
第三步,给于clash对应的权限.
sudo setcap 'cap_net_admin=eip cap_net_bind_service=+eip' /usr/local/bin/tun_clash
第四步:创建iptables规则
##192.168.8.1请根据你的设备在内网的IP修改,如果你的53端口没有占用直接执行这一天就行了
sudo iptables -t nat -A POSTROUTING -s 192.168.8.1/24 -j MASQUERADE
###如果你的设备的53端口已经被占用可以用下面的规则进行转发,192.168.3.51 请根据实际情况修改
sudo iptables -t nat -A PREROUTING -p tcp -d 192.168.3.51 --dport 53 -j DNAT --to 198.18.0.1:5335
sudo iptables -t nat -A PREROUTING -p udp -d 192.168.3.51 --dport 53 -j DNAT --to 198.18.0.1:5335
sudo iptables -t nat -A POSTROUTING -d 198.18.0.1/32 -p tcp --dport 5335 -j SNAT --to-source 192.168.3.51
sudo iptables -t nat -A POSTROUTING -d 198.18.0.1/32 -p udp --dport 5335 -j SNAT --to-source 192.168.3.51
第五步,开启IP转发
sudo sysctl -w net/ipv4/ip_forward=1
最后启动clash就行了.
这个时候旁路就架设好了,如果你想开机自动启用可以创建一个启动脚本就行了.
现在我们在区域网内的设备上把网关地址和dns设置成旁路由地址就可以正常翻墙了.
ps:当前官方1.31号发布的tun版本有bug,正常使用需要1.13号发布的版本.
下载连接:https://mega.nz/#F!mZEjCYLI!3TQNT5D7LM5d5wRgRnHrUg