内网穿透-p2p通讯服务器-基于n2n和udp2raw-tunnel

内网穿透-p2p通讯服务器-基于开源软件n2n和udp2raw-tunnel

原本在简单的网络环境中n2n可以很好的达到p2p通讯功能,但是由于公网ip服务器(如阿里云等)可能会屏蔽掉UDP协议,使得n2n无法使用,于是通过一个非常棒的开源软件udp2raw-tunnel(https://github.com/wangyu-/udp2raw-tunnel)来将UDP伪装成TCP协议,实验证明是可行的。具体过程记录在下:

1 编译n2n (ubuntu 1604)

sudo apt-get install subversion build-essential libssl-dev
svn co https://svn.ntop.org/svn/ntop/trunk/n2n
cd n2n/n2n_v2
sudo make
sudo make install

2 公网服务器(centos 7.4)配置n2n 和udp2raw-tunnel

# 1. 启动n2n 服务器
supernode -l 7077 #udp协议 监听在7077端口
# 由于udp协议无法收到来着客户端的udp包(被屏蔽了)
# 所以采用udp2raw-tunnel 来接收经过伪装的udp包
# 2. 启动udp2raw-tunnel 服务器
 ./udp2raw_amd64 -s -l0.0.0.0:4096  -r127.0.0.1:7077   -k "passwd" --raw-mode faketcp   --cipher-mode xor  -a

3 客户端1(ubuntu 1604)配置n2n 和udp2raw-tunnel

# 1. 先启动udp2raw-tunnel 客户端,搭建好桥梁
sudo ./udp2raw_amd64 -c -l0.0.0.0:3333  -r44.55.66.77:4096 -k "passwd" --raw-mode faketcp   --cipher-mode xor  -a
# 2. 启动n2n 客户端,注意设置 -M (MTU=1200),因为udp2raw-tunnel 要求的
sudo edge -d n2n01 -c test -k key -a 192.168.111.1 -l 127.0.0.1:3333 -M 1200

4 客户端2(ubuntu 1604)配置n2n 和udp2raw-tunnel

# 1. 先启动udp2raw-tunnel 客户端,搭建好桥梁
sudo ./udp2raw_amd64 -c -l0.0.0.0:3333  -r44.55.66.77:4096 -k "passwd" --raw-mode faketcp   --cipher-mode xor  -a
# 2. 启动n2n 客户端,注意设置 -M (MTU=1200),因为udp2raw-tunnel 要求的
sudo edge -d n2n02 -c test -k key -a 192.168.111.2 -l 127.0.0.1:3333 -M 1200

客户端之间这样可以直连了

在这里插入图片描述
参考:
https://github.com/wangyu-/udp2raw-tunnel
https://blog.csdn.net/ppp2006/article/details/52386252

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值