Sip 什么';我在Edgerouter X(德国电信)上的VoIP设置有问题

Sip 什么';我在Edgerouter X(德国电信)上的VoIP设置有问题,sip,router,voip,Sip,Router,Voip,我来自德国,我的供应商是德国电信。我正在使用ubiquiti edgerouter x,并与Telekom建立pppoe连接。互联网运行良好,但我无法让VoIP正常工作。我的手机是西门子Gigaset C430A GO。我在那里做的唯一配置是按照向导,输入我的电话号码并选择预定义的Telekom设置。根据Telekom的支持,这些设置应该是正确的 在edgerouter上,我列出了白名单,并将几乎每个端口转发到我的手机(10.1.0.4) 请查看我从手机打电话到配置的固定电话时使用的tcpdum

我来自德国,我的供应商是德国电信。我正在使用ubiquiti edgerouter x,并与Telekom建立pppoe连接。互联网运行良好,但我无法让VoIP正常工作。我的手机是西门子Gigaset C430A GO。我在那里做的唯一配置是按照向导,输入我的电话号码并选择预定义的Telekom设置。根据Telekom的支持,这些设置应该是正确的

在edgerouter上,我列出了白名单,并将几乎每个端口转发到我的手机(10.1.0.4)

请查看我从手机打电话到配置的固定电话时使用的tcpdump:

问题是电话铃响了,我拿起电话,但什么也听不见。10秒后,连接关闭。在相反的方向,我也听不到任何声音,但连接保持打开。但是:当我在一边挂断电话时,另一边会收到通知

我觉得这很奇怪。这看起来不像是一个封闭端口的问题,也不像是防火墙的其他问题。不幸的是,到目前为止,我没有SIP方面的经验,从日志来看,我真的不知道那里的一切是否都是正确的

我在日志中更改了电话号码。 111122223333是我打的固定电话。 4455556666是我打电话的手机号码。 7777889999也在日志中,这是另一个配置的固定线路。我不知道为什么日志里有这个。 100.200.100.200是我的外部IP。 10.1.0.4是我手机的内部IP


有人知道可能出了什么问题吗?

您应该检查路由器的NAT或ALG设置以及手机的眩晕设置

下面是它背后的基本原理:您发布的捕获显示远程方希望端口33880上有媒体,而您的手机希望端口5012上有媒体。问题是,当您的手机成功发送音频时,它不会收到任何回报。此外,在通话开始大约一秒钟后,您的手机会发送一个reinvite,这次是使用其本地IP地址,而不是使用可公开路由的地址:

...
o=- 5012 14 IN IP4 10.1.0.4
s=Mapping
c=IN IP4 10.1.0.4
...
另一方拒绝重新邀请,理由是SDP是伪造的(理应如此),在捕获过程中,这一系列事件重复数次

  • 如果您的路由器支持ALG且已启用,则应尝试反转此设置,因为它会有效篡改通过路由器的SIP流;它的目的已经被NAT抛弃了,现在它造成的伤害大于帮助
  • 如果路由器的NAT设置要求对称NAT,请禁用它;它的行为与您描述的问题一致(尽管可能有其他原因)
  • 检查手机的眩晕设置(用户手册第106页)并启用;当涉及到通过通知远程方将音频发送到工作端口来穿越您的本地网络时,STUN在NAT背后非常有效

    • 嘿,谢谢你提供的信息。我发现edgerouter确实有一个SIP ALG。我已经停用了那个。然后,我将标准SIP和RTP端口更改为自定义端口,以确保没有任何东西试图实现SIP魔力。直到我试着解除昏迷,它还是不起作用。现在它起作用了。但为什么不呢。我现在只转发真正需要的端口,而我的手机不需要无缘无故地进行眩晕。防火墙规则允许从Telekom SIP范围到我的手机的软件包。现在一切都好了