GNB 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
GNB 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
GNB 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 AGPL
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发网络工具包
开源组织
地区 国产
投 递 者 Debianl
适用人群 未知
收录时间 2020-02-19

软件简介

GNB是一个开源的去中心化的具有极致内网穿透能力的通过P2P进行三层网络交换的虚拟组网系统.

gnb_udp_over_tcp是一个为GNB开发的通过tcp链路中转UDP分组转发的服务,也可以为其他基于UDP协议的服务中转数据。

出于安全考虑,GNB项目相关代码会开源。

内网穿透 去中心化 P2P 虚拟组网

GNB独有的去中心化组网技术可以将分布在世界不同地方的计算机组成一个虚拟局域网,即使这些计算机深藏于没有公网ip的局域网里,不需要公网服务器中转就可以实现TCP/IP通讯。

极致的链路能力

GNB有四套机制确保在主机所在网络发生变化时能够快速恢复数据链路并且在某些场景下还能保持应用层的网络连接,以下是一个经过反复测试的例子: 1、在肯德基打开苹果笔记电脑本接入肯德基的免费Wi-Fi; 2、在苹果笔记电脑启动GNB的边缘节点,此时可以通过 ssh 客户端登录到家中的同样是接入GNB网络的一台Linux; 3、合上笔记本电脑并带着走出肯德基。 4、来到麦当劳,打开笔记本,接入麦当劳的免费Wi-Fi,稍等半分钟网络恢复; 5、此时苹果笔记本中的 ssh 客户端与家中Linux的ssh的tcp连接没有断开,依然是通的。

以上例子仅是说明应用层无法感知GNB网络的虚拟链路的变化以及GNB在网络发生变化时快速恢复链路的能力。事实上,对于一些有心跳机制的tcp通信协议如果在一定时间内没有收到心跳包,应用层就会自动断开连接。

数据安全

GNB节点间基于椭圆曲线数字签名实现可靠的身份验证

GNB节点之间的通信密钥由 ED25519共享密钥+同步时钟(可选)+sha512构成

在同步时钟的作用下,节点的加密密钥可以每分钟或每小时同步更新一次,但这要求各节点时钟的必须要同步,在无法确保主机时钟同步的情况下可以选择关闭这个特性。

多平台支持

GNB用C语言开发,编译时不需要引用第三方库文件,可以方便移植到当前流行的操作系统上。

GNB目前支持的操作系统及平台有 Linux_x86_64,Windows10_x86_64, macOS,FreeBSD_AMD64,OpenBSD_AMD64,树莓派,OpenWRT;大至服务器环境,桌面系统,小至仅有32M内存的OpenWRT路由器都能很好的运行GNB网络。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(42) 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
42 评论
310 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部