この記事について
| 環境 | linux |
|---|---|
| 目的 | どのIPアドレスが何本サーバーに接続しているか調べる |
| 結果 | netstat + awk + uniq のワンライナーで出せた |
ipアドレス別でサーバーに接続している数を調べるコマンド
netstat -tan | awk '{print $5}' | cut -d : -f1 | sort -n | uniq -c | sort -n
オプションの説明
a → すべてのネットワーク接続を表示する
n → DSN逆引きを行わない(ipアドレスで表示)
t → TCPのみを表示する
awk ‘{print $5}’ → 5フィールド目を取り出す
cut -d : -f1 → デリミタ(区切り文字)「:」を指定。フィールド1を取り出す
sort -n → データを文字ではなく、数値として並び変える。次のuniq が隣り合った行しか比較しないので必要
uniq -c → 各行の前に出現回数を出力する。隣り合った行しか比較しない
sort -n → データを文字ではなく、数値として並び変える。出現回数順に並べ替える
