iptables:数据包不符合 INPUT 或 FORWARD 的匹配要求

iptables:数据包不符合 INPUT 或 FORWARD 的匹配要求

为什么通过 mangle PREROUTING 匹配的数据包却没有通过过滤器 INPUT 或过滤器 FORWARD 匹配?

从这个图表来看http://www.64-bit.de/dokumentationen/netzwerk/e/002/DE-IPTABLES-HOWTO-3.html,第 3.5 点,我认为每个数据包至少应该通过这两种方式之一。数据包也确实出现在 Wireshark 中。

我的三行 iptables 是:

iptables -t mangle -A PREROUTING -s 192.168.178.222 -d 192.168.178.28 -j LOG --log-prefix "iptables: "
iptables -t filter -A FORWARD -s 192.168.178.222 -d 192.168.178.28 -j LOG --log-prefix "iptables: "
iptables -t filter -A INPUT -s 192.168.178.222 -d 192.168.178.28 -j LOG --log-prefix "iptables: "

日志仅填充了第一条活动的规则,其他两条规则显然没有任何作用。

编辑:有趣的是,当使用 mangle 的 FORWARD 和 INPUT 时,它会按预期工作。过滤表有什么特殊之处阻止它工作吗?
此外,使用 mangle 时,它​​们会同时通过 FORWARD 和 INPUT,这让我更加困惑。

编辑:输出iptables -L -v -n

Chain INPUT (policy ACCEPT 5 packets, 280 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 LOG        all  --  *      *       192.168.178.222      192.168.178.28       LOG flags 0 level 4 prefix "iptables: "

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 LOG        all  --  *      *       192.168.178.222      192.168.178.28       LOG flags 0 level 4 prefix "iptables: "

Chain OUTPUT (policy ACCEPT 2 packets, 100 bytes)
 pkts bytes target     prot opt in     out     source               destination         

只有前两个规则处于活动状态(这种方式不起作用,但应该可以工作)。
另外要注意的是,显示的两个 IP 都不是运行 iptables 的计算机,尽管如此,由于中间人攻击,数据包还是会通过它。

相关内容