NAT 穿透

一、元素

STUN  获取内、外二元组

TURN 比如【Symmetric NAT】使用relay最终保证成功

 ICE   狭理解为STUN和TURN的聚合框架

二、简易实现
   1 .引用老司机   
       http://www.hankcs.com/program/network/actual-rfc5766-turn-server-and-ice4j-wide-area-network-communication.html
STUN地址stun.l.google.com:19302
TURN 使用aliyun安装turnserver-3.2.3.95.tar.gz(其他版本不知道与协议实现是否有差异)

    2.二元组遍历就不说了

    3.测试[TURN],刚好住处NAT 是Symmetric NAT

    主机上两台虚拟机测试,网络地址转换模式,VirtualBox 分别网卡一、网卡二

    10.0.2.15  10.0.3.15 使用不同的username + passwd 分别启动

    经历测试N次,出现了一次relay成功大哭

  4.没有成功前,也不知到aliyun妹的是否支持hairpinning,于是找到了[PJSIP] ,编译蛋蛋忧伤。。。
   pjturn测试aliyun  turnserver  OK


  5.相关

   libjingle

   libnice

   PJSIP 

   上面有自己的ICE实现,

   预想使用PJSIP 的ICE库,   转JNI,  蛋疼。。。。。

   生产如果搞【音频】+【视频】, PJSIP................很NB的样子

  



 

    

    

       


  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值