python编程 如何用tcpdump抓取sip信令?
如何用tcpdump抓取sip信令?
1. 开源SIP服务器,较好的使用是星号,标准C程序实现,代码清晰。
2. SIP有许多客户端,主要包括exosip、pjsip和opal。Exosip简单易用,在PC机上使用更方便,但涉及到的相关资源太多,如oSIP、SRTP、MS2等许多开源库。Ffmpeg也用于MS2。再说,只是编译是一场噩梦。Opal是最强大的,虽然它也使用ffmpeg,但是它本身的包装非常好,采用插件模式,调用灵活。Opal使用类提供封装,接口非常友好。我唯一感到不舒服的是在底层使用ptlib。虽然它很容易在多个平台上使用,但是当它被放置在嵌入式系统中时,感觉它有点大。Pjsip协议具有很高的灵活性和易移植性,是嵌入式系统的首选。然而,视频支持比opal更难扩展。就个人而言,对于Windows开发人员来说,pjsip的最大优势是代码调试的便利性。整个项目是一次编译和传递的,另外两个库需要找到很多相关的资源。
3. 其他一些协议栈也被调试过,比如resipphone,它似乎就是名字,Yate。但是,从快速发展的角度来看,它们并不适合。现在,在SIP开发中,我们首先需要找到一个好的协议栈。Linphone,ekiga什么的,但是很大。对于刚刚开始的内容,最好制作一个简洁的演示。后来,我找到了以下pjsip的例子,慢慢地理解了SIP的工作流程。当然,还有包捕获工具和tcpdump。
事实上,SIP并不像预期的那样麻烦。现在回顾一下,在项目开始时,使用协议栈绝对不是一个好主意。如果改变方向,应该先熟悉基本的SIP协议,然后修改一个或者完全写一个,效果可能会更好。
如何控制sip协议栈使用那个网卡发送数据?
这取决于您是哪个协议栈,RV、oSIP或volvida。一般来说,网络是通过套接字句柄发送到网络的。绑定到此句柄的网卡的地址不是最终的物理网卡,而是通过本地路由表后选择从中传出的网卡。也就是说,它通常是通过默认路由发送出去的,在多个网络的情况下,我建议你:1。将套接字绑定到IP地址。为每个网卡设置路由/网关。使用ipru和iPro设置“源地址”路由,以便您的句柄可以绑定到物理网卡
python编程 python做什么的 python爬虫教程
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。