我的程序中的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中找到。