ゲスト(仮想ボックス上のOS)からホスト(実際のマシン)にポートを転送するにはどうすればよいですか?
Guest - Windows 7
Host - Ubuntu 12.10
ホストで、ポート3000
でWebサーバーを実行しています。
ゲストからURLでブラウザを開くことができるようにしたい
http://127.0.0.1:3000
ホストで実行しているWebアプリを参照してください。 (理由は、いくつかのものをテストするためにIEブラウザーが必要だからです)。
Virtual Boxの設定で、NATを選択し、ポートフォワーディングで
Host IP: 127.0.0.1 Port: 3000
Guest IP: 192.168.0.3 Port: 3000
ここで、192.168.0.3
は、ipconfigから取得したゲストマシンのIPです。
これでうまくいくと思いましたが、Webサーバーを実行しようとしてゲストが実行されると、ポートがすでに使用されているというエラーが表示されます。
実際の誤差
/home/username/.rbenv/versions/2.0.0-rc2/lib/Ruby/gems/2.0.0/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in `start_tcp_server ':アクセプターなし(ポートが使用中であるか、root権限が必要です)(RuntimeError)
WebサーバーはWebrickです(デフォルトRailsおよびRuby開発モードのWebサーバー))。
ホスト/ゲストIPとポートのさまざまな組み合わせを試しましたが、どれも機能していないようです。
私にとって最も簡単な方法は、127.0.0.1の代わりにホストのIPアドレスを使用することだと思われます。これは、デフォルトゲートウェイを確認することでipconfigから取得できます。
本当にポートフォワーディングを実行したい場合は、 https://stackoverflow.com/a/11535395/2313067 を参照することをお勧めします。これがループバックインターフェイスで機能するかどうかさえわかりません。