Eine iptables PREROUTING-Regel funktioniert nicht, während die andere funktioniert

Eine iptables PREROUTING-Regel funktioniert nicht, während die andere funktioniert

Ich habe ein Linux-Gerät mit zwei Iptables-Regeln darin. Und die Verhaltensweisen sind interessant.

root@xxx:~# iptables -t nat -nvL PREROUTING
Chain PREROUTING (policy ACCEPT 4 packets, 812 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REDIRECT   udp  --  *      *       10.20.40.10          0.0.0.0/0            udp dpt:514 redir ports 5633
    0     0 REDIRECT   udp  --  *      *       10.20.40.15          0.0.0.0/0            udp dpt:514 redir ports 5634

Wir haben bereits eine rsyslog-Anwendung, die auf 514 lauscht, und wir denken, dass iptables vor rsyslog wirksam werden sollte. Aber das Ergebnis war unerwartet. Für Regel 1 (10.20.40.10) können wir bestätigen, dass sie funktioniert, um das Paket von 514 auf 5633 umzuleiten, da unsere Anwendung auf 5633 es erhalten hat. Aber für Regel 2 (10.20.40.10) funktioniert sie nicht. Das Paket geht direkt an die Anwendung auf 514.

wir planen, rsyslog herunterzufahren und einen Blick darauf zu werfen.

Gibt es noch andere gute Möglichkeiten oder Tools zur Behebung dieser Art von Problemen? Ich möchte wirklich den Paketfluss wissen. Danke!

verwandte Informationen