关于SIPp那点事看看deepseek如何回答
现在有两台装有SIPp的服务器,其中192.168.1.62的服务器为UAC,192.168.1.63的为UAS,现在通过这两台服务器模拟通话,给出详细的操作步骤以下是使用SIPp在两台服务器上模拟SIP通话的详细操作步骤:确保网络互通(互相可ping通):关闭防火墙或开放5060端口(SIP默认端口):2. 在UAS服务器(192.168.1.63)启动被叫服务启动SIPp作为UAS(接收呼叫并
·
现在有两台装有SIPp的服务器,其中192.168.1.62的服务器为UAC,192.168.1.63的为UAS,现在通过这两台服务器模拟通话,给出详细的操作步骤
以下是使用SIPp在两台服务器上模拟SIP通话的详细操作步骤:
1. 环境准备
- 确认两台服务器已安装SIPp:
sipp -v
- 确保网络互通(互相可ping通):
ping 192.168.1.62 # 在192.168.1.63上执行 ping 192.168.1.63 # 在192.168.1.62上执行
- 关闭防火墙或开放5060端口(SIP默认端口):
sudo ufw allow 5060/udp sudo ufw allow 5060/tcp
2. 在UAS服务器(192.168.1.63)启动被叫服务
- 启动SIPp作为UAS(接收呼叫并响应):
sipp -sn uas -p 5060 -i 192.168.1.63
-sn uas
:使用内置的UAS场景。-p 5060
:监听5060端口。-i 192.168.1.63
:绑定到本机IP。
3. 在UAC服务器(192.168.1.62)发起主叫请求
- 启动SIPp作为UAC(发起呼叫):
sipp -sn uac 192.168.1.63:5060 -i 192.168.1.62 -m 1
-sn uac
:使用内置的UAC场景。192.168.1.63:5060
:目标UAS的IP和端口。-i 192.168.1.62
:绑定到本机IP。-m 1
:发送1次呼叫(测试单次通话)。
4. 观察测试结果
- UAS服务器日志:
[UAS] Received INVITE, sending 200 OK... [UAS] Received ACK, call established.
- UAC服务器日志:
[UAC] Sending INVITE... [UAC] Received 200 OK, sending ACK...
5. 高级场景(自定义XML文件)
如果需要自定义呼叫流程,可创建场景XML文件:
UAS端(uas_scenario.xml):
<scenario>
<recv request="INVITE"/>
<send>
<![CDATA[
SIP/2.0 200 OK
[Last-Header: value]
Contact: <sip:192.168.1.63:5060>
]]>
</send>
<recv request="ACK"/>
</scenario>
启动命令:
sipp -sf uas_scenario.xml -p 5060 -i 192.168.1.63
UAC端(uac_scenario.xml):
<scenario>
<send retrans="500">
<![CDATA[
INVITE sip:user@192.168.1.63 SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port]
From: sip:test@192.168.1.62;tag=[call_number]
To: sip:user@192.168.1.63
Call-ID: [call_id]
CSeq: 1 INVITE
Contact: <sip:test@192.168.1.62:[local_port]>
Max-Forwards: 70
Subject: SIPp Test
Content-Type: application/sdp
Content-Length: [len]
v=0
o=user1 53655765 2353687637 IN IP[local_ip_type] 192.168.1.62
s=-
c=IN IP4 192.168.1.62
t=0 0
m=audio 6000 RTP/AVP 0
a=rtpmap:0 PCMU/8000
]]>
</send>
<recv response="200" rtd="true"/>
<send request="ACK"/>
</scenario>
启动命令:
sipp -sf uac_scenario.xml 192.168.1.63:5060 -i 192.168.1.62 -m 1
6. 终止测试
- 按
Ctrl+C
终止SIPp进程。 - 检查统计信息:
Total call time: 1.000s Successful calls: 1 Failed calls: 0
常见问题排查
- 无响应:检查防火墙/端口是否开放,IP地址是否拼写正确。
- 响应超时:增加UAC超时时间(
-timeout 10
)。 - SIP错误码:根据日志调整场景文件(如401需处理鉴权)。
通过以上步骤,您可以在两台服务器间模拟完整的SIP呼叫流程。
更多推荐
所有评论(0)