使用libpcap收集大量DNS统计信息

时间:2012-03-05 00:27:58

标签: dns monitoring libpcap

我正在考虑编写一个应用程序来监控大约200,000台开发人员和测试机器的DNS请求。 Libpcap听起来是一个很好的起点,但在我潜入之前,我希望得到反馈。

这是应用程序需要做的事情:

  • 检查所有DNS数据包。
  • 保留汇总统计信息。包括:
    1. DNS名称。
    2. DNS记录类型。
    3. 相关知识产权。
    4. 申请知识产权。
    5. 计数。
  • 如果一个DNS名称的请求IP数量> 10,然后停止保持客户端IP。

有望将统计信息保存在内存中,磁盘写入只会在发生新的“可疑”DNS交换时发生,或者每隔几个小时将新统计信息写入磁盘以供其他进程使用。

我的问题是:   1.是否存在可以执行此操作的任何应用程序?链接将是100 MB或1 GB。   2.性能是第一大考虑因素。我有为其他一次性安全应用程序编写c的经验,但我不是专家。想到任何提示吗?   3.对于一个优秀的c开发人员来说,这需要多少努力?

谢谢! 杰森

1 个答案:

答案 0 :(得分:0)

我建议您尝试使用DNSCAP甚至Snort来捕获DNS流量。

BTW我认为这是一个superuser.com问题,而不是StackOverflow问题。