ここから本文です

netstat -anで大量にESTABLISHEDやTIME_WAITになっている通信を速やかに切断するに...

hiandeiさん

2010/12/1318:12:51

netstat -anで大量にESTABLISHEDやTIME_WAITになっている通信を速やかに切断するにはどうすればいいですか?

abとか接続数制限のテストをすると、apache,tomcat,oracleなどに対する大量のESTABLISHEDやTIME_WAITの通信がしばらくのこってしまいます。tomcatやhttpdや関係するプロセスを止めればいいんだと思いますが、どのプロセスを止めれば通信が切れるか判断するにはどうすればよいですか?

閲覧数:
35,838
回答数:
1

違反報告

ベストアンサーに選ばれた回答

2010/12/1319:52:15

-p オプションを使ってみてください。

-p, --program
Show the PID and name of the program to which each socket belongs.

(例)
# netstat -antup
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1952/xinetd
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 59109/master


すると、PIDが分かりますので、そのプロセスにかかわっていると分かります。

ESTABLISHEDの場合は、PID/Programが表示されますが、TIME_WAITの場合などは表示されません。
この「TIME_WAIT」の状態はプロセスをkillしても、networkサービスを再起動しても残ります。

TIME_WAITは初期状態で60秒です。

# sysctl -n net.ipv4.tcp_fin_timeout
60

変更すれば(直接or/etc/sysctl.confに記載)TIME_WAITの時間を短く出来ます。

"TIME_WAIT" 状態というのは TCP コネクションにおいて、こちら側から通信をした場合に "FIN_WAIT_1" (FIN ACK 受信) から、"FIN_WAIT_2" (ACK 受信) または "CLOSING" (FIN 受信, ACK 送信)を経て、コネクションを閉じられる状態となったことを示すもののようです

質問した人からのコメント

2010/12/15 15:41:27

感謝 いつもありがとうございます^^

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

5文字以上入力してください

Q&Aをキーワードで検索:

Yahoo!知恵袋カテゴリ

一覧を見る

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。