我的程序中的Wireshark tcap解剖器

问题描述:

我正在研究SS7项目,并达到了需要创建我的tcap解析器/解析器的地步,所以我想知道在我的源代码中使用wireshark开发文件。我的程序中的Wireshark tcap解剖器

这可能吗?如是?我该怎么做?有没有可用的教程?

http://www.tcpdump.org/有所有需要的信息。

你需要使用libpcap如下所述:http://www.tcpdump.org/pcap3_man.html

我猜pcap_open_offline是一个良好的开端,然后你可以使用相关的函数来获取包含在转储文件的结构化数据。使用相同的库,你也可以直接从你的应用程序捕获。

在相关说明中,wireshark和tshark允许将pcap文件导出到xml,如果您愿意,也可以使用此格式代替二进制pcap。

像大多数软件一样,它是可能的。然而,更有效的问题可能是您对Wireshark源代码有什么用处?

使用Wireshark的有一些缺点:

  • 它是所有协议建立一个通用工具。所有实施的协议解析器都插入到其总体框架中。所以如果你想重用一个特定的协议,你需要一些实现或者删除框架代码的方法。
  • 它仅用于剖析和描述协议组件。它没有编码功能。
  • 它使用副本左GPL许可证进行了许可。这意味着您从Wireshark构建的任何软件也必须以这种方式获得许可。

话虽如此,只要浏览源代码就可以获得起点,这是非常宝贵的。解析源文件的主要解决方案是在epan/dissectors/packet-tcap.c。 Wireshark使用ASN.1反编译器来解析TCAP消息。它使用的定义文件可以在asn1/tcap/tcap.asn中找到。