分享一个 Go 写的 VPN

2022-08-25 23:10:41 +08:00
 simplehacker

vtun 是一个基于 Go 实现的 VPN ,简单易用。原理是利用 TUN 设备(虚拟网卡)接收数据,在客户端和服务端之间进行数据加密转发。

特性:

1.支持 IPv4/IPv6
2.支持 udp/tls/websocket/grpc 协议
3.支持数据混淆和压缩
4.平台支持 Windows/Linux/MacOS/Android

项目地址

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

欢迎 Gopher 贡献代码及 star

6405 次点击
所在节点    Go 编程语言
14 条回复
ptyfork
2022-08-25 23:58:45 +08:00
一直想要一个简洁的可以快速搭建的 VPN,先 Star 看看
bigbyto
2022-08-26 00:27:36 +08:00
已 star ,挺不错的👍
zoharSoul
2022-08-26 00:31:10 +08:00
支持 pac 吗?
mahone3297
2022-08-26 01:13:13 +08:00
有没有原理的介绍?该如何试下一个 vpn ?
BeautifulSoap
2022-08-26 01:38:25 +08:00
路过问一下,基于 TUN 设备的话不利于 K8S 上部署吧? docker 可以直接添加 /dev/net/tun 到容器中(看 lz 的 docker 例子是直接给了 privileged 权限)所以问题不大,但 k8s 必须每个设备写个驱动的样子
lidongyooo
2022-08-26 08:39:44 +08:00
加密算法与协议是否可以介绍一下?
luozhiyun
2022-08-26 09:11:44 +08:00
@mahone3297
原理应该就是利用 tun 设备实现端对端的隧道,和 openvpn 原理是一样的,可以看一下我这篇文章 : https://www.luozhiyun.com/archives/684
ruyu
2022-08-26 10:05:31 +08:00
赞,学习一个
itskingname
2022-08-26 10:24:31 +08:00
提醒一下楼下各位,VPN 不等于梯子。不要看到 VPN 总想着翻墙。VPN 的作用是把若干个物理隔离的设备接入到一个虚拟的局域网里面,从而让他们看起来能像在局域网里面一样工作。所以楼下就别再问能不能对抗检测了。
simplehacker
2022-08-26 12:03:09 +08:00
@itskingname 优秀,理解正确。
simplehacker
2022-08-26 12:05:15 +08:00
@BeautifulSoap tun 设备在容器中确实不友好,这个没办法。
monkeyWie
2022-08-26 13:43:23 +08:00
已 star ,学习学习
bosskwei
2022-08-26 14:35:07 +08:00
我维尼表示非常不开心
humbass
2022-09-05 22:39:42 +08:00
好东西,看看是不是比 wireguard 来的简单

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/875459

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX