2019-04-01 11:14:31 +08:00
2019-03-16 15:29:30 +08:00
2018-11-04 20:23:07 +08:00
2018-08-31 18:56:23 +08:00
2019-03-06 19:20:07 +08:00
2018-08-30 18:07:43 +08:00
2018-03-31 12:13:19 +08:00
2018-04-21 12:51:28 +08:00
2018-03-29 21:31:41 +08:00
2019-04-01 11:14:31 +08:00
2018-08-31 18:56:23 +08:00
2018-04-29 13:52:32 +08:00
2019-04-01 11:14:31 +08:00
2018-04-21 12:51:28 +08:00

Build Status goreport

doc | release

gtun是什么

  • gtun是个ip代理能够最多个IP、IP段进行代理转发
  • gtun默认是个vpn隧道能够将多个客户端连接组成虚拟局域网
  • gtun支持内网穿透功能

限制

gtun自身具备一定的穿墙功能在法律允许的范围内使用gtun.

gtun自身使用了tun/tap虚拟网卡技术tun/tap在各个系统对实现有些许差异因此在使用gtun时需要考虑各个系统的限制

操作系统 tun tap ip加速 虚拟局域网 反向代理
Linux
Mac OS
Windows

gtun模块介绍

在最新版本当中gtun包含三个模块

gtund

gtund代理服务器也就是出口服务器所有需要转发的流量都是从gtund出去到真实的服务器。主要包括以下几个功能

  • 在客户端连接之初发送vpn的ip地址段等信息
  • 在与客户端建立连接完成之时,用于接收客户端发送的数据包,并与远程服务器建立连接,进行一个转发功能

gtun

gtun是客户端也就是部署在需要ip加速的设备电脑或者网关处。gtun才用虚拟网卡的方式所以需要 以root权限启动针对windows需要安装tap驱动

registry

服务注册中心节点gtund启动时会像registry模块注册并使用长链接保活。gtun启动时会向registry寻求gtund节点信息。registry程序主要用于自动选gtund节点的在整个系统当中不是必须的gtun可以通过手动配置gtund信息的方式绕过registry。

如何使用

下载源码与依赖

go get github.com/songgao/water
go get github.com/ICKelin/gtun

编译

./makefile.sh

在bin目录下会生成gtun的服务端二进制文件gtundgtund大部分情况下都是部署在云服务器上所以之编译了Linux版本除了gtund之外还会生成各个系统的gtun文件以及registry程序

gtund部署 需要将gtund部署到云服务器当中同时需要开启系统的ipv4转发功能

vi /etc/sysctl.conf

net.ipv4.ip_forward=1

给iptables添加规则做SNAT

iptables -t nat -I POSTROUTING -j MASQUERADE

gtun部署 在本地电脑或者网关运行gtun配置参考: gtun.conf

registry部署 在公网服务注册,配置参考:registry.conf

thanks

songgao/water

more

tun/tap vpn

any issues are welcome

TODO

  • 测试内网穿透
  • 测试新版本
Description
用golang开发的IP加速器,商业化产品请关注: https://www.beyondnetwork.net 全球IP加速产品
Readme MIT 13 MiB
Languages
Go 97.8%
Shell 2%
Dockerfile 0.2%