我正在尝试使用 iptables 计数器和 munin 来监控本地子网上主机的流量。对于每个主机,我设置了一条规则,如下所示:
iptables -I OUTPUT -d $ip
这应该计算从防火墙到 $ip 的数据包,对吗?
我发现这似乎没有计算所有数据包。我在路由器 (Linux) 上启动 tcpdump,发现发送到 $ip 的数据包没有被计算在内。
例如,我检查发往我手机 IP 的规则数据包数量。我启动 tcpdump,刷新手机上的 Gmail,我在 tcpdump 的输出中看到数据包,但 iptables 规则计数器没有增加。然后我在同一部手机上打开一个网页,计数器增加了。
可能是什么原因?
答案1
该OUTPUT
链由防火墙本身输出的数据包使用。
您要使用的链是FORWARD
,它由防火墙转发的数据包使用。