2017年05月28日

VirtualBox: ネットワーク設定

VirtualBoxのネットワーク接続方式の設定について違いを調べてみた。
仕組みを理解している訳ではないので、間違っていることもあるが、
自分の中で、こんな感じかなと落ち着いたので残しておこうと思います。


virtualbox_network01.png

未割り当て


  • ネットワークアダプタの機能を割り当てない
  • 通信はできない


NAT


  • デフォルトの設定
  • ゲストOSは、ホストOSのIPアドレスを共有して外部の物理ネットワークと接続
  • 外部ネットワークからはゲストOSのIPアドレスは見えない
  • ゲストOS間はつながらない
  • ホストOSともつながらない


virtualbox_network02.png
(参考:Network Address Translation (NAT)

ゲストOSを単に外部ネットワークにつなげたいというのであれば、
デフォルト設定となっている "NAT" にしておけば問題が少ないでしょう。
他に影響を与えないように閉じた環境になっていて、
ホストOS・他のゲストOSとつながらないところが、
VMware Workstation PlayerのNAT設定とは異なります。

ネットワークアドレスは、10.0.2.0/24 で、
ゲストOSのIPアドレスは、10.0.2.15 が割り当てられます。
10.0.2.2 はゲートウェイ、10.0.2.3 はネームサーバ、10.0.2.4 はTFTPサーバーが割り振られます。
(参考:Fine-tuning the VirtualBox NAT engine



ゲストOSごとにネットワークを構成するので、
ゲストOSは同じIPアドレスになっています。
デフォルトで割り当てられているネットワークアドレスが気に入らなければ、
VBoxManageコマンドを使うことで変更ができます。
(参考:VBoxManage
VBoxManageは、VirutalBoxのCUIで、
VirtualBoxをインストールしたディレクトリにあります。
(C:\Program Files\Oracle\VirtualBox\VBoxManage.exe)


コマンドプロンプトから実行します。
インストールディレクトリにパスが通っていないと思うので、
カレントディレクトリを C:\Program Files\Oracle\VirtualBox に移動してから実行します。

必ず、変更するゲストOSは停止させてから変更してください。

まずは、ゲストOSの一覧を確認。

VBoxManage list vms


これでゲストOSの名称一覧が表示されます。
変更するゲストOSの名称 "VM name" を確認しておきましょう。

停止中のゲストOSのプロパティを変更するコマンド "modifyvm" を使います。
ネットワークアドレスを、192.168.30/24 に変更してみましょう。

VBoxManage modifyvm "VM name" --natnet1 "192.168.30/24"



これでゲストOSを再起動すれば、
ゲストOSには、192.168.30.15 のIPアドレスが割り振られます。






NATネットワーク


  • ゲストOSは、ホストOSのIPアドレスを共有して外部の物理ネットワークと接続
  • 外部ネットワークからはゲストOSのIPアドレスは見えない
  • ゲストOS間で予め設定したNATネットワークを構成する
  • ホストOSはつながらない


ホストOSとつながらない点が異なりますが、
VMware Workstation PlayerのNAT設定に近い状態です。

virtualbox_network07.png


NATネットワーク設定を使うには、
予め、"NATネットワーク" を準備しておく必要があります。
[環境設定] - [ネットワーク] を選び、
[NATネットワーク] タブの右上にある"+"マークのアイコンをクリックして追加する。
virtualbox_network03.png

追加したら、編集アイコンをクリックし、ネットワーク設定を編集する。
virtualbox_network04.png

管理しやすいようにネットワーク名をつけ、
ネットワークアドレスを任意に設定(デフォルトは、10.0.2.0/24)。
[DHCPのサポート]にチェックを入れる。
virtualbox_network05.png

それから、ゲストOSの設定を行う。
ネットワーク設定から、[NATネットワーク] を選択し、
先ほど準備した、"NATネットワーク"環境を選ぶ。
virtualbox_network06.png

これで再起動し、外部との通信と、
ゲストOS間でpingを実行すれば、通信設定ができていることを確認できると思います。





内部ネットワーク


  • 外部ネットワークとは通信できないゲストOS間でネットワークを構成する
  • ホストOSはつながらない



ゲストOS間でネットワークを構築するだけです。
"NATネットワーク"は、VirtualBoxがDHCPを用意してくれる設定がありますが、
内部ネットワークにはありません。ネットワーク設定は自身で行います。
virtualbox_network08.png



まずゲストOSの設定は、
[内部ネットワーク] を選び、ネットワークの名前を任意でつける。
virtualbox_network09.png

同じ内部ネットワークに接続する他のゲストOS設定にも、同じネットワーク名を選択します。



ゲストOSの設定ができれば、それぞれのゲストOSを起動し、
ネットワークインタフェースの設定を行う。
(Ubuntuでの設定)

sudo vi /etc/network/interfaces



ファイルを開いたら、以下を追記する。
インタフェース名は ifconfig とかで調べてます。
ネットワークアドレスは任意に設定してください。

auto enp0sp8
iface enp0sp8 inet static
address 192.168.30.1
netmask 255.255.255.0



他のゲストOSにも同様にネットワークインタフェースの設定を行います。
IPアドレスは 192.168.30.2 ~と、異なる設定をするように。

これで再起動し、IPアドレスを確認し、追記した設定通りに
ネットワーク設定ができていることを確認後、
ゲストOS間でpingを実行すれば、通信ができていることを確認できると思います。






ホストオンリー アダプター


  • 外部ネットワークとは通信できない
  • ホストOSとゲストOS間でネットワークを構成する


VMware Workstation Playerのホストオンリー設定と同じです。
virtualbox_network14.png


ホストOSのIPアドレス設定、DHCPの有効(ネットワーク設定)/無効が可能です。
[環境設定] - [ネットワーク] を選び、
[ホストオンリーネットワーク] タブに設定があります。
virtualbox_network10.png
(新たに設定を追加したいのであれば、右上にある"+"マークのアイコンをクリックして追加する)

設定するネットワークを選択し、
編集アイコンをクリックしてネットワーク設定を行う。

[アダプター] タブでは、ホストOSのIPアドレス設定を行う。
virtualbox_network11.png

[DHCPサーバー] タブでは、DHCPのネットワーク設定を行う。
[サーバーを有効化] にチェックを入れる。
virtualbox_network12.png
サーバーアドレスはホストOSと重ならないように設定。
アドレス下限は、ホストOSとDHCPサーバーと重ならない範囲に設定。
アドレス上限は、broadcastの255と重ならない範囲に設定。


それから、ゲストOSの設定を行う。
ネットワーク設定から、[ホストオンリー アダプター] を選択し、
先ほど準備した、"ホストオンリー アダプター"環境を選ぶ。
virtualbox_network13.png

これで再起動し、
ホストOSとゲストOS間でpingを実行すれば、通信設定ができていることを確認できると思います。




ブリッジ アダプター


  • ゲストOSは、外部の物理ネットワークと接続
  • 外部ネットワークからゲストOSのIPアドレスが見える
  • ホストOSは外部ネットワークを介して、ゲストOSとつながる


VMware Workstation Playerのブリッジ設定と同じです。
virtualbox_network15.png

サーバーとして外部と使うのであれば、ブリッジ接続を設定することになります。






汎用ドライバー


よくわかっていないので割愛。






まとめ


ゲストOSは1つだけで、ゲストOSを通常のクライアントPCとして使うのであれば、
デフォルトのままNAT設定にしておけば、だいたいはうまくいくと思う。
ゲストOSを増やして使いだすと、ややこしくなる。

家庭環境で、サーバーとして利用する場合、
外部からIPアドレスが見えたほうがいいので、ブリッジ接続を設定する。
会社内でPC管理者に相談無しでブリッジ設定を選んでしまうと、
ネットワークに知らないPCがつながってしまう状態になり、
PC管理者に迷惑をかけるので注意。

PCローカル内だけの閉じた環境でサーバーを立てたテストを行う場合は、
NAT環境でかつホストOSとゲストOSの間をつなぐ手段が必要となる。それは別の機会で。



VirtualBox ゲストOSのインストール
VirtualBoxをインストール
VMware Workstation Player: ネットワーク設定
VirtualBox: ホストOSからゲストOSへのアクセス
posted by Zorinos at 22:00| Comment(0) | Windows | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください
ブログランキング・にほんブログ村へ
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。