VirtualBoxゲスト間のトラフィックがtcpdumpに表示されない


9

CentOS 6を実行する4つのVirtualBoxゲストを使用してテスト環境をセットアップしました。それぞれに、ブリッジされたアダプターに接続された1つのネットワークデバイスがあり、これは私のPC上のプライマリネットワーク接続であり、静的IPアドレス(192.168.2.95-98の範囲)でアクセスできますネットワーク上の任意のデバイス。

場合によっては、何らかの理由でパケットを分析できる必要があります。最初は、ルータにSSH接続し、tcpdumpを使用してゲストからのすべてのパケットをキャプチャしました。まあ、それは計画通りに機能していません...

tcpdumpを使用して表示される唯一のパケットは、98とゲスト以外のネットワーク上の他のデバイス間のトラフィックです。98は、(SSHトラフィック以外の)ネットワーク上の他のデバイスと通信する唯一のゲストです。残りは他のゲストと通信します。

ゲストのIPアドレスごとに、ホストによるtcpdumpのフィルタリングを開始しました。私はそれをすべて捨てることに至るまでずっとそれを取り除くことになりました。すべてのパケットが私のPCのネットワークアダプターを通過するため、そのカードのすべてのパケットをキャプチャしましたが、まだ成功しません!

VirtualBoxは、ブリッジネットワーキングを使用するときに、アダプター上のパケットをマングル、挿入、および削除します。パケットが別のゲストに送信される場合、VirtualBoxはパケットを保持して適切なゲストに転送しますか?もしそうなら、どうすればそれらのパケットをキャプチャできますか?


ホストコンピュータはどのOSですか?
強化

また、ホスト上のtcpdump(または他のパケットスニファ)はトラフィックを表示しますか?私はあなたのホストOS / VirtualBoxが十分にスマートで、実際にルーターにパケットを送信しないので、同じインターフェースでパケットが戻ってくると思います。
Goyuix

@heavyd -それはWindows 7のだ
ローガンビビー

@Goyuix-そのため、カード上のすべてのパケットをキャプチャしました。それは私のルーターからのダンプと同じことを示しています。パケットが保持されている場合、どこで見つけることができますか?
Logan Bibby

回答:


6

VirtualBoxのブリッジネットワークモードを使用すると、VirtualBoxはホストコンピューターの物理インターフェイスと仮想ネットワーク間の仮想スイッチのように機能します。仮想ネットワーク上のコンピューター間を移動するパケットは、tcpdumpがパケットを取得できるホストネットワークスタックのポイントに到達しないため、ホストからのトラフィックを確認できません。

VirtualBoxの組み込みネットワークトレース機能を使用してみてください。これはデバッグツールですが、pcapファイルを生成し、セットアップが簡単に組み込まれています。ネットワークトレースを有効にするには、VBoxManageコマンドラインと--nictrace*オプションを使用します。

VBoxManage modifyvm [your-vm] --nictrace[adapter-number] on --nictracefile[adapter-number] file.pcap

試してみたところ、魅力のように機能しました。これで十分です!私はこれを10回賛成できるといいのですが...この問題がどれだけ長く私を悩ませているのか、あなたにはわかりません。
Logan Bibby

1
ゲスト内でtcpdump -ing を実行してもVM間のトラフィックがキャプチャされないのはなぜですか?ホストIPスタックについてはあまり気にしません。むしろtcpdump、ゲストOSで正しく実行されることを期待しています。表面的には、ゲストネットワークスタックはおそらく通常どおり動作しているはずなので、これは当然の予想です。では、何が問題なのでしょうか。
ulidtko 2016年

@ulidtko OS-es、バージョン、ネットワーク構成など、具体的な詳細情報で新しい質問を作成することをお勧めします。
16年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.