ero*_*ppa 4 networking linux ip iptables tcp
我在我们的 iptables 配置文件 /etc/sysconfig/iptables 中有以下规则
-A INPUT -s 84.23.99.97 -j DROP
Run Code Online (Sandbox Code Playgroud)
当我做 iptables --list 时,我得到以下信息
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP all -- 84.23.99.97 anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Run Code Online (Sandbox Code Playgroud)
但是,如果我执行 tcpdump 我仍然可以看到来自这个 ip 的所有这些流量,为什么?
tcpdump -ttttn tcp port 1234 | grep 84.23.99.97
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
2010-10-21 23:49:33.828011 IP 84.23.99.97.9061 > myip: Flags [S], seq 3522466008, win 65535, options [mss 1460,sackOK,eol], length 0
2010-10-21 23:49:33.832182 IP 84.23.99.97.64804 > myip: Flags [S], seq 1088176500, win 65535, options [mss 1460,sackOK,eol], length 0
....
Run Code Online (Sandbox Code Playgroud)
tcpdump在到达 iptables 之前看到入站流量。在上面的示例中,这解释了为什么您会看到入站 SYN 而不是来自您的机器的 SYN/ACK。