0

启动后是否可以在Linux中设置接口统计信息?我正在处理每天都会感到不安的 rrdtool (mrtg),ifdownifup会使接口计数器归零。理想情况下,我想从我离开的地方继续计数,并将接口值设置为接口关闭之前的值似乎是最简单的路径。

我检查了写给/sys/class/net/ax0/statistics/rx_packets但那给出了一个Permission Denied错误。

netstat, ifup,ifconfig和朋友似乎也不支持更改这些值。

还有什么我可以尝试的吗?

4

1 回答 1

0

你不能设置内核计数器,不——但你真的需要吗?
MRTG 通常会根据样本之间的差异绘制一个速率。因此,您的 MRTG/RRD 将在每个周期(通常为 5 分钟但可能为 1 分钟)存储每秒数据包值。当您的设备重置计数器时,MRTG 会看到该值明显倒退 - 这将被视为超出范围,因此样本失败。但是,下一个样本将起作用,并给出一个新的速率。如果您在重置时 MRTG 图表中出现大幅峰值,这将是由于“计数器翻转”检测不正确造成的。您可以通过设置 MRTG AbsMax 设置(以防止此高值有效)或(更好地)使用 SNMPv2 计数器(重置更明显)来防止这种情况。如果您将 RRD 文件设置为具有足够大的心跳和 XFF,那么将插入这个缺失的样本,所以你的图表(记住,显示的是比率而不是总数)将继续看起来很好。如果您需要总数,它可以通过 MRTG/RRD 的 Routers2 前端自动完成的 sum(rate x interval) 得出。

于 2020-06-14T23:35:21.773 回答