Linux netfilter/iptables 相互作用に関する具体的な質問があります。別のIPパケットP2内にIPパケットP1があると仮定します(つまり、P1がトンネリングされます)。
これで、質問は「外部」パケットP2の特定のヘッダーフィールド(MACソースアドレスなど)を確認してから、「内部」パケットP1をそのiptablesチェーンに基づいて特定のiptablesチェーンに送信することは可能ですか?確認すべき部分は?
小さな例:FORWARDテーブルにC1からC3までの3つのチェーンがあるとします。 P2のMACソースアドレス値が17の場合、「内部」パケットP1をC1に送信したいと思います。 MAC ソースアドレスが 28 の場合、P1 を C2 に送信したいと思います。それ以外の場合は、P2をC3に送信したいと思います。
これがiptablesで可能かどうかはわかりません。たぶん、いくつかのCコードを特定のnetfilterフックに接続してこれを達成することができます。
私はこれがいくつかの奇妙なユースケースであることを知っていますが、私は気になるだけです。
よろしくお願いします!