Oracle VM VirtualBoxにネットワークアダプタの設定をする | そう備忘録

Oracle VM VirtualBoxにネットワークアダプタの設定をする

はじめに

WindowsマシンにVirtualBoxをインストールしてVM環境にUbuntu 16.04 ServerとLAMP環境のインストールをおこなった。

以前の記事を参照

今回はホストOS(Windows)からゲストOS(Ubuntu)にアクセスする為のネットワークアダプタの設定を行う。

ちなみにデフォルトの設定でもゲストOS(Ubuntu)から外部のネットワークに接続することはNAT(Network Address Translation)を介して可能。

しかしゲストOS間やホストOSとゲストOSとの接続はデフォルト設定では接続出来ないので追加の設定が必要となる。

NAT+ポートフォワーディングのパターンとNAT+ホストオンリーアダプターの2パターンの接続を試した。

同じ様な事をする人の参考になれば幸いです

ポートフォワーディングの設定

ゲストOS(Ubuntu)をServerと想定してVirtualBoxにポートフォワーディングの設定を行う。

ポートフォワーディングとは特定のポート宛に届いたパケットを予め設定しておいた機器に転送する機能の事。

この機能を使って、「ローカルホストの8880ポートへアクセス→ゲストOS(Ubuntu)の80へ転送」とホストOS(Windows)からのhttpアクセスを可能にする。

設定方法

設定をクリック

VirtualBox 設定

アダプター1のタブ

割り当てはNATのままで「高度」をクリックして詳細を展開した後、「ポートフォワーディング」をクリックする。

高度な設定 ポートフォワーディング

右側の「+」ボタンをクリックする。

設定の追加

httpとssh接続用の設定を追加して「OK」ボタンを押して保存する。

httpとsshの設定

名前任意の名前
ホストポートホスト(Windowsマシン)から接続する任意のポート番号
ゲストポートゲスト(Ubuntu Server)へ転送されるポート番号

動作確認 http

ゲストOS(Ubuntu)を起動する。

ゲストOS(Ubuntu)の起動

ホストOS(Windows)からポート番号8880でhttp接続を試みる。

Addressバー
http://localhost:8880/

Ubuntuのapacheの初期画面が表示されれば成功。

ホストOSから8880ポートでhttp接続

動作確認 ssh

ホストOS(Windows)からPuTTYを使ってポート番号2222接続をする。

PuTTYで接続テスト

ホスト名

localhost

ポート

2222

初回の接続はセキュリティ警告のメッセージが表示されるが「はい」でログイン画面が表示されれば成功。

PuTTY 初回はセキュリティ警告

ホストオンリーアダプターの設定

もうひとつ別の接続方法を試した。

アダプター1はNATでポートフォワーディングの設定を行わず、アダプター2でホストオンリーアダプターの設定をする方法。

何らかの理由でポートフォワーディングを使いたくない時はこちらでも良いかも。

※アダプタは最大4つまで設定ができる

アダプター1

NAT

  • ゲストOS(Ubuntu)から外部ネットワークは接続可能
  • ホストOS(Windows)や外部からゲストOS(Ubuntu)は接続不可

アダプター2

ホストオンリーアダプタ

  • ホストOS(Windows)からゲストOS(Ubuntu)は接続可能
  • 外部からゲストOS(Ubuntu)へは接続不可

ホストネットワークの確認

事前にホストネットワークマネージャーで設定を確認する。

ファイルー>ホストネットワークマネージャー

ホストネットワークマネージャーの設定

VirtualBox Host-Only Ethernet Adapterを選択してプロパティ。

アダプター タブ

ホストネットワークマネージャー アダプタ

ここで表示されているIPv4 アドレス 192.168.56.1はゲストOS(Ubuntu)からみたホストOS(Windows)のIPアドレスになる。

DHCPサーバー タブ

ホストネットワークマネージャー DHCPタブ

192.168.56.100がDHCPサーバーのIPアドレス。

アドレス下限が192.168.56.101となっている、ゲストOSが一つしか無いので最初に起動するUbuntu Serverがこのアドレスになるはず。

アダプター2の設定

アダプター2にホストオンリーアダプターの設定をする。

「設定」ボタンをクッリク

設定

アダプター1

左側のメニューより「ネットワーク」を選択

アダプター1の設定

ネットワークアダプターを有効化

チェックする

割り当て

”NAT”を選択

ポートフォワーディング

設定をしない

アダプター2

アダプター2 タブを選択する。

アダプター2

ネットワークアダプターを有効化

チェックする

割り当て

”ホストオンリーアダプター”を選択

名前

ホストネットワークマネージャーで表示されていた”VirtualBox Host-Only Ethernet Adapter”が選択されていることを確認する。

ゲストOS(Ubuntu)の起動

ゲストOS(Ubuntu)を起動してhttp://192.168.56.101/に接続してみるがアクセスが出来ない。

ゲストOSに接続

ip a コマンドでIPアドレスを確認してみる。

ip a

192.168.56.101以降のIPアドレスが振られた形跡が無い。

192.168.56.101以降が振られた形跡が無い

DHCPからアドレスが振られている様子が無いので一旦IPアドレスを開放して再度割り当ててみる。

sudo dhclient -r
sudo dhclient

再度、ip aコマンドで確認すると

再度 ip a

予定通り(?)emp0s8に192.168.56.101が割り当てられたので

Addressバー
http://192.168.56.101/

で接続テスト。

再度接続テスト

無事に接続できる事を確認した。

その他

NATにポートフォワーディングの設定かNAT+ホストオンリーアダプターの設定かはケース・バイ・ケースだと思う。

色々な機能(ポート)を使うのであればポートフォワーディングの設定はちょっと面倒。

一方、今回はAWS(Amazon Web Services)上のこのブログ(WordPressで構築)のテスト系を作りたいだけなのとホストOS以外からも接続できるポートフォワーディングの方が便利なのでポートフォワーディングでの接続を採用する事にした。

souichirou

やった事を忘れない為の備忘録 同じような事をやりたい人の参考になればと思ってブログにしてます。 主にレゴ、AWS(Amazon Web Services)、WordPress、Deep Learning、RaspberryPiに関するブログを書いています。 仕事では工場に協働ロボットの導入や中小企業へのAI/IoT導入のアドバイザーをやっています。 2019年7月にJDLA(一般社団法人 日本デイープラーニング協会)Deep Learning for GENERALに合格しました。 質問は記事一番下にあるコメントかメニュー上部の問い合わせからお願いします。

おすすめ

質問やコメントや励ましの言葉などを残す

名前、メール、サイト欄は任意です。
またメールアドレスは公開されません。