使用 iptables DROP 目标是否会导致 TCP CLOSE_WAIT 永远无法完成?

使用 iptables DROP 目标是否会导致 TCP CLOSE_WAIT 永远无法完成?

我有一些简单的规则来阻止黑客/垃圾邮件发送者经常使用的某些 IP 块,例如:

iptables -A INPUT -s 173.208.250.0/24 -j DROP

但是,我注意到 apache 在几天后挂起,并且 netstat 输出中显示许多 CLOSE_WAIT,并且永远不会消失:

\# netstat -atlpn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        1      0 ::ffff:10.0.0.107:80        ::ffff:63.141.243.26:50813  CLOSE_WAIT  29125/httpd

这可能是由于在规则中指定了 DROP 目标导致的吗?我应该改用 REJECT 吗?

答案1

不是。这意味着远端已经关闭了连接,但本地尚未关闭。

丢弃来自某个源的所有流量意味着将不会建立从那里到该源的连接。

相关内容