Windows 7からUbuntu VirtualBoxのlocalhostに接続する方法は?


10

私のホストOSはWindows 7です

私は(Django開発)サーバーをUbuntu 10.04のVirtualBoxで実行しています。

Windowsホスト上の(ブラウザーを介して)そのサーバーに接続したい。どうやってやるの?

回答:


12

ネットワークアダプターモードを「ブリッジ」に設定することもできます。その場合、VMはセルフIPアドレスを持つ通常のマシンと見なされます。


「ブリッジアダプタ」に設定しました。http://localhost:8000/Ubuntu / Guest / VirtualBoxで動作しますが、Windows / Hostマシンでは動作しません。「Firefoxはlocalhost:8000にあるサーバーへの接続を確立できません。」と言います。
mpen

ハァッ!とった。サーバーを実行するときに、自分のIPアドレスを明示的に渡す必要がありました./manage.py runserver <MY_IP>:8000。その後、両方のマシンで動作します。
mpen

3
正確なIPを渡さないように0.0.0.0:8000を試してください。
エイジェネイン2010

@eigenein:いいね。その後localhost、ubuntuで使用できますが、WindowsからIPを使用する必要があります。
mpen

@マーク仮想Ubuntuは別のマシンの別のOSであり、UbuntuはlocalhostWindows用ではないため、これは論理的です。
エイジェネイン

6

これは私のために仕事をしました:

メモリから、NATネットワークを使用してVirtualBoxを設定している場合は、ゲストOSからホストで実行されているサービスにアクセスできると思います。ゲスト(WinXP)から、ホストは10.0.2.2として表示されます。したがって、WinXP Webブラウザーをそのアドレスに向けると、Ubuntu Apacheサーバーに接続するはずです。(ホストにとって、これはlocalhostからの接続であると思われます。)

http://ubuntuforums.org/showthread.php?t=682519


このソリューションは、Windows 7でも機能しまし10.0.2.2た。hostsファイルで使用する必要がありました。
Eric Majerus

3

そのためには、仮想マシンのポートを転送する必要があります。

コマンドプロンプトに移動し、仮想ボックスフォルダーに切り替えます。そこで、次のコマンドを発行できます。

VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8888
VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
VBoxManage.exe setextradata "name of vm" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP

"name of vm"を仮想マシンの名前に、GuestPortをWebサーバーが使用しているポートに切り替えます。これは、ポート8080などを使用している可能性があるためです。その後、私が間違っていなければ、http:// localhost:8888 /経由でサーバーにアクセスできるはずです。

編集: PS:私が覚えている限り、ネットワークアダプターを「NAT」に設定する必要があります

編集2: ここにあるVirtualBoxマニュアルには、ポート転送に関するセクションが含まれおり、ここで説明する方法とは少し異なります。6.3.1章で読んでください。(バージョン3.2.6の場合)


これらのコマンドを実行すると、Ubuntuを起動できなくなります。
mpen

このコマンドは、VBoxManage modifyvm "VM name" --natpf1 "djangoserver,tcp,,8000,,8000"私のゲストマシン、およびによって与えられたIPアドレスに8000:私はローカルホストの両方からアクセスしようとすると...どちらか動作するようには思えませんifconfig
mpen

おっと...まだBridgedにありました。NATに切り替えたところ、タイムアウトになりました...どういう意味ですか?
mpen 2010

Djangoのドキュメントでこのメモを見つけました「ネットワーク上の他のマシンからデフォルトのIPアドレス127.0.0.1にアクセスできないことに注意してください。開発サーバーをネットワーク上の他のマシンから見えるようにするには、独自のIPアドレスまたは0.0を使用します。 0.0」-これも試したが、「応答に時間がかかりすぎた」
mpen 2010

2
この場合のポート転送は、ホストシステムの「localhost:8888」または「127.0.0.1:8888」にアクセスすると、ゲストマシンの「localhost:80」または「127.0.0.1:80」にアクセスするように機能するはずです。私の知る限り。多分あなたはSSHまたはすでに実行されている同様のものを転送して、ポート転送が正しく機能するかどうかを確認することができます。また、サーバーがゲストマシンで動作することを確認しました(ゲストマシンのfirefoxを使用してページを開いていますか?)PS PSとにかく答えは既にわかっているようです:)
private_meta

1

私のホストとゲストOSはWindows 7であり、それらを接続する唯一の方法は「NAT」モードでネットワークアダプターを構成し、@ tm_lvがhttps://superuser.com/a/287323/314495と書いたようにIP 10.0.2.2を使用することです

ネットワークアダプターを「ブリッジ」モードに設定しようとしました。両方のファイアウォールを無効にし、適切なIPを使用しましたが、機能しませんでした。理由はわかりません。

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