2014-02-28 66 views
8

我已经从一个星号(版本11.2.1)创建的SIP中继说 'A' 服务器到另一个的Asterisk服务器(11.7.0)说, 'B',和我收到SIP响应200 OK 。
但是当我开始呼吁在上星号DID以下警告,然后将呼叫路由到Asterisk的“B”和38秒钟后,呼叫已断开显示:星号,SIP超时重传

Retransmission timeout reached on transmission [email protected]:5060 for seqno 102 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions 
Packet timed out after 32000ms with no response 
Hanging up call [email protected]:5060 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions). 

任何想法?

+0

你可以在没有中继线(A-B)配置的情况下在服务器“A”上调用DDI吗?确保你的拨号计划是正确的。 – pce

+0

是的,它的工作完美无需树干配置。主要问题是呼叫在38秒后断开连接,在38秒之前我可以听音频文件,只要呼叫达到38秒,我就放弃 –

+0

所以......你是否已经解决了你的问题了? – Riad

回答

1

这种情况可以当场,当你有NAT问题或防火墙问题

使用

asterisk -r 
sip set debug on 
+0

我已经删除了防火墙设置,这个问题是不相关的防火墙,对于Nat我已经使用nat = force_rport ,喜剧在sip.conf中。 –

+0

检查调试.... – arheops

+0

从调试日志,星号服务器 'B' 不断表示〜111重传#{1-9}(NAT),其中{1-9}表示retransmition尝试, –

0

这些事件通常看到这篇文章 http://www.voip-info.org/wiki/view/Asterisk+SIP+NAT+solutions

欲了解更多信息,你可以启用SIP调试与NAT问题相关。

如果你确定这是不是你的问题,看看路由器的配置。某些路由器默认配置为“SIP ALG”选项。

在某些情况下,应该关闭此选项,因为实现不完整。

试试吧,让我知道它是否正常工作。

+1

感谢您的建议。其实我早就知道了,这是由于NAT设置。我已经解决了这个问题。 –

5

默认情况下,Asterisk在呼叫建立后发送RE-INVITE请求。

但大多数SIP客户端和SIP服务器在市场不接受RE-INVITE请求。因此,当Asterisk在呼叫建立后发送RE-INVITE时,另一方不回应请求。所以,32秒后,Asterisk挂断了电话。

为了解决这个问题,你需要禁用的Asterisk的RE-INVITE的功能,如果您的客户端软件不接受RE-INVITE请求。要做到这一点,你需要编辑sip.conf文件中的Asterisk包括:

canreinvite = no 
0

确保你在sip.conf有“externip =”正确的IP地址在/ etc /星号。