- - PR -
ポート開放の手段について
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-03-05 21:23
「1万個のsokectをlistenする」って、簡単に実現できるものですか?
「1個のプロセスが10000個のsocketをopenする」 「10000個のプロセスが、1個づつsocketをopenする」 のどちらのアプローチをとっても、システムのリソース制限に引っかかりそうです。 自宅にlinux環境がないのですぐに試せないのですが、 実際にやってみた方はおられませんか? | ||||
|
投稿日時: 2006-03-05 22:33
おっと、確かに。 手元の CentOS 4.1 でメモリ256MBの環境だと、デフォルトではulimit で open files が1024に制限されているのでひっかかりますね。 ulimit -n で拡張すればO.K. 前者の方法でやりましたが、ulimit -n 以外には何も設定等の必要は ありませんでした。 追記。 TCP接続のバックログが溜まり過ぎても制限にひっかかるので、 やっぱりaccept(2)してclose(2)しといたほうがいいですね。 [ メッセージ編集済み 編集者: ぽんす 編集日時 2006-03-05 22:51 ] | ||||
|
投稿日時: 2006-03-06 23:05
逆に検証機1の1-9999までのポートを、iptableで閉じて
ログからアクセスの検証するってのは、だめでしょうか? ルータのフィルタ検証なので、いいかなって思うのですが。 iptableの設定は、↓に載ってます http://www.atmarkit.co.jp/flinux/index/indexfiles/iptablesindex.html | ||||
|
投稿日時: 2006-03-06 23:38
なるほど、その程度のことで済むのですか。 それなら、「簡単に」と言っても大丈夫ですね。 コンフィグパラメータを書き換えてカーネルの再コンパイル、 といった作業が必要になるのではと不安だったもので、横から茶々をいれてしまいました。 | ||||
|
投稿日時: 2006-03-07 07:54
listenせずにパケットキャプチャだけするのと同じで、微妙なところです。 検証機1向きのSYNを通すことは確認できますが、TCP接続が確立するか どうかは見ていないので。 |