All Projects → avplayer → Avpn

avplayer / Avpn

Licence: gpl-3.0
a simple vpn implemented based on c++ asio.

Projects that are alternatives of or similar to Avpn

Freess
免费ss账号 免费shadowsocks账号 免费v2ray账号 (长期更新)
Stars: ✭ 6,544 (+11380.7%)
Mutual labels:  vpn, socks5
Socks5proxy
一个简单的socks5代理转发服务(VPN)
Stars: ✭ 71 (+24.56%)
Mutual labels:  vpn, socks5
Qtnetworkng
QtNetwork Next Generation. A coroutine based network framework for Qt/C++, with more simpler API than boost::asio.
Stars: ✭ 125 (+119.3%)
Mutual labels:  socks5, asio
Reflow
Content-routable socks5 proxy switcher for your entire LAN.
Stars: ✭ 170 (+198.25%)
Mutual labels:  vpn, socks5
onionfruit
OnionFruit™ Connect - Tor access client with country selection, bridge configuration, pluggable transports and experimental DNS support
Stars: ✭ 150 (+163.16%)
Mutual labels:  socks5, vpn
Brook
Brook is a cross-platform strong encryption and not detectable proxy. Zero-Configuration. Brook 是一个跨平台的强加密无特征的代理软件. 零配置.
Stars: ✭ 12,694 (+22170.18%)
Mutual labels:  vpn, socks5
Skywire Testnet
Skywire Meshnet and VPN
Stars: ✭ 166 (+191.23%)
Mutual labels:  vpn, socks5
warp
WARP one-click script. Add an IPv4, IPv6 or dual-stack CloudFlare WARP network interface and Socks5 proxy for VPS. 一键脚本
Stars: ✭ 950 (+1566.67%)
Mutual labels:  socks5, vpn
V2ray Core
A platform for building proxies to bypass network restrictions.
Stars: ✭ 13,438 (+23475.44%)
Mutual labels:  vpn, socks5
Autovpn
THIS PROJECT IS UNMAINTAINED.
Stars: ✭ 997 (+1649.12%)
Mutual labels:  vpn
Lantern
Lantern官方版本下载 蓝灯 翻墙 代理 科学上网 外网 加速器 梯子 路由 lantern proxy vpn censorship-circumvention censorship gfw accelerator
Stars: ✭ 10,238 (+17861.4%)
Mutual labels:  vpn
Radvpn
Decentralized VPN
Stars: ✭ 993 (+1642.11%)
Mutual labels:  vpn
Furion
Socks5 + SSL Proxy
Stars: ✭ 39 (-31.58%)
Mutual labels:  socks5
Softethervpn
Cross-platform multi-protocol VPN software. Pull requests are welcome. The stable version is available at https://github.com/SoftEtherVPN/SoftEtherVPN_Stable.
Stars: ✭ 8,531 (+14866.67%)
Mutual labels:  vpn
Openconnect Gui
Mirror - Graphical OpenConnect client (beta phase)
Stars: ✭ 993 (+1642.11%)
Mutual labels:  vpn
Vpstoolbox
一键安装Trojan-GFW代理,Hexo博客,Nextcloud等應用程式。
Stars: ✭ 1,080 (+1794.74%)
Mutual labels:  vpn
Async Redis
[discontinued] An async redis library based on your app's event loop using libevpp and AsIO.
Stars: ✭ 35 (-38.6%)
Mutual labels:  asio
Xiringuito
SSH-based "VPN for poors"
Stars: ✭ 969 (+1600%)
Mutual labels:  vpn
Fem
Blokada 5 for Android and iOS (repo moved).
Stars: ✭ 57 (+0%)
Mutual labels:  vpn
Sshoot
Manage sshuttle VPN sessions
Stars: ✭ 54 (-5.26%)
Mutual labels:  vpn

一个简单的vpn的实现

目前tun2socks已经开发完成,所以下面介绍一下一些简单的测试调试方法:

准备一个socks server服务器,这里我们假定为

socks5://1.1.1.1:1080

在win上下载安装tap-windows驱动(linux内核一般自带tun驱动所以不需要安装任何驱动),并创建虚拟网卡 tap-windows下载位置在 https://openvpn.net/index.php/open-source/downloads.html 的最下面,我这里下载的是 tap-windows-9.21.2.exe 根据os情况选择版本.

在win上安装好tap-windows之后,便会在系统上创建一个虚拟网卡设备,我为了避免和其它虚拟网卡设备 冲突,我将其重命名为 VPN01(具体操作就是在 控制面板\网络和 Internet\网络连接 找到这个设备, 然后右击选择重命名)。

然后编译该项目,生成 tun2socks.exe 执行命令

tun2socks.exe 虚拟网卡的名字 socks5://1.1.1.1:1080

便可启动avpn

但这时所有数据包走的是默认本地网络,而不是虚拟网卡,这时 我们需要调整路由表来实现默认走虚拟网卡,只有socks5://1.1.1.1:1080 走本地连接.

具体操作: 打开具有管理员权限的powershell或cmd,这里假设我的出口网卡设备名是 WLAN,出口网关是 192.168.125.1 然后执行命令:

netsh interface ip set interface WLAN ignoredefaultroutes = enabled

上面命令是忽略指定网卡接口的默认路由,这里是忽略WLAN(linux上可通过增大默认路由 的metric或直接删除默认路由,如果是在远程机器上测试千万别这么干,会导致断网)

route add 1.1.1.1 192.168.125.1 metric 1

这里是将socks的服务器ip指定路由到192.168.125.1

route add 0.0.0.0 mask 0.0.0.0 10.0.0.2 metric 5

这是将所有数据都将走10.0.0.2,因为我们的虚拟网卡接口的网关就是10.0.0.2,10.0.0.2它是 一个并不实际存在的,目的主要是将所有ip数据都通过这个虚拟网卡接口.

这时,成功启动avpn并修改了路由之后, 我们便可以执行curl来测试vpn的运行了, 如:

curl -v http://api.ipify.org/

这时看到的ip应该是代理服务器的ip地址,我们成功的将本机所有数据都通过avpn经socks协议代理 到socks服务器.

注意:代理服务器请使用本人开发的 https://github.com/avplayer/socks_server ,因为它实现 了udp转发,而一般的socks服务器对udp的实现并不完善,否则的话,可能因为dns无法解析,导致访 问任何域名将解析不会成功。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].