Linuxstream量logging

我正在寻找一个很好的免费方法来loggingIP标题信息(带时间戳的src / dest IP)通过Linux路由器

我知道我可以这样做

tcpdump -i eth0 > log.txt

不过,我正在寻找一些更有实质性的东西,因为这一直在运行。

如果你想要详细的日志logging,我build议ulogd。

iptables可以在本地执行此操作。 只要在链条中尽早放置一个LOGULOG目标即可。 您还必须使用rsyslogd来将iptables日志从内核日志loggingstream中取出并放入您select的文件中。 这使得你需要在日志文本中使用iptables规则(如":FW:" )来input一些独特的字符,这样你就可以告诉rsyslogd根据该string进行过滤并将其放入自己的文件中。

我真的很喜欢使用阿古斯这个。 它是一个混杂的监听接口并写出类似于(net | j)stream的stream数据的软件包。 它使用客户端/服务器模型,服务器守护程序执行捕获和写入数据文件,客户端工具用于读取和分析数据文件。 输出文件被写入二进制格式,所以包含工具中的一些学习曲线是必要的。

接下来使用(几乎)默认configuration是基本输出的匿名版本:

 StartTime Proto SrcAddr Sport Dir DstAddr Dport SrcPkts DstPkts SrcBytes DstBytes State 31 Jan 11 23:20:07 icmp 10.8.23.225 -> 10.28.5.232 1 0 60 0 ECO 31 Jan 11 23:48:07 tcp 10.10.238.252.12200 -> 10.28.5.232.27977 1 0 60 0 REQ 01 Feb 11 01:10:59 icmp 10.15.36.226 -> 10.28.5.232 1 0 60 0 ECO 01 Feb 11 01:11:00 icmp 10.15.36.226 -> 10.28.5.232 1 0 60 0 ECO 01 Feb 11 01:13:45 tcp 10.10.238.252.12200 -> 10.28.5.232.27977 1 0 60 0 REQ 01 Feb 11 01:36:13 udp 10.18.16.98.5060 -> 10.28.5.232.5060 1 0 454 0 INT 01 Feb 11 03:22:34 tcp 10.10.238.252.12200 -> 10.28.5.232.27977 1 0 60 0 REQ 01 Feb 11 04:05:51 tcp 10.10.238.252.12200 -> 10.28.5.232.27977 1 0 60 0 REQ 01 Feb 11 04:48:32 tcp 10.10.238.252.12200 -> 10.28.5.232.27977 1 0 60 0 REQ 

它被devise为作为一项服务运行,但是您必须根据您的系统,存储和吞吐量找出将文件旋出的最佳方式。 您应该能够将其指向您的路由器的一个接口,并获得您所需的所有信息。

作为一个奖励,tt还配备了大量的帮助程序工具,您可以使用这些工具来完成交通图,会计和其他types的分析。 有关可以运行的分析的详细信息,请参阅NSMWiki页面。

ntop? 如果我明白你想要什么。 这将给你一个很好的networking界面,所有的数据,它很容易安装。

Pastmon ? mrtg ?