1

我有一个运行 OpenSIPs 1.11.3 的 SIP 服务器

  • 配置了内置 STUN 模块(具有 2 个 IP 的完整模式)
  • 配置了 MediaProxy 2.6.1 以中继 RTP(在路由脚本中使用engage_media_proxy)

使用 doubango 的 IMSDroid 作为 SIP 客户端。

wifi-wifi之间的通话很好,我不需要在客户端打开任何STUN、ICE、TURN选项。

但是,3g-wifi 或 3g-3g 之间的通话不是很好。3G可以拨出电话,但不能接听电话。这意味着 3g-3g 通话永远不会发生。我在 OpenSIPs 日志中看到的只是 INVITE 的重复重传,因为它无法到达 3G 端。

我读到TURN服务器可以解决这种问题,所以我在IMSDroid sip客户端启用了TURN,但3G端仍然无法接收任何呼叫。

我正在使用的 TURN 服务器:

网址:'转:numb.viagenie.ca' 凭证:'muazkh' 用户名:'webrtc@live.com'

有什么解决方案/模块可以用来解决这个问题吗?

 

编辑

如果我使用 TCP 协议,我可以接听电话!虽然通话在 30 秒后因传输错误而终止,但至少通话成功了。知道这里发生了什么吗?移动运营商阻止来电?但绝对不是端口阻塞,因为我可以注册我使用端口 80 还是 5060。

编辑 2

我尝试使用免费的 SIP 帐户拨打电话(sip2sip.info 和 sip.antisip.com),我也遇到了同样的问题!据我所知,sip2sip.info 也在使用 OpenSIPS,但 AntiSip.com 使用的是 AmSIP 之类的东西。所以问题出在我的移动运营商上?

谢谢!

4

1 回答 1

0

如果您的 UA 无法接听电话,则意味着它无法发送信号。为了使您的 UA 可以访问,它需要注册并保持 NAT 映射活动。要保持 NAT 映射处于活动状态,您的 UA 必须定期向服务器发送 keepalive。另一种选择是服务器向 UA 发送 keepalive,但某些 NAT 不会刷新传入流量的映射。

当您解决第一个问题时,媒体部分就出现了,STUN、TURN 和 ICE 等技术将提供帮助。

于 2015-01-31T20:27:52.260 回答