たとえば、サーバーのTCPネットワーク接続ステータスは次のように表示されます。
[root @ huzhenwei〜] #netstat -nat
アクティブなインターネット接続(サーバーおよび確立済み)
Proto Recv- QSend -Qローカルアドレス外部アドレス状態 tcp0 0 0.0.0.0:10050 0.0.0.0:*
LISTEN
tcp 0 0 0.0.0.0 :554 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:1935 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8080 0.0.0.0:*聞く
TCP 0 0 0.0.0.0:3001 0.0.0.0:*はLISTEN
LISTEN 0 0 0.0.0.0:1947 0.0.0.0:* TCP
ESTABLISHED 0 0 172.16.6.93:80 172.16.6.93:51201 TCP
0 0 172.16.6.93:80 TCP 172.16.6.93:51202 ESTABLISHED
tcp 0 0 172.16.6.93:10050 172.16.3.112:32769 TIME_WAIT
tcp 0 0 172.16.6.93:51201 172.16.6.93:80 ESTABLISHED
tcp 0 0 172.16.6.93:51202 172.16.6.93:80 ESTABLISHED
tcp 0 1 172.16.6.93:53276 172.16.3.162:8080 SYN_SENT
tcp 0 0 ::: 22 ::: * LISTEN
tcp 0 844 :: ffff:172.16.6.93:22 :: ffff:172.16.1.36:56495 ESTABLISHED
統計コマンドと計算結果は次のとおりです。
[root @ huzhenwei〜] #netstat -nat | awk'FNR> 2 {print $ NF} '| 並べ替え| uniq -c
5 ESTABLISHED
9 LISTEN
1 TIME_WAIT
パラメータの説明:
netstat -nat パラメーターtは、tcp接続のみがリストされていることを示します
awk'FNR> 2 {print $ NF} ' FNRはこのレコードの行番号を表し、NFはこのレコードのフィールドの総数を表します
TCP接続ステータスの定義:
ESTABLISHED
ソケットの接続が確立されています。
SYN_SENT
ソケットはアクティブに接続を確立しようとしています。
SYN_RECV
ネットワークから接続要求を受信しました。
FIN_WAIT1
ソケットが閉じられ、接続がシャットダウンされています。
FIN_WAIT2
接続が閉じられ、ソケットはリモートエンドからのシャットダウンを待機しています。
TIME_WAIT
ソケットは、閉じた後、まだネットワーク内にあるパケットを処理するために待機しています。
CLOSEDソケットは使用されていません。
CLOSE_WAIT
リモートエンドがシャットダウンし、ソケットが閉じるのを待っています。
LAST_ACK
リモートエンドがシャットダウンし、ソケットが閉じています。確認を待っています。
LISTENソケットは着信接続をリッスンしています。
--listening(-l)または--all(-a)オプションを指定しない限り、このようなソケットは出力に含まれません。
CLOSING
両方のソケットがシャットダウンされましたが、まだすべてのデータが送信されていません。
UNKNOWN
ソケットの状態は不明です。