去中心化 P2P 内网穿透 VPN GNB
开源软件地址:https://gitee.com/gnbdev/gnb
文档:https://gitee.com/gnbdev/gnb/tree/master/docs
Windows界面程序:https://gitee.com/gnbdev/GNBFrontend
github和gitee上2020年的新项目GNB-几分钟轻松组建自己的VPN网络实现远程办公。
2020年,众所周知的原因,远程办公需求突然之间变得前所未有的巨大。
在众多技术方案中,我青睐于GNB,这个gitee上2020年的新项目,GNB是一个开源的去中心化的具有极致内网穿透能力的通过P2P进行三层网络交换的VPN,用这个软件来建虚拟局域网办公再方便不过了。
GNB可以将分布在不同地方的计算机组成一个虚拟局域网,即使这些计算机处于各自的局域网里没有公网ip,例如用户在星巴克想访问家里或者办公室一台电脑上的一些文件,
以下图片来自官方资料
本质上,GNB是一个VPN系统,与其他VPN不同,GNB是去中心化的,类似于BT的点对点通信方式。
搭建VPN需要比较专业的网络知识,目前市面上多数VPN到配置都相对复杂,GNB的配置非常简单,我可以肯定的说,这是我用过的配置最简单的VPN,对于普通用户来说更简单的还在后面,因为现在已经有志愿者为GNB开发了Windows 版GUI 界面把GNB核心打成一个整合包,用户只需要点几下鼠标就能建立起一个VPN网络。
下面说一下过程
首先,去下载一个 releases 包,有两个地方可以下载
https://gitee.com/gnbdev/GNBFrontend/releases
https://github.com/XyloseYuthy/GNBFrontend/releases
操作之前,先确认好需求,打算创建多少个节点,例如我在把家里和办公室打通,平时带着笔记本外出要访问家里的电脑还有办公室的电脑,那么就需要创建3个节点。
点击 运行 GNB_NODE_SETUP.exe,点击“create gnb node”输入 3
这时,会看到创建好的节点会出现在列表中,点击 "export all gnb nodes" 导出创建的节点。
在弹出的文件选择框里选择一个目录作为导出节点的目录
导出的GNB节点包括完整的各平台的gnb可执行二进制文件、配置文件、脚本及通讯密钥,这些数据都将被整齐放置在正确的目录里。
导出的节点是这样子的,按3个目录放好,打开其中一个目录,大概是这样的:
每个gnb节点启动之后,都会分布到一个虚拟ip,gnb_1001 存放的是节点 1001, 对应的是10.1.0.1 , 1002 对应的是10.1.0.2,1003 对应的是10.1.0.3。
把 gnb_1001 gnb_1002 gnb_1003 这三个目录分别拷贝到三台电脑上,例如gnb_1001放在工作室的电脑,gnb_1002 放在随身的笔记本电脑里,gnb_1003放到家里的电脑,分别在这三台电脑上按提示运行 GNB_FRONTEND.exe ,这样,这三台电脑就可以组成一个虚拟的局域网,通过10.1.0.1 、10.1.0.2、10.1.0.3 这三个ip互联互通,可以在上面运行一些局域网的软件,例如在工作室访问家里电脑的文件共享,桌面共享,也可以带着笔记本在外面的咖啡厅通过Wi-Fi共享手机的流量访问工作室或者家里的电脑。
例如我在笔记本上启动的是1002节点,通过 ipconfig 命令可以看到 虚拟网卡已经成功设置了虚拟ip 10.1.0.2。
然后上班前,开着家里的电脑,启动1003节点,回到工作室,打开笔记本,启动1002节点,这时,尝试ping 1003,发现通了,家里电脑文件共享也可以访问。
如果想回家也能访问公司的电脑,那么就让工作室的电脑开着,启动1001节点,回到家后就能通过10.1.0.1 去访问,前提是要配置好远程桌面和文件共享这些基础服务。
具体的操作可以看这里的官方教程
https://gitee.com/gnbdev/GNBFrontend
最后讲一下GNB的工作原理,大家或许会好奇在分别在家里和和工作室内网的两台电脑是怎样连在一起的。
其实,这里原理跟BT类似,两台在内网的机器是通过放在公网的索引服务器找到对方的,索引服务器是由志愿者提供,两台机器找到对方之后就进行点对点通信,机器之间的通信是加密的,加密算法用到椭圆曲线。
由于数据没有经过中转服务器,因此两台之前传输数据速度只是受限于宽带网络的上行速度,最后值得一提的是,GNB的NAT穿透做到了极致,我的家中和工作室的的宽带不需要申请IPV4公网地址也能很好的实现试下内网穿透,真的很方便,速度快到可以直接通过文件共享在工作室偷闲看家里NAS里面的高清电影。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
CIO 学院直播第二场 | 贾扬清在线发邀请函,注意查收!
阿里CIO学院“技术公益培训” 第二场来了 2月20日19:00 -20:30 AI技术大神贾扬清 在线直播 全民抗疫的特殊时刻,是一个修炼内功、提升团队技术能力的绝好时机。OSCHINA为大家邀约了重量级技术大咖贾扬清举办攻“疫”技术公益培训活动。 通过本次直播,我们既希望能分享技术在灾难面前呈现的价值,也希望能帮助大家充实自己,共同成长!点击链接或扫描下方二维码立即观看直播: 贾扬清:《人工智能算法和系统的进化》 2月20日(星期四)19:00--20:30 人工智能诞生至今,已跨越半个多世纪,它的发展历程也从充满神秘到揭开面纱。这次分享,扬清老师会从人工智能的定义讲到当代发展,并对当前业内流行的深度学习、浅层学习、增强学习做深层次的解读。人工智能在于“理性思考”和“理性行动”。人类是通过理性的思维来行动,而机器是通过理性的计算来决策。2月20日(本周四)晚19:00,锁定阿里云开发者社区直播,对话阿里巴巴集团副总裁贾扬清,共话人工智能算法和系统的进化。 通过本次直播,你将收获: 深度学习和浅层学习的优弊分析 深度学习和浅层学习在业务应用中的落地效果 云上用户如何解决AI问题...
- 下一篇
pingtunnel 1.7 发布,流量转发工具
pingtunnel 1.7 发布了,pingtunnel 是把 tcp/udp/sock5 流量伪装成 icmp 流量进行转发的工具。用于突破网络封锁,或是绕过 WIFI 网络的登陆验证,或是在某些网络加快网络传输速度。 该版本更新内容包括: 修复已知的 bug
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池