ホストOS上のローカルサーバーにアクセスするVirtualBoxゲストOS


107

Ubuntuホストには、ローカルWebサーバーがあります。VirtualBoxとDebianをゲストとしてインストールしました。

Debianホストで、Ubuntuホストで実行されているWebサーバーにアクセスできるようにしたいと思います(たとえば、http://localhost:8080/Debianの下にブラウザを入力するだけです)。

これをどのように行うことができますか?

回答:


176

1つのネットワークアダプターを有効にします。NATに設定し、マシンを起動します。何も設定する必要はありません。

ゲストマシンのブラウザでhttp://10.0.2.2と入力すると、ホストOSの「localhost」と同じコンテンツが表示されます。

10.0.2.2はNAT接続の「デフォルトゲートウェイ」であり、ゲストOSのIPは10.0.2.15です

もちろん、「HOST-ONLY」または「Internal Network」を設定して、別の高度な設定を行うことができます。NATを使用することをお勧めします。

楽しい

M.


1
「1つのネットワークアダプタを有効にする」。これはどこで行われますか?
jshen

1
注:ホストマシン上のApacheに設定した名前ベースのバーチャルホストを持っている場合は、ファイルのために、ゲストのマシンのホストに簡単にマッピングを作成することによって、それらにアクセスすることができます10.0.2.2 yourvirtualhostname.local (or whatever)
ユーザー

@User最後のコメントが機能すると確信していますか?VBホストに仮想ホストがに設定されており、VBゲスト上の任意のホストにhttp://example.devマッピング10.0.2.2しても、アクセスできません。
ТомицаКораћ

1
@ТомицаКораћそれは動作します。たとえば、askubuntu.com / questions / 36183 / …を参照してください。ただし、これを解決するには、おそらく別の質問を開く必要があります。
ユーザー

1
「1つのネットワークアダプターを有効にする」とは、仮想マシンのネットワーク設定(VirtualBox内)で1つのアダプターのみを有効にすることを意味します。最初に読んだときに少し混乱しました。
マルケス

5

また、10.0.2.2のIPアドレスを使用する場合の注意点は、たとえばMAMPを使用している場合、ポート番号:8888を追加して、完全なアドレスが読み取られるようにすることです。 http://10.0.2.2:8888


3

VirtualBox Guestマシンへの中断のないアクセスを許可する最も簡単な方法は、LANのeth0への「ブリッジ」としてネットワークデバイスを設定することです。

ゲストマシンは、ルーターからDHCP経由でLAN IPを取得します。


明確にするために:これはクライアントアプリの設定です。それは私にとってはうまくいきました。IPアドレスとポートをアドレスバーに入力したときにIEがHTTP接続を望んでいるとは考えられなかったので、実現するのに少し時間がかかりました。
マイケルシェパー

2

私が見つけたのは、Windows VirtualHost-OnlyアダプターがIP範囲の.1アドレスに設定されていることを確認していたため、仮想ボックスホスト専用アダプターは192.168.58.20でしたが、WindowsアダプターのIPは192.168。です58.1


2

@Melvynによる解決策が機能しない場合は、代替手段として、ネットワークアダプタをブリッジするように設定できます。-> ->に
移動してから、Bridged Adapterに変更します。SettingsNetworkAttached to

ここに画像の説明を入力してください

ホスト名または外部IPアドレスで親を呼び出すことができるはずです。コマンドプロンプトに移動して入力すると、親を取得できます。 ipconfig /all ここに画像の説明を入力してください

ここに画像の説明を入力してください

更新 Visual Studioでデバッグしていて、IIS Expressを使用している場合。

に行きます C:\Users\[uesername]\Documents\IISExpress\config\applicationhost.config

であなたのウェブサイトを見つけてください<configuration>/<system.applicationHost>/<sites>/<site> (名前は誤解を招く可能性がありphysicalPathます属性のディスク上の場所を確認してください)

次に<bindings>セクションに新しいバインディングを追加します

<bindings>
    <binding protocol="http" bindingInformation="*:50766:localhost" />
    <binding protocol="http" bindingInformation="*:50766:48qzr12" />
</bindings>

ここで、bindingInformationは *:[port]:[machineName]

これで時間を節約できることを願っています。


-1

Debianにウェブサーバーをヒットさせることはできますが、localhostを使用することはできません。UbuntuホストのIPアドレスを使用する必要があります。

ゲストOSがネットワークに接続されていると仮定して、IPを取得してターミナルを開き、と入力しifconfigます。のように見えるはずです192.168.0.2


こんにちは!返信が遅すぎてすみません。私のホストのifconfigはeth0に対して192.168.0.102を示しています。ゲストのfirefoxでこのIPを入力すると、しばらく接続しようとして、接続が終了します:「192.168.0.102のサーバーが応答に時間がかかりすぎています」... 前もって感謝します。
マキシム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.