1

VirtualBox 内の仮想マシン用に構成して、送受信パケットをインターセプトできる独自の仮想ネットワーク カード ドライバー/プラグインを作成したいと考えています。http://download.virtualbox.org/virtualbox/SDKRef.pdf
で VirtualBox の SDK のドキュメントを見つけましたが、残念ながら、リモート API を使用して VM を制御する方法しか説明されておらず、VM 用のカスタム ドライバーやプラグインを作成する方法は説明されていません。自体。

このトピックに関するドキュメントやチュートリアルを知っていますか?
すべてのポインターは非常に高く評価されています。

更新:
VirtualBox のソースを参照したところ、以下が見つかりました: https://www.virtualbox.org/browser/vbox/trunk/src/VBox/Devices/Network/DrvNetSniffer.cpp
そのような機能を記述するための文書化されたインターフェイスはありませんプラグ可能な方法で?

4

1 に答える 1

0

VMM (「仮想マシン モニター」または「ハイパーバイザー」) でのネットワーク処理は、通常、VM に対するネットワーク カードのように「ふり」、ホストのネットワーク接続に対するブリッジまたはスイッチ タイプのインターフェイスである単純なインターフェイスによって行われます。 .

それに簡単にアタッチすることはできないと思いますし、それに「SDK」インターフェースがないことはほぼ確実です-私はVirtualBoxで作業したことはありませんが、Xen Hypervisor(オープンソースですが、その場合、意味のある方法でパケットを傍受するための簡単なインターフェースはありません)。

おそらく最善の策は、VMM が提供するブリッジまたはスイッチ インターフェイスのホスト側にこれを実装することです。ほとんどの OS には、ファイアウォールの目的でネイティブ側のネットワーク フローにフックする方法があります。

(SDK ドキュメントがダウンロードされるのをまだ待っています。この投稿を書き始めてから 40 KB を受け取ったので、サーバーは濡れた紐でインターネットに接続されている必要があると思います)

于 2013-08-01T10:36:33.883 に答える