特定のイーサネット統計の取得

特定のイーサネット統計の取得

rx_broadcastこれから価値を得る方法はありますか/sys/class/net/<intf>/..

イーサネット統計を取得するETHTOOL_GSTATSには、次のコマンドを使用していますが、値を読み取るいくつかのスクリプトに興味があります。SIOCETHTOOLIOCTL/sys/class/net

検索しましたが、/sys/class/net/...アイテムが見つかりません。

ベストアンサー1

/sys/class/net//..からrx_broadcast値を取得する方法はありますか?

いいえ、文字通り https://www.kernel.org/doc/html/latest/networking/statistics.html:

sysfsの各デバイスディレクトリには、struct rtnl_link_stats64のメンバに対応するファイルを含む統計ディレクトリ(/sys/class/net/lo/statistics/など)が含まれています。

そしてrtnl_link_stats64代表的なフィールドはありません rx_broadcast

ethtool「メンテナンス」というすぐに使えるツールがあります。https://git.kernel.org/pub/scm/network/ethtool/ethtool.gitスクリプトでは、次のものを使用できます。

$ ethtool -S eth0 | grep rx_broadcast
     rx_broadcast: 48728

システムに新しいプログラムを追加したり、それを使用するCプログラムを作成したくない場合は、システムioctl()で利用可能で、ioctlサポートを組み込んだ他のスクリプト言語を使用する必要があります。Pythonのethtool -S

おすすめ記事