linux中的pcap正在丢弃数据包,它似乎与共享内存映射相关,如https://stackoverflow.com/a/11660759/1794758所述。
然而,该答案的链接已关闭,因此我无法看到如何编译禁用共享内存映射的libpcap。我在网上搜索并查看了libpcap文档,但看不出这是怎么做的。
答案 0 :(得分:0)
您无法设置配置参数。我发现这样做的唯一方法是在编译之前实际修改代码。你要做的事情非常简单。以下是步骤:
在源文件pcap-linux.c中,转到activate_mmap方法。该方法的返回码指示调用者何时正确设置了内存映射。只需将方法短路并从顶部返回0,就应该关闭内存映射。