![iptables または IFB を使用して、着信トラフィックをデバイス別にマークするにはどうすればよいですか?](https://rvso.com/image/652666/iptables%20%E3%81%BE%E3%81%9F%E3%81%AF%20IFB%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81%E7%9D%80%E4%BF%A1%E3%83%88%E3%83%A9%E3%83%95%E3%82%A3%E3%83%83%E3%82%AF%E3%82%92%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E5%88%A5%E3%81%AB%E3%83%9E%E3%83%BC%E3%82%AF%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
iptables を使用して、パケットが到着したデバイス (発信元の IP アドレスやポートなどではなく) に基づいて着信パケットをマークしようとしていますが、これを機能させる方法が見つかりません。
具体的には、すべての着信パケットをカウントするフィルターを設定できます (これは正常に動作します)。
iptables -F -t mangle
iptables -A PREROUTING -t mangle -j MARK --set-mark 1
iptables -nvL
Chain PREROUTING (policy ACCEPT 185 packets, 41507 bytes)
pkts bytes target prot opt in out source destination
185 41507 MARK all -- * * 0.0.0.0/0 0.0.0.0/0 MARK set 0x1
ただし、eth2 からのパケットのみをキャッチするフィルターはトリガーされないようです (すべてのトラフィックがまさにそこから来ているにもかかわらず)。
iptables -F -t mangle
iptables -A PREROUTING -t mangle -i eth2 -j MARK --set-mark 1
iptables -nvL
Chain PREROUTING (policy ACCEPT 101 packets, 19288 bytes)
pkts bytes target prot opt in out source destination
0 0 MARK all -- eth2 * 0.0.0.0/0 0.0.0.0/0 MARK set 0x1
オンラインのハウツーなどから、この動作は iptables の動作方法の論理的な結果である可能性が高いようです。また、これを回避するために、人々は IMQ (IMQ が廃止される前) の使用を試み、その後、代わりに IFB を使用するようになりました。しかし、そこではドキュメントの痕跡が完全に消えてしまったようです。
そこで私の質問は、IFB を使用することがこの問題を回避する正しい方法である場合、デバイスごとに着信トラフィックをマークする同等の IFB の方法はどのようになるでしょうか。
あるいは特定のインターフェースを介して入ってくるトラフィックを、一連の異なるレルムの 1 つとして分類する方法はありますか? たとえば、eth0 --> realm_10、eth1 --> realm_11 などです。このアプローチも機能するはずですが、これに関する実用的なドキュメントも (再び) まだ見つけていません。