欲しいもの:
さまざまなWeb開発テストサーバー用に(VirtualBox上で)Ubuntuを実行している仮想マシンゲストが必要です(たとえば、Grunt.jsがポート9000で実行されているなど、さまざまなポートで実行されています)。
私は最初、NATとホスト専用アダプターの両方をVirtualBoxで構成したソリューションを実行していました。これは、ホストからゲストにアクセスしたり、ゲスト内からインターネットにアクセスしたりするのに適していました。 。
他のデバイスが仮想マシンにアクセスできるようにしたいので、このソリューションは機能しなくなりました。私はこの数年前にブリッジネットワークアダプタを使用して実行できましたが、ここでは機能しないようです。
私がしたこと:
ブリッジネットワークをVirtualBoxの唯一のネットワークアダプターとして設定し、デフォルト設定のままにしました。ゲストを起動すると、右上のWiFi記号が点滅し続けます。つまり、矢印が表示されません。しばらくすると、「切断されました-現在オフラインです」と表示されます。これはifconfig
の出力です。
eth0 Link encap:Ethernet HWaddr 08:00:27:71:92:9c
inet6 addr: fe80::a00:27ff:fe71:929c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:233 errors:0 dropped:0 overruns:0 frame:0
TX packets:103 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:16083 (16.0 KB) TX bytes:22280 (22.2 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:32 errors:0 dropped:0 overruns:0 frame:0
TX packets:32 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2624 (2.6 KB) TX bytes:2624 (2.6 KB)
ご覧のとおり、inet4アドレスはありません。したがって、ゲスト内からホストにpingを実行することはできません。その逆も同様です。
私も試しました this 、つまりMACアドレスを変更して実行しました
Sudo rm -rf /etc/udev/rules.d/70-persistent-net.rules
Sudo reboot
何も変更しませんでした。
これをデバッグするために他に何ができますか? DHCPの問題だと思います。ホストやネットワーク内の他のマシンでIPを簡単に取得できますが、ゲストでは取得できません。
これはVirtualBoxで実行できます。最近、同じ構成を実行しています。Windows7ホスト、Arch Linuxゲスト、wifi付きのラップトップです。あなたが言ったように、それはゲストにブリッジネットワークを与えるときです。仮想カードにもvirtioドライバーを選択しましたが、それが目前のトピックに関連しているとは思えません。
ゲストは、ホストがたまたま接続しているルーターからIPを取得し、シームレスに機能していて、非常に印象的だと思います。 Xen Hostで同じことを達成しようとしましたが、できませんでした。つまり、これはVirtualBoxドライバーの魔法によるものであり、唯一の公開説明はここにあります: http://www.virtualbox.org/manual/ch06.html#network_bridged 。
ほとんどのワイヤレスアダプタはプロミスキャスモードをサポートしていないため、ワイヤレスインターフェイスへのブリッジングは有線インターフェイスへのブリッジングとは異なる方法で行われます。すべてのトラフィックはホストのワイヤレスアダプターのMACアドレスを使用する必要があるため、VirtualBoxは、応答がホストインターフェイスに送信されるように、発信パケットのイーサネットヘッダーの送信元MACアドレスを置き換える必要があります。 [...]VirtualBoxは、仮想マシンのIPアドレスを学習するためにARPパケットとDHCPパケットを調べます。
このドライバ拡張機能は、「Oracle VM VirtualBox Extension Pack」に記載されていないため、オープンソースである必要がありますが、ドキュメントを見つけるのはかなり困難です。残念ながら、トラブルシューティングの方法がわかりません。 、しかし私はしようとします:
また、ルーターが自分のものである場合は、そのログを見て、少なくともゲストから一時的な接続を取得しているかどうかを確認できます。
編集:あなたはそれが別のルーター/アクセスポイントで動作しているとコメントしましたか?この場合、一部のルーターが同じMACアドレスに複数のIPを割り当てることを拒否する可能性があります。ルーターの各IPのMACが同じであるかどうかを確認するために、マシンがもうないのは残念ですが、そうなるはずです。
IEEE 802.11標準では、APが不明なMACアドレスからのパケットを拒否する必要があります。 APがクライアントからのデータパケットを受け入れる前に、クライアントは最初に802.11認証と関連付けを行う必要があります。したがって、「ブリッジモード」がVMまたはゲストOSが同じ無線カードを介して2番目のMACアドレスを使用しようとしていることを意味する場合、2番目のMACアドレスが802.11認証および関連付けを取得していることを確認する必要があります。それ以外の場合、APは2番目のMACアドレスからのパケットを無視する必要があります。
VirtualBoxがこの問題をどのように処理するかについてのドキュメントはありますか?これは、解決された(そして、それがどのように対処されたかについての文書が必要である)よく知られた問題であるか、「Wi-Fiを介したブリッジモードはサポートされていない」ことを十分に文書化する必要があります。