root@linux #iptables -L -nv
输出如下
Chain INPUT (policy ACCEPT 89658 packets, 116M bytes)
pkts bytes target prot opt in out source destination
122K 97M ACCEPT all -- * * 192.168.43.104 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 70753 packets, 70M bytes)
pkts bytes target prot opt in out source destination
141K 61M ACCEPT all -- * * 0.0.0.0/0 192.168.43.104
和 该线以下之间有什么关系Chain INPUT (policy ACCEPT 89658 packets, 116M bytes)
。并且Chain OUTPUT (policy ACCEPT 70753 packets, 70M bytes)
它在该线以下。
我很困惑 70753 个数据包和 141K 个数据包以及 70M 和 61M 是什么意思
答案1
在第一行中,您可以看到具有默认策略 ACCEPT 的该链的全局统计信息,这意味着您拥有整个连接的统计信息,然后获得与该规则匹配的数据包的具体统计信息。
答案2
在 iptables 链中,检查规则从上到下。与第一条规则不匹配的数据包将根据第二条规则进行测试,然后根据第三条规则进行测试,依此类推。内置链有一个所谓的“策略”,您可以将其想象为链最底部的虚拟规则 - 如果数据包与任何自定义规则都不匹配,那么它将在末尾命中策略规则。
例如,INPUT 链具有:
- 与源 IP 地址匹配的自定义 ACCEPT 规则(迄今为止匹配了 122K 个数据包);
- 默认的 ACCEPT“策略”规则与所有内容匹配(迄今为止匹配了 89.6K 个数据包)。
(这也意味着防火墙张大– 即使数据包与自定义 IP 规则不匹配,策略规则仍会允许它们。可能应该将其更改为 DROP?)