Linuxシステムでネットワーク統計を収集するための小さなスクリプトを作成しようとしています。私ができる方法はありますか?
私が望むのは、現在のネットワークスループットのリアルタイム統計です。私は数冊の本を読んで、これが/proc/net/dev
役に立つことがわかりました。内容を分析して現在のネットワーク速度を把握することができました。これが実現可能で信頼できるアプローチですか? itrafやiftopのようなパッケージは、速度の向上と減速をどのように計算しますか?
ベストアンサー1
はい、/proc/net/dev
これは一般的な方法です。/sys/class/net/eth0/statistics
より簡単な場合は、そこからファイルを使用することもできます。
または、その他のユーティリティifdata
この情報を取得できるスクリプトが含まれています。たとえば、print( -sib
) と-sob
() のバイト数を出力するには、次のようにします。
$ ifdata -sib -sob eth0
48115944587
71982675360
出力順序はフラグ順序と同じです(例:48...入力と71...出力)。
また、最後のビット/秒も計算します(sleep 1
デフォルトでは次のことを行います)。
$ ifdata -bips -bops eth0
1148
1755