はじめに
このエントリではVirtualBox上で動作しているUbuntuにNAT接続でポートフォワーディングするための手順について書いています。
VirtualBoxのデフォルト設定ではNAT接続が行われます。このとき、ホストOSとゲストOSは別のネットワークとなってしまうため、両者の間での接続ができません。そこでポートフォワーディングという仕組みを使って、特定のポートの接続をゲストOS側へフォワード(転送)してしまうことで、接続することが可能になります。
NAT接続は、ホストOSがルータの役割を果たしているイメージなので、通常は実ネットワーク上の別のマシンが、ゲストOSで実行しているサービスを受けることは出来ない。ゲストOSとホストOSでは、参加しているネットワークが違うものになっているからである。
仮想化された日々:VirtualBoxのNAT接続でポートフォワード - livedoor Blog(ブログ)
技術評論社
売り上げランキング: 2356
OSとソフトウェアのバージョン
- Mac OS X 10.6.7
- Oracle VM VirtualBox 4.0.4
- Ubuntu 10.10
NAT接続のポートフォワーディングを行う
はじめにホストOS側で以下の設定を行います。
1. ゲストOSが起動中ならシャットダウンします。
2. VirtualBoxの管理画面から仮想マシンを選択し、設定ボタンをクリックします。
3. 設定画面からネットワークのアイコンをクリックします。
4. 割り当てがNATになっていることを確認した上で、ポートフォワーディングのボタンをクリックします。
5. ポートフォワーディングの設定画面ではホストOSのIPアドレス/ポート番号とゲストOSのIPアドレス/ポート番号を設定します。
上記の例では、ホストOS:3000ポートへのアクセスがゲストOSの3000ポートへのアクセスへ転送され、ゲストOSにアクセスできるようになります。たとえば、22番ポートをポートフォワーディングすることで、ホストOSからゲストOSへSSHで接続することもできます。
2011.05.01 追記
ホストOSのIPおよびゲストOSのIPは空っぽにしてください。
ゲストOS側でポートの開放を行う
ポートフォワーディングで指定したポートがゲストOS側で許可されていない場合は、ポートを開放します。
1. ゲストOSを起動します。
2. 端末を起動し、以下のコマンドを実行します。3000のところはポート番号です。
sudo ufw allow 3000/tcp
おわりに
以上でVirtualBox + Ubuntuでポートフォワーディングの設定は完了です。この状態で、ホストOS側からゲストOS側に指定したポートでの通信が可能になります。