如何使用Wireshark跟踪SIP消息

MYVOIPAPP技术支持团队

support@myvoipapp.com

在我们部署VoIP网络时,经常会遇到一些问题阻碍我们。如果能捕捉到TCP/UDP包,将非常有助于我们发现问题的根源。在本文中,我们建议使用wireshark。Wireshark是个优秀的协议分析工具,具有丰富的VOIP分析特性。我们可以使用Wireshark捕捉并分析SIP消息。

http://www.wireshark.org/下载并安装Wireshark到计算机中。对于miniSipServer用户,我们同时建议将wireshark安装到MSS同一台计算机中。

启动WireShark后, 请点击菜单"Capture / Options ..."

wireshark选项

在弹出的"Capture options"窗体中,请选择你希望跟踪SIP消息的网卡。

wireshark捕捉

如果网卡是无线网卡,你不能选择"Capture packets in promiscuous mode",否则有可能捕捉不到任何消息。

接着,请点击"Start"按钮,WireShark开始捕捉SIP消息。

然而在Wireshark窗体中,您会看到非常多TCP/UDP包,那么如何发现或者过滤SIP消息呢? 在Wireshark中,设置"filter"即可。

在主窗体中,请设置"filter"为"SIP",并点击"apply"按钮。

Capturing window

完成这些步骤后,请尝试拨打一个SIP呼叫,您将看到大量的SIP消息,例如INVITE, BYE, CANCEL等等。接着,您可以点击菜单"File / Save"保存您捕捉的SIP消息。默认情况下,wireshark会保存所有捕捉到的数据包。这可能保存过多的数据包,而我们实际上仅仅希望保留SIP消息。在前面的步骤中,我们已经设置了"filter"为”SIP“, 因此我们点击菜单“File / export specified packages,然后选择”Displayed“项,这样,wireshark就仅仅将已显示的SIP消息保存到文件。

保存过滤的数据包