rx_broadcast
これから価値を得る方法はありますか/sys/class/net/<intf>/..
?
イーサネット統計を取得するETHTOOL_GSTATS
には、次のコマンドを使用していますが、値を読み取るいくつかのスクリプトに興味があります。SIOCETHTOOL
IOCTL
/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。