【发布时间】:2012-04-02 16:38:28
【问题描述】:
我正在使用 netfilter 过滤数据包。现在,我需要将这些数据包数据放入文件中。我知道我们不能直接从内核读取/写入文件(感染,我们不应该),但最近我知道我们可以使用拼接来做到这一点。
以前,我尝试将所有数据包复制到用户空间,然后将它们转储到文件中,但它的运行速度非常慢,并且我丢失了数据包。我尝试使用 netlink 并尝试使用标准 udp 套接字从内核空间复制到用户空间。使用这种方法我没有得到很好的结果,因为我的数据包率非常高。
请建议我一种在内核空间内将数据包写入文件的好方法。如果有人有使用拼接的想法/示例,将不胜感激。谢谢。
【问题讨论】:
-
我认为你应该检查一下link
标签: c linux linux-kernel linux-device-driver