Purebasic Windows TCP 过滤器特定包最简单的方法?

Purebasic Windows TCP filter specific package easiest way?

我有一个问题,我需要检查机器上的 TCP 数据包。 我们在这里使用封闭源代码的 VOIP 系统,我想在来电时打开一个程序。 VOIP 系统的软件显示呼叫,但没有呼叫外部软件的功能。

我使用 Wireshark 来捕获我的 PC 数据包,我可以通过以下方式轻松过滤数据包 ip.src==AAA.BBB.CCC.DDD && giop.request_op == "pushEvents" && giop.len > 300 && tcp 包含 "CallInfo"

如果我的自定义软件可以从管道读取包,现在我可以使用这个包了

感谢任何建设性的回答没有打我 rtfm ;-)

tshark 只是与 GUI Wireshark 相同引擎的 terminal/console 接口。它应该支持与 GUI 应用程序相同的所有协议解析器和显示过滤器。

我很确定你在启动它时做错了什么。请提供更多信息,说明为什么您无法让 tshark 正常工作。

解决您的问题:我将使用您提出的过滤器启动一个 tshark,这样只有那些数据包才会显示在输出中。然后我将输出通过管道传输到简单的 python/bash/whatever 脚本,该脚本在每一行输入上启动您想要的应用程序。

您还需要处理特定情况,例如:

  • 确保输入行符合预期(您可以从 tshark 获取错误行等)
  • 如果应用已经 运行
  • ,则可能避免启动该应用