TCP/IP の Linux での設定
メモ
ローカルポートの範囲
/proc/sys/net/ipv4/ip_local_port_range外に向かう接続における、ローカルポートの範囲。
あまり知られていない設定
実際のデフォルトは極めて小さく、1024 から 4999 です。
TIME_WAIT の制御
tcp_max_tw_buckets (integer; default: 下記)
システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在するのは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォルト値は NR_FILE*2 で、システムのメモリに応じて調整される。 この数値を越えると、そのようなソケットはクローズされ、警告が表示される。
tcp_tw_recycle (Boolean; default: disabled)
TIME_WAIT ソケットの素早い再利用を有効にする。
このオプションを有効にすると、
NAT (ネットワークアドレス変換) を用いていると問題が生じるので、
あまり推奨しない。
tcp_tw_reuse (Boolean; default: disabled)
プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT
Manpage of TCP
状態のソケットを再利用することを許可する。技術的に詳しい人の助言や
要請なしにこのオプションを変更すべきではない。
手元の Ubuntu 8.10 では、(デフォ)
% cat /proc/sys/net/ipv4/ip_local_port_range
32768 61000
% cat /proc/sys/net/ipv4/tcp_max_tw_buckets
180000
% cat /proc/sys/net/ipv4/tcp_tw_reuse
0
% cat /proc/sys/net/ipv4/tcp_tw_recycle
0
TIME_WAIT の状態にある時間間隔は指定できないのだろうか?