如何使用SIPp测试ReSIProcate的Proxy
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用SIPp测试ReSIProcate的Proxy相关的知识,希望对你有一定的参考价值。
颇有些说明书控的感觉,一切准备好了,开始进行了使用SIPp测试ReSIProcate的Proxy的实践,没想到颇为不顺,于是有了这篇博文,记录一下个人经验,以供后人借鉴。一开始按照说明Runsipp with embedded server (uas) scenario: ./sipp -sn uas -p 5064 On the
same host, run sipp with embedded client (uac) scenario ./sipp -sn uac
127.0.0.1 -p 5062 在uac端提示错误 Last Error: Unable to send UDP message: Bad
address.
sip群里询问了一下,有说是IP设置有问题的,有说可能是端口冲突的。端口冲突我一开始就已经考虑到了,指定了端口号避免了冲突。我指定了一下 IP
,添加了以下参数(localIP指本地IP地址,这儿假设您的本地IP地址为192.168.1.66) -i localIP
没有了这个错误,我用netstat -an命令行参数比较了一下异同,发现引起错误的原因在于端口所处的IP段不同。
OK~接下来在我上一篇博文ReSIProcate之编译、安装、配置、运行、测试proxy的基础上开始配置ReSIProcate配合SIPp测试。
由于SIPp的uac与uas场景没有注册,于是我们需要在ReSIProcate中添加uac和uas的后门帐号。 在入口函数main的
InMemoryRegistrationDatabase regData; 下面添加如下代码 //!sld! 2009-11-6
为了sipp添加后门,这里假设您的localIP为192.168.1.66 ContactInstanceRecord rec;
rec.mContact = NameAddr(Uri("sip:service@192.168.1.66:5064"));
rec.mRegExpires = -1;
regData.updateContact(Uri("sip:service@192.168.1.66:5060"),rec);
rec.mContact = NameAddr(Uri("sip:sipp@192.168.1.66:5062"));
regData.updateContact(Uri("sip:sipp@192.168.1.66:5060"),rec);
第二件事很显然我们需要配置proxy的运行参数。 char* recordRouteUri = "sip:192.168.1.66:5060";
char* interfaces = "sip:192.168.1.66:5060;timer-C=2;transport=udp";
以上第一个参数是设置了record route,以便uac
uas建立了连接之后包仍然通过proxy转发,下面一个参数是使proxy监听localIP段5060 udp端口。接下来一切OK~ Have
fun!!! 参考技术A 颇有些说明书控的感觉,一切准备好了,开始进行了使用SIPp测试ReSIProcate的Proxy的实践,没想到颇为不顺,于是有了这篇博文,记录一下个人经验,以供后人借鉴。一开始按照说明Run sipp with embedded server (uas) scenario: ./sipp -sn uas -p 5064 On the same host, run sipp with embedded client (uac) scenario ./sipp -sn uac 127.0.0.1 -p 5062 在uac端提示错误 Last Error: Unable to send UDP message: Bad address. sip群里询问了一下,有说是IP设置有问题的,有说可能是端口冲突的。端口冲突我一开始就已经考虑到了,指定了端口号避免了冲突。我指定了一下 IP ,添加了以下参数(localIP指本地IP地址,这儿假设您的本地IP地址为192.168.1.66) -i localIP 没有了这个错误,我用netstat -an命令行参数比较了一下异同,发现引起错误的原因在于端口所处的IP段不同。 OK~接下来在我上一篇博文ReSIProcate之编译、安装、配置、运行、测试proxy的基础上开始配置ReSIProcate配合SIPp测试。 由于SIPp的uac与uas场景没有注册,于是我们需要在ReSIProcate中添加uac和uas的后门帐号。
压测freeswitch--安装sipp
1.sipp下载
下载链接:https://sourceforge.net/projects/sipp/files/
此处我们下载sipp3.3为例
2.linux系统下编译sipp
安装sipp
可以四个选项来编译sipp
没有tls、sctp或pcap支持:
# tar -xvzf sipp-xxx.tar # cd sipp # ./configure # make
在tsl支持下,还必须安装openssl库,构建sipp在configure命令中添加 --with-openssl 选项
# tar -xvzf sipp-xxx.tar.gz # cd sipp # ./configure --with-openssl # make
支持pcpa
# tar -xvzf sipp-xxx.tar.gz # cd sipp # ./configure --with-sctp # make
组合不用选项
# tar -xvzf sipp-xxx.tar.gz # cd sipp # ./configure --with-sctp --with-pcap --with-openssl # make
使用sipp
sipp允许为一个远程系统生成一个或者多个呼叫。该工具从命令行启动。
运行uas: ./sipp -sn uas
运行 uac:
以上是关于如何使用SIPp测试ReSIProcate的Proxy的主要内容,如果未能解决你的问题,请参考以下文章