
キャリアの方は、公式のオンラインショップを利用すれば事務手数料が不要で通常のショップよりお得に購入できます。
1台のPCの中に何台も仮想マシンを立てれるVirtual Box。
サーバー持ちになることを夢見ながら、初めてVirtual Boxをインストールしました。
1.まずは、仮想マシンを立てよう♪
Now Searching, Downloading, installing, loading…(準備段階は省略します ;;)
・動作環境: HostOSはwindows 7、GuestOSはubuntuです。
Virtual BoxでGuestOSを起動すると、下のような画面が表示されます。
GuestOSの画面をクリックすると、マウスのcursorがGuestOSへ移り、HostOSの操作ができなくなります。HostOSの画面操作をしようとしたら、Ctrl + Altキーを押します。
またGuestOSをクリックし、HostOSを操作するためCtrl + Altキーを押す・・・
面倒くさいですね。
HostOSからteratermでGuestOSへSSH接続することを決意しました。
(別の方法もありますよね、たぶん)
Guest OSに早速SSH接続を試みたら、time out発生!!
2.【問題】あら?HostOSからGuestOSへ接続できない・・
通信確認のため、HostOSとGuestOS両方からそれぞれpingを打ちました。
GuestOSからHostOSのIPアドレス宛てのpingは通るのに、その反対は通信できません。
そもそもGuestOSとHostOSはどう繋がっているのか?
ポイントは、Virtual boxで作成した仮想マシンのネットワーク設定です。
デフォルト設定は割り当て方式がNATであり、論理的には以下のようなネットワーク構成です。
上記の図で通信は以下の通りです。
・内部 → 外部への通信: Virtual Boxにてxxx.xxx.xxx.xxxにNATされ、通信が行われる。
・外部 → 内部への通信: デフォルトの設定だと、通信不可である。
3.【解決策】方法は三つ
割り当て方式を以下三つのどれかにすれば、HostOSからGuestOSへの通信が可能です。
- i.NAT + 通信したいポートそれぞれにポートフォワーディング設定
- ii.ホストオンリーアダプター
- iii.ブリッジアダプター
i. 割り当て方式はNATのまま、ポートフォワーディングを追加設定
デフォルト設定に比べ、論理的なネットワーク構成の変更はありません。
手順は以下の通りです。
1)仮想マシンの「設定」 > 「ネットワーク」 > 「アダプター1」タブの「ポートフォワーディング」をクリックする。
2)ポートフォワーディングのルールを記載し、OKボタンを押す。
下図はHostOSからGuestOSへのSSH接続を追加した例。
SSH clientにてIPアドレス「127.0.0.1」、ポート番号「2222」宛に接続すると、 GuestOSへSSH接続できる。
ii. アダプターを追加し、割り当て方式をホストオンリーアダプターに設定
Virtual BoxにてHostOSとGuestOS間に外部とは隔離されたネットワークを作成します。
手順は以下の通りです。
1)仮想マシンの「設定」 > 「ネットワーク」 > 「アダプター2」タブをクリックする。
2)アダプター2の設定画面にて、以下を設定しOKボタンを押す。
・ネットワークアダプターを有効化: チェックを入れる。
・割り当て: ホストオンリーアダプター
・名前: 「VirtualBox Host-Only Ethernet Adapter」を選択する。
iii. 割り当て方式をブリッジアダプターに設定
注: HostOSが接続しているネットワーク上に新しいマシンを追加することになるので、自己責任でやってください! 社内など、公的なネットワークに接続している場合は、お勧めしません;;
論理的なネットワーク構成は以下の通りです。
手順は以下の通りです。
1)仮想マシンの「設定」 > 「ネットワーク」 > 「アダプター1」タブをクリックする。
2)アダプター1の設定画面にて、以下を設定しOKボタンを押す。
・割り当て: 「ブリッジアダプター」を選択する。
4.最後に
これでHostOSとGuestOS間でネットワーク接続ができるようになりました。
(GuestOS側の設定ももちろん必要ですが、ここでは割愛します。; 😉
これを読んだ初心者の方は、ぜひGuestOSを複数作成し、多数の仮想サーバーの村を作ってみましょう♪
※Virtual boxのネットワーク設定について詳細な説明は、以下のURLをご参考ください。
https://www.virtualbox.org/manual/ch06.html#nichardware