Die Anzahl der IPTables-Pakete in der INPUT-Kette stimmt nicht mit der Unterkette überein

Die Anzahl der IPTables-Pakete in der INPUT-Kette stimmt nicht mit der Unterkette überein

Der Einfachheit halber habe ich auf meinem Server drei Regeln:

iptables -t mangle -N RATE-LIMIT
iptables -t mangle -A RATE-LIMIT -m hashlimit --hashlimit-mode srcip --hashlimit-upto 100/sec --hashlimit-burst 20 --hashlimit-name conn_rate_limit -j RETURN
iptables -t mangle -A RATE-LIMIT -j DROP
iptables -t mangle -A INPUT -p tcp --dport 25565 ! -i lo -j RATE-LIMIT

Bei mir funktioniert es wie es soll, aber ich wundere mich über die folgende ausführliche Ausgabe:

Chain INPUT (policy ACCEPT 11M packets, 921M bytes)
 pkts bytes target     prot opt in     out     source               destination
5699K  264M RATE-LIMIT  tcp  --  !lo    *       0.0.0.0/0            0.0.0.0/0            tcp dpt:25565

...

Chain RATE-LIMIT (1 references)
 pkts bytes target     prot opt in     out     source               destination
3060K  158M RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            limit: up to 100/sec burst 20 mode srcip
84990 3882K DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0

Die erste Regel trifft auf jedes Paket zu, das weniger als 100 pps von einer bestimmten Quell-IP entfernt ist. Wenn es darunter liegt, sollte es dorthin RETURNzurückkehren INPUTund dort fortfahren. Die zweite Regel verwirft einfach jedes Paket, das über diesem Grenzwert liegt, und sollte grundsätzlich als Standardrichtlinie für diese Kette fungieren.

In der INPUTKette sind etwa 5.700.000 Pakete, die in meine RATE-LIMITKette gesprungen sind. Wenn ich aber beide Regeln in meiner RATE-LIMITKette zusammenzähle, erhalte ich eine viel kleinere Zahl. Meines Wissens nach sollten sie zusammen 5.700.000 ergeben.

Warum sind diese beiden Zahlen nicht gleich?

verwandte Informationen