我正在使用Wireshark来嗅探网络并检测VoIP呼叫。可以从GUI(电话 - > VoIP呼叫)中看到检测到的VoIP呼叫。
现在我想从命令行获取此列表。我搜索了wireshark文件,但找不到这样做的命令。
我正在使用像
这样的命令tshark -r myFile -R "sip.CSeq.method eq INVITE"
来自这个主题: Filtering VoIP calls with tshark
是否有命令从命令行显示voip调用列表,或者我是否必须解析输出并创建自己的列表?您是否建议使用其他工具?
非常感谢任何帮助。
答案 0 :(得分:2)
我不知道如何哄骗tshark
来为您提供Wireshark GUI的功能。您可以通过对tshark
的输出进行后处理来完成此操作,但这将是相当多的工作。一种方法是:
tshark
显示SIP数据包的完整详细信息(例如,使用-v
)这当然可行,但我希望你知道你正在进入什么。
单独进程(我没有经验)的替代方法是编写Wireshark script in Lua,并通过tshark -Xlua_script:my_script.lua
调用(使用由Lua支持编译的tshark版本)。可以在示例“将VoIP调用转移到单独的文件中”(或类似地here)下找到帮助您入门的示例here on Google Code。优点是:
对我来说,缺点是我必须学习一门新语言(不是世界上最糟糕的事情)。
编辑:看起来如果你使用Lua脚本方法,wireshark / tshark中的SIP解析器可以提供相当多的帮助;例如,您可以检查SIP响应中的sip.response-request
以查找匹配请求的数据包编号。