0

私はネットマップ対応のセットアップに取り組んでいます (高性能ブリッジ ファイアウォール)。

問題は、netmap のブリッジング ツールを使用して em0 と em1 をブリッジし、ipfw ルールを設定して 1 つの em0 である種のトラフィックをブロックする場合、機能しますか?

カーネル ブリッジングは ipfw で正常に動作しますが、低速です (ネットマップが有効になっていません)。私の心配は、それがファイアウォール ルールを一周するかどうかです。実装を見てみると、em0 がパケットを受信しただけで、パケット フィルタリングについては何もしません。すぐにem1に転送されます

netmap ブリッジ ツールはbridge.c です。

4

1 に答える 1

0

https://www.freebsd.org/cgi/man.cgi?query=netmap&sektion=4

NIC がネットマップ モードになっている間、OS はインターフェイスが稼働中であると認識します。OS が生成したその NIC のパケットは最終的に netmap リングになり、OS ネットワーク スタックにパケットを送信するために別のリングが使用されます。ファイル記述子の close(2) はバインディングを削除し、NIC を通常モードに戻す (データ パスをホスト スタックに再接続する) か、仮想ポートを破棄します。

 NICs without native support can still be used in netmap mode through emu-
 lation. Performance is inferior to native netmap mode but still signifi-
 cantly higher than sockets, and approaching that of in-kernel solutions
 such as Linux's pktgen.

PS:

ng_ipfw + ng_bridgeでブリッジングとフィルタリングを行うことができます- これは高速なカーネルベースのソリューションです

于 2016-04-29T16:26:30.037 に答える