All Projects → evilpan → P2p Over Middleboxes Demo

evilpan / P2p Over Middleboxes Demo

A simple demo of P2P communication over middle boxes such as NAT

Programming Languages

c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to P2p Over Middleboxes Demo

Wenat Client Java
Wenat内网穿透,java版客户端
Stars: ✭ 70 (-75.78%)
Mutual labels:  p2p, nat
Gsnova
Private proxy solution & network troubleshooting tool.
Stars: ✭ 509 (+76.12%)
Mutual labels:  p2p, nat
Nsmartproxy
NSmartProxy是一款开源免费的内网穿透工具。采用.NET CORE的全异步模式打造。(NSmartProxy is an open source reverse proxy tool that creates a secure tunnel from a public endpoint to a locally service.)
Stars: ✭ 547 (+89.27%)
Mutual labels:  p2p, nat
Smargate
内网穿透,c++实现,无需公网IP,小巧,易用,快速,安全,最好的多链路聚合(p2p+proxy)模式,不做之一...这才是你真正想要的内网穿透工具!
Stars: ✭ 1,378 (+376.82%)
Mutual labels:  p2p, nat
Gnb
GNB is open source de-centralized VPN to achieve layer3 network via p2p with the ultimate capability of NAT Traversal.GNB是一个开源的去中心化的具有极致内网穿透能力的通过P2P进行三层网络交换的VPN。
Stars: ✭ 225 (-22.15%)
Mutual labels:  p2p, nat
ipvpn
[WIP] Easy-to-use decentralized secure overlay private network (for any device)
Stars: ✭ 24 (-91.7%)
Mutual labels:  nat, p2p
Tuntox
Tunnel TCP connections over the Tox protocol
Stars: ✭ 251 (-13.15%)
Mutual labels:  p2p, nat
opengnb
GNB is open source de-centralized VPN to achieve layer3 network via p2p with the ultimate capability of NAT Traversal.GNB是一个开源的去中心化的具有极致内网穿透能力的通过P2P进行三层网络交换的VPN。
Stars: ✭ 440 (+52.25%)
Mutual labels:  nat, p2p
Cabal Core
Core database and replication for cabal.
Stars: ✭ 258 (-10.73%)
Mutual labels:  p2p
Fpnd
Python package for freepn network daemon
Stars: ✭ 271 (-6.23%)
Mutual labels:  p2p
react-native-wifi-p2p
Library that provide access for working with wi-fi direct (p2p) module in android.
Stars: ✭ 104 (-64.01%)
Mutual labels:  p2p
Go Vite
Official Go implementation of the Vite protocol
Stars: ✭ 257 (-11.07%)
Mutual labels:  p2p
Axe
decentralized cryptocurrency
Stars: ✭ 273 (-5.54%)
Mutual labels:  p2p
Decsync
Synchronize RSS, contacts, calendars, tasks and more without a server
Stars: ✭ 257 (-11.07%)
Mutual labels:  p2p
Dathttpd
Replaced by Homebase! See https://github.com/beakerbrowser/homebase.
Stars: ✭ 282 (-2.42%)
Mutual labels:  p2p
go-ayame
go-ayame is go client library for WebRTC Signaling Server Ayame
Stars: ✭ 20 (-93.08%)
Mutual labels:  p2p
peermesh
💫 Exchange files p2p and e2e encrypted over a fully meshed network in your browser using WebRTC.
Stars: ✭ 107 (-62.98%)
Mutual labels:  p2p
Nps
一款轻量级、高性能、功能强大的内网穿透代理服务器。支持tcp、udp、socks5、http等几乎所有流量转发,可用来访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析、内网socks5代理等等……,并带有功能强大的web管理端。a lightweight, high-performance, powerful intranet penetration proxy server, with a powerful web management terminal.
Stars: ✭ 19,537 (+6660.21%)
Mutual labels:  nat
Eiskaltdcpp
File sharing program using DC and ADC protocols
Stars: ✭ 277 (-4.15%)
Mutual labels:  p2p
Iwant
Commandline tool for searching and downloading files in LAN network, without any central server
Stars: ✭ 268 (-7.27%)
Mutual labels:  p2p

P2P-Over-MiddleBoxes-Demo

一个简单的P2P通信示例

English README

p2pchat

一个P2P聊天程序,使用UDP打洞创建链接。

编译

make p2pchat

运行

./p2pchat/server <服务器端口号>

./p2pchat/client <服务器IP>:<服务器端口号>
>>> help

测试:

编译

make test

运行

./run_test.sh

常见问题

通信不正常/打洞不成功?

该UDP打洞示例仅支持锥形地址转换器(Cone NAT),如果两个客户端都在同一个公网结点下,需要确保出口路由器支持回环传输(LOOPBACK TRANSMISSION)

我咋知道我的NAT是什么类型?

stun目录下有个简单的Python脚本,用RFC3489(经典STUN协议)的示例来检测NAT类型。 运行:

cd stun
python3 classic_stun_client.py [本地IP]

运行结果示例如下:

INFO:root:running test I with stun.ideasip.com:3478
INFO:root:MAPPED_ADDRESS: 220.181.57.217:46208
INFO:root:running test II with stun.ideasip.com:3478
INFO:root:running test I with 217.116.122.138:3479
INFO:root:MAPPED_ADDRESS: 220.181.57.217:2732
NAT_TYPE: Symmetric NAT

相关介绍文章

注: 本项目只是一个简单的UDP打洞示例,如果想构建成熟的P2P应用,可以接着参考STUN/TURN以及ICE等协议。

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].