MACとebtablesを使用してIPスプーフィングを防ぐ方法は?
ebtablesでIP-MACペアリングルールを作成しようとしています。いくつかのチュートリアルと関連する質問[1]がありますが、私は特定の設定をしています。 環境: 私は多くの物理ホストを持っています。各ホストにはいくつかのイーサネットカードがあり、結合で結合され、ブリッジのスレーブとして使用されます。各ホスト(kvm、qemu、libvirt)には多くの仮想マシンがあります。各仮想マシンは、vnet [0-9] +と呼ばれる新しいポートを介して物理ホストのブリッジに接続されます。NATはありません。ネットワークは正常に機能し、すべての物理ホスト、すべての仮想マシンにpingを実行できます。各仮想マシンには、独自のIPアドレスとMACアドレスがあります。 問題:仮想マシン内で、IPアドレスを別のアドレスに変更できます。 見つかった解決策: ebtablesサイト[2]には既知の解決策がありますが、この解決策は1つのホストのみが使用されている場合に適用できます。すべてのトラフィックを許可し、許可されていないMACを持つIPからのパケットがある場合、パケットはドロップされます。複数のホストがある場合は、すべての既存のIP-MACペアをすべてのホストに登録する必要があります。逆ポリシーソリューションが必要です。 CRAFTED SOLUTION: ebtablesを逆に使用しようとしました。これが私が試した例です。 例1 Bridge table: filter Bridge chain: INPUT, entries: 2, policy: DROP -i bond0 -j ACCEPT -p IPv4 -s 54:52:0:98:d7:b6 --ip-src 192.168.11.122 -j ACCEPT Bridge chain: FORWARD, entries: 0, policy: ACCEPT Bridge chain: OUTPUT, entries: 0, policy: ACCEPT 例2 Bridge …