Cross Road

Unity、VR、MR、ARを中心とした技術ブログ

virtualboxとmacをホストオンリーアダプターで接続

最近ブログに書くことがOculus関連ばかりですが、実は細々と別の分野の勉強もしています。ペースは遅いですが、、

例えばこの間、延期がちだったPostgresqlの勉強のために、11月に買ったばかりの新しいmacにvirtualboxの環境を入れました。

ただ、ネットワーク接続のところでちょっとつまづいたので、備忘録のために手順を書いておきます。

1. 背景

VirtualBoxをインストール時そのままの設定で使うと、NAT(Network Access Transition)が適用されているので、

通信できる :VirtualBox->Mac
通信できない:Mac->VirtualBox

となります。

VirtualBoxは非常に便利ですが、今回のPostgreSQLの勉強ではGUIを使わないし、なんとなくMacのターミナルを使いたかったので、ターミナルからVirtualBoxを使えるようにしました。

2. 動作確認環境

今回のネットワーク接続の概念図は下記です。

f:id:Takyu:20180713070214j:plain

また、以下を使っています。

Mac : Mervericks(10.9)
Virtualbox : 4.3.6
Linux : CentOS6.4 (VirtualBoxにインストール)

3. 手順

(VirtualBoxにCentOSをインストール済みであることが前提です)

3-1.


VirtualBox->環境設定->ネットワーク / ホストオンリーネットワークを選択
 “+”アイコンをクリックする。すると”vboxnet0”が出る。

3-2.

自分で作成した仮想マシンの設定からネットワークを選択する。
(ここではアダプター1を選択)
割り当てを”ホストオンリーアダプター”にして、”名前”をvboxnet0にする。

3-3.

 “高度”をクリックして、MACアドレスをメモしておく。 ここで、”ケーブル接続”にチェックをつけておくこと

f:id:Takyu:20180713070230j:plain

3-4.

CentOSのネットワーク設定を変更する。

 # vi /etc/sysconfig/network-scripts/ifcfg-eth0

あるいはNetworkManagerのGUIを開いて、
IPAddress : 192.168.56.10
NETMASK :255.255.255.0
GATEWAY : 192.268.56.1
HWADRR : さっきメモしたMACアドレス
を入力する。

(2015/3/5 HWADDRを書き漏れてたので追記しました)

注)192.168.56.1がVMのCentOSが識別するネットワークアドレス。
CentOSは192.168.56.XXのアドレスを持つ必要がある。
これでeth0に192.168.56.10が割り当たる。

3-5.

Mac上でターミナルを開き、sshで接続する。

 $ ssh root@192.168.56.10

  ->これでMacからCentOSに接続できます。
必要に応じて公開鍵の設定を行ってください。


この状態だと、CentOSは外部と接続できないため、yumなどが使えません。

そのため、もう一つネットワークを増やし、それをNAT接続します。

3-6.

この時点でもしCentOSが起動中の場合、shutdownで終了してください。
ネットワーク設定から、アダプター2の「ネットワークを有効化」にチェックを付ける。

3-7.

NATになっていることを確認したら、OKをクリックする。

f:id:Takyu:20180713070250j:plain

あとはCentOSを起動すれば、ssh接続可+NAT接続の状態になっています。