2017-11-22 4 views
0

送信元ポートまたは宛先ポート別の統計情報などのポート統計情報を取得するには、より良い方法がありますか?ポート別パケット統計の取得方法

-------------------------------- 
    | Src/Dst Port | Packets Count | 
    | -----------------------------| 
    | 22   | 100   | 
    | -----------------------------| 
    | 80   | 200   | 
    |------------------------------| 
    | 8080  | 300   | 
    | -----------------------------| 

私がチェックしているのwiresharkの統計メニュー、およびtsharkのコマンドを、まだ私が望む結果を得る方法がわからない:例えば

は、以下のような結果を取得します。

+0

ここでは、始めるのに役立つことができる1つの、このようなスクリプトがですか? –

+0

申し訳ありませんが、私は質問を非常にはっきりと聞かなかったので、統計情報をポートで取得したいとします。例えば、以下のような結果が得られます:22(ポート)、123(パケット数)。 80,234; 8080、345; –

答えて

1

この概要情報をWiresharkまたはtsharkから直接取得することはできませんが、おそらくスクリプトを作成してそれを行うことができます。あなたがWiresharkのもtsharkのどちらが現在提供していること、次に何を探している統計

#!/bin/sh 

# Check usage 
if ((${#} < 2)) ; then 
     echo "Usage: $0 <file> <type> ... where type is udp or tcp" 
     exit 1 
fi 

# Sanity check if the file specified actually exists or not 
stat ${1} &> /dev/null 
if [ $? -ne 0 ] ; then 
     echo "File ${1} doesn't exist" 
     exit 2 
fi 

# Validate the type 
if [ "${2}" != "udp" -a "${2}" != "tcp" ] ; then 
     echo "Invalid type ${2}. Specify either udp or tcp." 
     exit 3 
fi 

echo "Src/Dst Port | Packets Count" 
tshark -nq -r ${1} -z endpoints,${2} | grep "^[1-9]" | tr -s ' ' | cut -s -d ' ' -f 2,3 | sort -n | gawk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}' 
+0

出力をポートではなくパケット数でソートする場合は、そのスクリプトの出力を "sort -nk2"にパイプすることができます。 –

+0

@Christoper Maynard、このスクリプトはまさに私が欲しいものです。本当にありがとう! –

関連する問題