VirtualBoxのネットワーク設定
VirtualBoxのネットワーク設定周りについて、いまいちよく分かってなかったのでちゃんと調べてみた。
やりたいことは以下のとおり。
ネットワーク設定を"NAT"にしておくと、ゲストからインターネット接続はできるが、ホストからゲスト上のサービス(sshとか)に接続できない。これを解決するにはポートフォワーディングの設定が必要。
手順は以下の通り。
- ふつうにVirtualBox上にCentOSをインストール(仮想マシン名は"CentOS"とした)する。
- ネットワーク設定は「NAT」に設定(デフォルト)する。
- Mac上で、~/Library/VirtualBox/Machines/CentOS/CentOS.xmlを編集し、以下の3行を追加
<VirtualBox ...> <Machine .. name="CentOS" ...> <ExtraData> ... + <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" value="TCP"/> + <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" value="22"/> + <ExtraDataItem name="VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" value="2222"/> </ExtraData> ...
そして、Macのターミナルから以下を実行
# ssh 127.0.0.1 -p 2222
これでOK。簡単ですね。