VirtualBox仮想マシン上のローカルサーバーにアクセスする方法


9

これが私の設定です:

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

    localhost:3000

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

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

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


仮想マシンの「localhost」にアクセスしようとすると、macosxサーバーではなく、それ自体に接続しようとします。今までの答えはその点を逃したと思います
ブランドスタッター09/11/24

1
私はこれがあると、古いスレッドが、ここで知っている回答 stackoverflow.com/questions/1261975/...
deiga

回答:


16

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

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

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


「Bridged Adapter」では、ホストとゲストの両方が同じサブネット(つまり、192.168.xx)の下にIPアドレスを持っていますか?
kdbanman

@kdbanman、正しい(ホストネットワークがDHCPを使用している場合)、VMはホストネットワーク上の別のマシンとして表示されます。
15年

これは、VMを設定するより自然な方法のようです。なぜNATとは別のプライベートネットワークを使用するのですか?セキュリティ?
kdbanman

1
はい、NATは分離を提供します。また、一部のネットワークでは、どのホストにも接続を許可しないため、NATを使用すると、VMがホストのインターフェースを介してネットワークリソースにアクセスできるようになります。これは、この理由でデフォルトとしても使用され、エラーが発生しにくい設定ですが、ほとんどの状況でブリッジを好むことに同意します。
15年

1

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

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

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

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


1

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

私がしたことは、スタート->実行-> cmdコマンドラインを表示することでした。

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

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

私にとって、それは通常のようなものです http://10.0.2.2:80/blah

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.