web-dev-qa-db-ja.com

VirtualBox仮想マシン上のローカルサーバーにアクセスするにはどうすればよいですか?

これが私の設定です:

  • 自分のマシン(Mac OS、Snow Leopard)でローカルサーバーを実行しています。私は私のブラウザを介してそれにアクセスすることができます

    localhost:3000

  • Windows XPを実行しているVirtual Boxを使用した仮想マシンがあります。 localhost:3000を使用してアクセスしようとすると失敗します。 MacマシンのIPを使用する場合も同様です。

  • 仮想マシンはインターネットにアクセスできます。

仮想マシンのローカルサーバーにアクセスするにはどうすればよいですか?

9
marcgg

仮想マシンでネットワークをどのように設定していますか?

NATを使用して設定しているようです。この状況で、ホストマシン(Mac)に192.168.x.xなどのルーティング不可能な(プライベート)IPアドレスがある場合、仮想マシン内からホストにアクセスできません。ゲストからホストに到達できないのは、基本的に2つの個別のプライベートネットワークをセットアップしているためです。 Macコンピューターが1つ(192.168.xx)にあり、VMが別の(おそらく10.xxx)にある)場合、基本的にそれらの間にルーターがあります。ルーターはプライベートIPをルーティングしないため、ネットワークがそれぞれと直接通信することはありません。

ホストマシンとゲストマシンが通信できるようにする場合は、VirtualBoxネットワークアダプターを「ブリッジアダプター」に接続するようにセットアップすることをお勧めします。これにより、インターネット接続が仮想マシンと共有され、ゲストマシンがホストと通信できるようになります。この状況では、Macが既に存在するローカルネットワークに追加のノードとしてVMを追加しています。

16
heavyd

私はまったく同じ問題を抱えていましたが、Windows 7をゲストとして使用していました。

私がしたことは、スタート->ファイル名を指定して実行-> cmdで、コマンドラインを表示しました。

ipconfig接続の詳細を表示します。 10.x.x.xのようなアドレスを探してください。それはあなたのMacです。

次に、それを使用してMacのローカルサーバーに接続します。

私にとって、それは通常http://10.0.2.2:80/blah

1
Austin Hyde

VMのネットワーク設定によっては、VMと同じサブネット上にあるホストOSにIPを追加して通信できるようにする必要があります。あなたのvmはおそらく192.168.x.xアドレスを持っているので、Macマシンに同様のアドレスを追加してください:

たとえば、vmに192.168.1.99とサブネットマスク255.255.255.0がある場合、これをホストに対して実行できます。

ifconfig eth0:0 192.168.1.199ネットマスク255.255.255.0 up

おそらくアダプターも再始動する必要があります。

1
John T