icedemo的p2p打洞使用方法

目录

1.环境部署

2.下载pjsip源码

3.编译

4.找到icedemo的位置

5.执行icedemo,连接coturn服务器

6.创建和配置

7.设置对端SDP

​8.协商

9.相互发送数据

10.抓包查看,可以发现是通过p2p发送的 


 官方演示,太简单了,简单到看不懂:

https://www.pjsip.org/pjnath/docs/html/ice_demo_sample.htm

pisip提供了一个demo程序----icedemo

使用方法简单记录:

1.环境部署

在公网部署一个coturn服务器,记住它的ip和username、password

部署方法,参考上一篇文章的第五节

ubuntu20.04搭建janus服务器_zhuxian2009的博客-CSDN博客

2.下载pjsip源码

https://www.pjsip.org/

3.编译

按照README.txt的指示,很简单

  $ ./configure
   $ make dep && make clean && make

4.找到icedemo的位置

cd pjproject/pjsip-apps/bin/samples/x86_64-unknown-linux-gnu

5.执行icedemo,连接coturn服务器

此时需要coturn的信息了哈

./icedemo -s serverip -u abc -p 123456
10:29:16.386         os_core_unix.c !pjlib 2.12-dev for POSIX initialized
10:29:16.387                  pjlib  select() I/O Queue created (0x55bba0ad8828)

+----------------------------------------------------------------------+
|                    M E N U                                           |
+---+------------------------------------------------------------------+
| c | create           Create the instance                             |
| d | destroy          Destroy the instance                            |
| i | init o|a         Initialize ICE session as offerer or answerer   |
| e | stop             End/stop ICE session                            |
| s | show             Display local ICE info                          |
| r | remote           Input remote ICE info                           |
| b | start            Begin ICE negotiation                           |
| x | send <compid> .. Send data to remote                             |
+---+------------------------------------------------------------------+
| h |  help            * Help! *                                       |
| q |  quit            Quit                                            |
+----------------------------------------------------------------------+

6.创建和配置

7.设置对端SDP

Local SDP (paste this to remote host):
--------------------------------------
v=0
o=- 3414953978 3414953978 IN IP4 localhost
s=ice
t=0 0
a=ice-ufrag:697045d7
a=ice-pwd:1e7b1c761c4e398f7def0983
m=audio 57855 RTP/AVP 0
c=IN IP4 113.89.216.208
a=candidate:Sc0a865af 1 UDP 1862270975 113.89.216.208 57855 typ srflx
a=candidate:Hc0a865af 1 UDP 1694498815 192.168.101.175 44495 typ host

 8.协商

9.相互发送数据

 

10.抓包查看,可以发现是通过p2p发送的 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值