奇妙な問題が発生しました。net.ipv4.tcp_syncookies
ゼロに設定されています。しかし、/var/log/messagesに次の警告が残っています。
TCP: Possible SYN flooding on port 80. Dropping request.
sysctl -a | grep cooki
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_cookie_size = 0
=========================================
net.ipv4.tcp_max_syn_backlog=500000
=========================================
iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
=========================================
Centos 6.2 64bit
Linux 3.0.0+ #1 SMP Fri Oct 26 07:55:47 EEST 2012 x86_64 x86_64 x86_64 GNU/Linux
/var/log/メッセージ
net_ratelimit: 6168 callbacks suppressed
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
TCP: Possible SYN flooding on port 80. Dropping request.
答え1
各アプリケーションは、ポートをリッスンするために listen 呼び出しを行うときに、バックログ パラメータを渡します。アプリケーションの接続要求の処理が遅い場合、少し誤解を招くようなメッセージが表示されることがあります。このパラメータは、ポートごとの tcp_max_syn_backlog のようなものです。