我有一个包含 3 个区域的 Linux 防火墙设置:
- 绿色代表 LAN(192.168.0.0/24)
- 蓝色代表 WLAN(192.168.1.0/24)
- 橙色代表 DMZ(192.168.2.0/24)
所有区域都有系统在运行,我想知道每个系统产生的外部流量是多少。进行一些测试时,肯定存在一些内部流量,因为外部设备上的 vnstat 显示不同的流量帐户。
经过一些研究,我最终得到了类似这样的结果(例如,一个内部 IP 且仅用于上传):
/sbin/iptables -N TRAFFICFILTERUP
/sbin/iptables -I OUTPUT -j TRAFFICFILTERUP
/sbin/iptables -A TRAFFICFILTERUP -d 127.0.0.0/8 -j RETURN
/sbin/iptables -A TRAFFICFILTERUP -d 192.168.0.0/24 -j RETURN
/sbin/iptables -A TRAFFICFILTERUP -d 192.168.1.0/24 -j RETURN
/sbin/iptables -A TRAFFICFILTERUP -d 192.168.2.0/24 -j RETURN
/sbin/iptables -A TRAFFICFILTERUP -j LOG
/sbin/iptables -N TRAFFICUP
/sbin/iptables -A TRAFFICFILTERUP -j TRAFFICUP
/sbin/iptables -A TRAFFICUP -s 192.168.2.1
结果:
iptables -L TRAFFICUP -nvx
Chain TRAFFICUP (1 references)
pkts bytes target prot opt in out source destination
0 0 all -- * * 192.168.2.1 0.0.0.0/0
iptables -L TRAFFICFILTERUP -nvx
Chain TRAFFICFILTERUP (1 references)
pkts bytes target prot opt in out source destination
0 0 RETURN all -- * * 0.0.0.0/0 127.0.0.0/8
0 0 RETURN all -- * * 0.0.0.0/0 192.168.0.0/24
0 0 RETURN all -- * * 0.0.0.0/0 192.168.1.0/24
1349 271065 RETURN all -- * * 0.0.0.0/0 192.168.2.0/24
402 171503 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4
401 171249 TRAFFICUP all -- * * 0.0.0.0/0 0.0.0.0/0
为什么 TRAFFICUP 中没有流量?有什么建议吗?还是整个方法都是错的?
答案1
/sbin/iptables -I OUTPUT -j TRAFFICFILTERUP
应该
/sbin/iptables -I FORWARD -j TRAFFICFILTERUP