【发布时间】:2010-12-10 22:19:02
【问题描述】:
作为个人项目的一部分,我正在编写一个小型嗅探器。我正在使用Net::Pcap(非常棒的工具)。
在数据包处理循环中,我使用出色的Net::Frame 来解包所有标头并获取数据。我开始担心这可能效率不高(Net::Frame 很棒,但似乎超出了我对这个项目的需要)。
另外我不喜欢对于某些 Debian 系统,我必须手动编译 libdumbnet(官方 apt 存储库中提供的软件包似乎不起作用,Net-Libdnet-0.92 不喜欢它)。
我想要的只是获取 TCP 段内的有效负载。有没有其他选择? 谢谢。
附:如果我只是拿起数据包并在其中搜索某种模式,那真的会很糟糕(阅读“thedailywtf.comworthy”)吗?
【问题讨论】:
-
我猜 unpack() 在处理 TCP 数据包方面会比 RE 更好。
标签: perl libpcap packet-sniffers