我开始red5,
然后我开始red5phone
我尝试注册SIP用户,我提供的细节是
用户名= 999999
密码= ****
ip = asteriskserverip
我得到了
- 注册联系人 - sip:[email protected]:5072
正确的联系可能是
- 注册联系人 - sip:99999 @ asteriskserverip
这是日志:
SipUserAgent - listen -> Init... Red5SIP register [SIPUser] register RegisterAgent: Registering contact <sip:[email protected]:5072> (it expires in 3600 secs) RegisterAgent: Registration failure: No response from server. [SIPUser] SIP Registration failure Timeout RegisterAgent: Failed Registration stop try. Red5SIP Client leaving app 1 Red5SIP Client closing client 35C1B495-E084-1651-0C40-559437CAC7E1 Release ports: sip port 5072 audio port 3002 Release port number:5072 Release port number:3002 [SIPUser] close1 [SIPUser] hangup [SIPUser] closeStreams RTMPUser stopStream [SIPUser] unregister RegisterAgent: Unregistering contact <sip:[email protected]:5072> SipUserAgent - hangup -> Init... SipUserAgent - closeMediaApplication -> Init... [SIPUser] provider.halt RegisterAgent: Registration failure: No response from server. [SIPUser] SIP Registration failure Timeout
请让我知道如果我做错了什么。
我会build议做的是在手机和服务器端进行数据包捕获,然后使用WireShark分析捕获。
Wireshark对VoIPstream量有非常好的解释,并将SIP数据包分解为容易阅读的块。
从那里,你可以知道你的STUN服务器是不是不正确的(如果你使用的是STUN),或者连接数据包有什么奇怪的事情,然后用它来缩小情况。
在两端运行捕获的原因是,我看到一些善意的“SIP-Aware”防火墙不正确地处理SIP数据包,导致头痛不已,但是我可以告诉进入防火墙的数据包是不同于什么离开防火墙,这是一个赠品。
数据包捕获(thsark / ngrep)包含您寻求的答案。
我想说的是,服务器没有收到注册的SIP数据包,或者客户端无法收到响应
'RegisterAgent:注册失败:服务器没有响应。'
通过在您尝试注册的服务器上使用tshark / ngrep / tcpdump来validation。 如果您确实看到它在服务器上登陆,但是服务器从不响应,请检查它的日志文件。 确认服务器上没有防火墙规则阻止它。 它会显示嗅探,但应用程序不会回应。
标准的SIP将在端口5060,最有可能的UDP,但偶尔的TCP(我在看你微软…)。
例子:
tshark -i eth0“port 5060”
ngrep -q -W byline“”“port 5060”
tcpdump“端口5060”
如果您有很多其他有效的SIPstream量,但是需要快速读取其中的一部分,ngrep是非常方便的。
ngrep -q -W byline“5025851212”“port 5060”
这例如会寻找一个特定的电话号码,或
ngrep -I CAPTURED.PCAP -q -W byline“[email protected]”“port 5060”
预先捕获的文件中的特定调用ID:CAPTURED.PCAP