您当前的位置是:  首页 > 新闻 > 国内 >
 首页 > 新闻 > 国内 >

Asterisk课堂-SIP debug

2016-12-21 13:38:25   作者:james.zhu   来源:asterisk   评论:0  点击:


\

  因为Asterisk中的SIP呼叫涉及了不同的网络环境,每个问题都需要依靠具体的日志消息来判断。作为一个系统管理员,虽然不需要发现熟悉和完全了解SIP的协议的使用环境,但是大家至少要了解一些基本的日志信息。这样的话,用户可以快速了解排查问题,找出真正的问题所在。
  视频中介绍了SIP debug 开启对方法,注册流程中的消息,呼叫流程中的发送和asterisk接收消息。另外,视频中介绍了几个第三方的工具。最后解释了服务器端和终端debug的对比排查:


\
  下面我们介绍一下几个SIP的场景,它们包括SIP注册(注册失败,注册成功),SIP分机之间呼叫(失败呼叫和成功的呼叫),然后介绍了第三方的抓包工具,最后还有终端日志排查。
  注册消息的排查,用户首先要了解CLI debug 日志开启和关闭的方式。在开始排查SIP消息时,用户需要打开SIP debug 日志。这样,SIP 注册信息就会显示在Asterisk 后台。用户可以根据SIP 注册流程,找到注册,401,再次发送注册消息,Asterisk验证等消息,来判断是否是成功或者失败的注册。通常,用户会看到日志所显示的状态。
  注册以后,SIP呼叫流程中,从INVITE 发起呼叫,然后验证,最后Asterisk回复信息可以排查出是否是成功的呼叫,或者失败的呼叫。用户可以在具体消息日志中找出相应的关键词,SIP method 等等相关信息,通过这些信息来判断问题。
\
  抓包是判断问题的主要手段。Asterisk环境中支持了很多Linux 开源的第三方工具,用户可以使用这些国家抓包,然后通过图形界面更加来做进一步分析。除了TCPDUMP, wireshark 以外,还有很多非常方便的SIP抓包工具例如,sngrep。如果用户比较熟悉Linux环境的话,建议使用sngrep 来实时分析SIP数据。
\
  当然,除了通过Asterisk 系统本身抓包实现排查以外,用户也要同时打开终端的SIP debug 设置,通过双方SIP消息对比来进一步发现问题。
\
  最后,Asterisk中的SIP排查涉及了很多方面的内容,我们讨论了比较简单的注册流程,呼叫流程的排查方式。希望用户对SIP的注册,呼叫流程有一个基本的介绍。当然,如果SIP注册或呼叫流程比较复杂的话,用户可能还要考虑防火墙,拨号规则,编码,NAT等等问题。在未来的技术讨论中,我们会涉及编码和NAT等问题。

相关阅读:

专题