Total Pageviews

Tuesday, 3 May 2022

在mac上,用vpn程序vtun翻墙

登录linux vps. 首先安装go环境,go1.16版即可,不一定要最新版。然后,

go install github.com/net-byte/vtun@latest

可执行文件vtun就会出现在$GOBIN/里面。

vtun -S -l=:3001 -c=172.16.0.1/24 -k=mykey -p ws -obfs

会显示:

...

2022/05/04 04:31:42 vtun websocket server started on :3001


这里的通讯协议建议选择ws.如果选择udp,容易被国内的isp进行qos限速;若选择tcp,我试过,不容易连上服务器。若选择wss,则会遇错,估计是因为没有设置证书和私匙的缘故。

不过此命令是运行在前台的,容易退出运行,我们可以利用systemd把该命令运行为service:
nano /etc/systemd/system/vtun.service

cat /etc/systemd/system/vtun.service

[Unit]

After=network.target


[Service]

ExecStart=/root/go/gopath/bin/vtun -S -l=:3001 -c=172.16.0.1/24 -k=mykey -p ws -obfs

Restart=always


[Install]

WantedBy=multi-user.target


然后运行:

systemctl start vtun

systemctl enable vtun


然后,编辑/etc/sysctl.conf

设置:net.ipv4.ip_forward = 1


然后运行:iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -o eth0 -j MASQUERADE


至此,服务器端搭建完成。


在本地机器mac上。首先安装go环境,go1.16版即可,不一定要最新版。然后,

go install github.com/net-byte/vtun@latest

可执行文件vtun就会出现在$GOBIN/里面。然后,

sudo ~/go1.16.3/go/gopath/bin/vtun -k=mykey -l=127.0.0.1:3000 -s=vps-public-ip:3001 -p ws -obfs -g

不要关闭此窗口。然后,新开一个终端,运行:

sudo route add vps-public-ip 192.168.1.1

sudo networksetup -setdnsservers "Wi-Fi" 8.8.8.8

至此,即可用此vpn程序vtun愉快的翻墙。


在终止vtun vpn进程后,还需运行:

sudo route add default 192.168.1.1

这样,才恢复为墙内状态。否则用浏览器访问任何网站时,都会显示没有网络。


如果过一段时间后,翻墙失败,请重启系统,然后一一重新运行上面的命令即可。


项目地址:https://github.com/net-byte/vtun

https://github.com/net-byte/vtun/issues/15


这样,mac上的vpn程序又添一员。

相关帖子:https://briteming.blogspot.com/2020/07/macvpn.html







No comments:

Post a Comment