我一直在试图计算我的机器收到的ICMP请求每分钟的频率。如何计算Linux机器收到的ICMP请求的频率?
我试过使用tcpdump并将结果保存到一个文本文件中,然后用时间戳记来计算它们之间的差异,但这只会导致很多延迟。
我的做法是:
tcpdump -i eth1 icmp[0]==8 | tee abc.txt
grep -Eo '^[^ ]+' abc.txt
perl -e 'open$T,pop;while(1){while(<$T>){ ++$f{$_}>10 and print "[$f{$_}]$_" for /(\d+:\d+)/ }sleep 1;seek $T,0,1}' abc.txt
有我的机器上正在接收不使用任何文件的方式来计算的ICMP请求的频率是多少?
我从一台机器ping到另一台机器,并想计算在接收端收到的ping的频率。
您的问题非常广泛,不适合堆栈溢出,因为您在Ruby和/或Perl中搜索答案,并且没有显示任何代码,也没有显示错误。你可能应该在http://poweruser.com上提问这个问题,它着重于操作系统级别。如果你想要一个编程解决方案,因为你还没有尝试写一些东西,你绝对不是主题。请参阅http://sscce.org/了解如何解决该问题。 –