星号SIP / 2.0 401未经授权

我遇到了Asterisk 10.3的一个有趣的小问题,但它似乎也适用于10.4。

运行Asterisk的服务器从VPS重新定位到专用硬件,现在,几个SIP对等体中只有一个可以正确连接。

SIP对等端从ODBC连接加载到实时。 鉴于1能够连接没有任何问题,并按预期的function,运行查询,等我已经排除了任何数据库连接问题。 一个客户恰好是一个Grandsteam ATA。

但那就是停止的地方。 没有其他人可以连接,因为星号告诉他们401未经授权,当他们尝试注册。

这个等式中唯一的variables可能是networking设置的方式。 旧主机是一个VPS(Xen),新的硬件是专用的。 在这种情况下,服务器坐在公共IP上。 在专用硬件上不应该出现任何时髦的NAT技巧,但大多数连接的对等设备都在某种NAT的后面。

我到目前为止所尝试的是:

  • 调整nat = no在每个同行,相同的结果
  • 调整nat = no在每个对等,不安全=邀请,端口,相同的结果

最重要的是,所有的潮stream都连接得很好。 但是像CSipSimple,Cisco IP 79xx,Polycom等其他客户端…不行。

任何想法可能需要改变,以允许这些同行再次连接?

例:

<--- SIP read from UDP:12.34.56.78:35286 ---> REGISTER sip:sip.server.com SIP/2.0 Via: SIP/2.0/UDP 10.0.0.163:35286;rport;branch=z9hG4bKPjZ8cqUxWzs6KnfN5kqG9lrD-V0hXQNppc Route: <sip:sip.server.com;lr> Max-Forwards: 70 From: "Erik" <sip:[email protected]>;tag=uwgq3EEWaQ0DuPwWEzuLfVA3aajqyXL6 To: "Erik" <sip:[email protected]> Call-ID: ohWlNbqWRdOme5TvFr3.r6mnPUbjoKqs CSeq: 1582 REGISTER User-Agent: CSipSimple r1108 / GT-S5830D-10 Contact: "Erik" <sip:[email protected]:35286;ob> Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Content-Length: 0 <-------------> --- (13 headers 0 lines) --- Sending to 12.34.56.78:35286 (NAT) <--- Transmitting (NAT) to 12.34.56.78:35286 ---> SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.0.163:35286;branch=z9hG4bKPjZ8cqUxWzs6KnfN5kqG9lrD-V0hXQNppc;received=12.34.56.78;rport=35286 From: "Erik" <sip:[email protected]>;tag=uwgq3EEWaQ0DuPwWEzuLfVA3aajqyXL6 To: "Erik" <sip:[email protected]>;tag=as2da10195 Call-ID: ohWlNbqWRdOme5TvFr3.r6mnPUbjoKqs CSeq: 1582 REGISTER Server: Asterisk PBX 10.3.0 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH Supported: replaces, timer WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="7837df5c" Content-Length: 0 <------------> 

问题解决了! 尽pipeAsterisk提供了通过指定0.0.0.0作为监听地址来处理多个地址的能力,Asterisk出现的那个框却是从服务器上的其他别名IP发送邀请,而不是预期的IP地址。 绑定星号到一个IP,并连接到一个IP,完全解决了这个问题。

这可能有助于某人:

 insecure=invite 

在类似的搬迁之后帮助了我。 对我来说,这是虚拟机虚拟机,但桥接到完全相同的networking,所以我只是不明白为什么我的工作configuration停止工作。 我经历了一种方式的通话效果。 来自外部的SIP PBX进入星号的呼叫然后发送到voip软客户端正在工作,但是voip软客户端根本无法通信。

我有这个问题,我解决了它转移到基于TCP的连接。 我已经启用了TCP,并启用了扩展来使用它。

在我的环境中似乎有NAT和UDP的问题。 如果我发现更多,我会更新我的答案,但希望这将certificate有用的人也发现这个问题。