我在iptables配置文件/ etc / sysconfig / iptables中有以下规则
- -A INPUT -s 84.23.99.97 -j DROP
当我做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
但是,如果我执行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,length 0
- ....
解决方法
tcpdump
sees inbound traffic before it hits iptables.在上面的示例中,这解释了为什么您看到来自机器的入站SYN而不是SYN / ACK.