2016-07-15 5 views

答えて

0

あなたはtcpstatを使用することができます。

tcpstat - レポートネットワークインターフェイスの統計情報

tcpstat -i <interface>

あなたがそれを起動したい場合は、インターフェイスがアップしているとき、あなたは/etc/network/interfacespost-upを使用することができます。

auto enp4s0f1 
iface enp4s0f1 inet dhcp 
post-up /etc/init.d/tcpstat start enp4s0f1 

/etc/init.d/tcpstatinit.dスクリプトですが、私は含んで作成している:私はRHEL互換性のためにdaemonizeの代わりstart-stop-dameonを使用している

#!/bin/bash 
#title   :tcpstat 
#description :start/stop/restart tcpstat 
######################################### 
### install : cp tcpstat /etc/init.d/ 
#    update-rc.d tcpstat defaults 
### uninstall : update-rc.d -f tcpstat remove 

usage(){ 
    echo "Usage: service tcpstat {start|stop|restart} <interface>" 
} 

DEFAULT_LOCATION="/tmp/dump" 
EXEC="/bin/tcpstat_run" 

if [ ! -z "$2" ]; then 

    if [ ! -z "$3" ]; then 
     STORAGE_FILE="$3" 
    else 
     STORAGE_FILE="${DEFAULT_LOCATION}_$2" 
    fi 

    if [ -f $PID_FILE ]; then 
     echo "file exist" 
    fi 

    case "$1" in 
     start) 
      echo "Starting tcpstat service on inteface $2..." 

      daemonize -E INTERFACE=$2 -E DUMP_FILE=$STORAGE_FILE $EXEC 

      echo -e "\E[31;33m[ OK ]\E[0m" 
      ;; 
     stop) 
      echo "Stopping tcpstat service..." 

      pkill -f "tcpstat -i $2" 

      echo -e "\E[31;33m[ OK ]\E[0m" 
      ;; 
     restart|reload) 
      "$0" stop "$2" 
      "$0" start "$2" 
      ;; 
     *) 
      usage 
      exit 1 
    esac 
else 
    usage 
fi 

exit $? 

注意を。

daemonize打ち上げ/bin/tcpstat_runにある次のexec:

#!/bin/bash 

tcpstat -i "$INTERFACE" > "$DUMP_FILE"& 

あなたがpost-downで特別な処理を呼び出す特定の場所&でダンプを保存したい場合は特に、あなたの好みに合わせてこれらのスクリプトを変更することができます。例えば

、あなたはこれを試すかのようですが、あなたは、次のような出力を得るだろう:私はインターフェイスのアップ以来、特定のインターフェイスでのTCP統計情報を取得する必要があります

[email protected]:~$ tail -f /tmp/dump_enp4s0f1 
Time:1468847225 n=9 avg=66.56 stddev=35.76 bps=958.40 
Time:1468847230 n=9 avg=87.33 stddev=40.17 bps=1257.60 
Time:1468847235 n=14 avg=130.50 stddev=66.08 bps=2923.20 
Time:1468847240 n=3 avg=46.00 stddev=0.00 bps=220.80 
Time:1468847245 n=12 avg=58.50 stddev=11.26 bps=1123.20 
Time:1468847250 n=9 avg=115.78 stddev=78.32 bps=1667.20 
Time:1468847255 n=169 avg=135.22 stddev=188.26 bps=36564.80 
+0

このコマンドは、ほとんどの主要なLinuxディストリビューションに含まれている「標準」コマンドですか? – Lucifa

+0

デフォルトではLinuxディストリビューションにはインストールされていませんが、ほとんどのパッケージマネージャーで利用可能 –

+0

"tcpstat -i "は特定のインターフェイスでライブキャプチャを実行できますが、インターフェイスのアップから統計データを取得する方法はありますか? – Lucifa

関連する問題