将SIP电话(X-Lite)注册到星号服务器(asteriskNow)

我们目前有一个学校项目,我们需要build立一个PBX与星号。 因此,我们在Ubuntu 12.10的虚拟环境(使用virtualBox)中安装了asteriskNow。 我们通过在本地networking上通过X-Lite注册一些SIP电话来尝试configuration,并且工作。 但现在,我们希望能够通过互联网访问服务器 – 这正是我们正在努力的方向……以下是我们迄今所做的:

现在,我知道这是我们问题的一个非常模糊的描述,错误可能在任何地方 – 但是我们甚至不知道从哪里开始寻找错误。 你有什么build议我们可以做什么? 可能会有什么帮助吗? 任何信息,帮助或build议非常感谢(也如果你知道如何设置星号与freepbx好教程)!

几个一般要点 –

  • 星号在虚拟机上做得很差。
    我不知道他们是否有这方面的具体指导,但我的经验甚至在高端的VMWare环境中,你可能会遇到虚拟VoIP服务器的各种麻烦。
    我强烈build议在专用物理硬件上进行故障排除。

  • SIP (Asterisk背后的VoIP协议) HATES NAT
    SIP从来没有真正devise用于networking地址转换。
    再次,尝试让事情在同一个子网上工作,不涉及NAT或路由,然后再进行更困难的任务。
    与NAT有关的问题通常不仅仅是注册,而且还会影响到通话的效果,而且如果你在Google上search,还有很多关于如何处理的信息 。

  • 在排除VoIP故障时,一个好的数据包嗅探器是您的朋友
    如果你看到数据来回,你可能会想出问题出在哪里。


所以基本上 – 开始在防火墙内部工作。 然后慢慢地处理穿越防火墙和NAT。

在Asterisk教程方面,这些在networking上比比皆是(服务器故障并不是一个真正的“查找教程”的资源 – Google可以比以前更好地了解这个东西)。
我肯定会推荐使用预先包装的Asterisk发行版,如果你是VoIP新手的话 – AsteriskNOW应该没问题,但是我个人使用的是FreePBX发行版,并且有很好的结果(它很适合NAT的自动configuration相关的问题,这使我省了一些头痛。)

但现在,我们希望能够通过互联网访问服务器,这正是我们正在努力的方向

检查事项:

  1. validation您需要“打开”的正确端口。 如果它只是5060,那么…但是确认一下。
  2. 通过使用诸如http://www.t1shopper.com/tools/port-scan或类似的东西来validation调制解调器的外部IP是否在正确的端口上响应
  3. 在两个方向validation调制解调器,内部路由器和PBX之间的路由,使用ping,tracert和其他工具查找NAT问题,路由问题等。
  4. 确保您从调制解调器/防火墙外部testingIP电话,并且没有防火墙阻止出站到这些端口。

希望能帮助你…不要严格规定。

我只想补充一点,因为这个星号有一个公共IP地址,你可能要考虑如何保护它,因为有机器人扫描开放的5060端口,尝试访问VoIP服务器/电话/等。 您可能需要使用Fail2ban并为您的星号对等方select好的密码。