哪些命令行工具可以可靠地监控networking活动?
我已经使用了ifconfig,但一位办公室的同事说,它的统计数据并不总是可靠的。 真的吗? 我最近使用了ethtool,但是可靠吗? 那么看看/ proc / net'文件'呢? 那还好吗?
编辑
我对数据包Tx / Rx,字节Tx / Rx感兴趣,但最重要的是丢弃或错误,以及为什么可能发生丢弃/错误。
我喜欢和使用pmacct
从他们的网页:
概述。
IP计费是基础networkingpipe理任务(如计费,绘制networking资源使用情况,实时或历史stream量趋势分析,转向BGP对等,实时警报和某些SLA监视)的关键活动。 通常,SNMP计数器由于其粗粒度而在这些方面不起作用; 实时stream量镜像,NetFlow和sFlow通过提供更细粒度的数据来打破这一障碍。 但是目前的高速大规模networking能够在很短的时间内产生大量难以处理的数据。 在这种情况下,空间和时间聚合,灵活的过滤和采样能力成为关键要求。
pmacct是一小组被动networking监测工具,用于测量,计算,分类,聚合和导出IPv4和IPv6stream量; 其主要特点是:
无论是使用内存还是SQL表作为后端存储,pmacct都可以轻松地将数据提供给外部工具,包括RRDtool,GNUPlot,Net-SNMP,MRTG和Cacti等等。 小脚本function是必需的,一些示例脚本,贡献,Web前端和一些教程已经可用。
我使用的其他工具包括:
tcptrack是一个嗅探器,它显示有关在networking接口上看到的TCP连接的信息。 它被动地监视networking接口上的连接,跟踪它们的状态并以类似于unix'top'命令的方式显示连接列表。 它显示源和目标地址和端口,连接状态,空闲时间和带宽使用情况。
Pktstat显示在networking接口上看到的活动连接的实时列表,以及正在使用多less带宽。 部分解码HTTP和FTP协议以显示正在传输的文件名。 还显示X11应用程序名称。 条目在屏幕上停留几秒钟,以便您可以看到发生了什么。 还接受tcpdump的filterexpression式。
Iptraf
iftop的
tcpdump / wireshark
每当有人告诉我“有人这样做不好”,我总是要求具体。 很多时候,你会发现它是传闻,或者基于一些人认为,因为5年前的一个错误版本,有人已经进行了概括。 中国人耳语比比皆是!
当你说“监测networking活动”,我假定你的意思是计数来自ifconfig的RX和TX字节。 我没有听到任何关于它不可靠的事情。 我们通过SNMP导出这些值并绘制它们。 他们相比,切换活动,我们也正在绘制哪个是这些连接的另一个端点,我可以看到没有差距,这表明他们是不可靠的。
你确实需要知道:
计数器重新启动后重置
卸载/重新加载与接口相关的networking驱动程序后,计数器复位
计数器包装,并且它们将在哪里包装可能取决于你的架构和内核版本
我不能没有我的生活。
dstat , iftop , iptraf , bwm-ng是我的最爱。
根据您的TX / RX统计数据的历史logging,我可能会使用munin 。 但是穆宁不会告诉你为什么。 这是一个munin可以产生的图表的例子。
mtrvalidation丢弃的数据包和响应时间。 运行mtr -i 15一段时间会告诉你,如果你有周期性的问题,并告诉你一些在networking中的位置。