kakiro-webカキローウェブ

システム開発情報とコンピューター書籍の紹介サイト

VirtualBox CentOS6.7 64bitでNAT、ホストオンリーアダプターを使用

VirtualBoxでゲストOSをホストOSと同じネットワークに参加させたくないが、ゲストOSからインターネットやホストOSと同じネットワークに接続を行いたい場合、ネットワークのアダプターにNATを使用することで、ゲストOSへの外部からの接続は不可能とし、ゲストOSからはインターネットやホストOSと同じネットワークへの接続を可能にすることができます。

外出先等で、ホストOSでスマートフォンのテザリングを使用してインターネットに接続している場合にも、NATを使用することで、ゲストOSからインターネットに接続することができるようになります。

尚、NATを使用時のゲストOSから外部への接続は、ホストOSが接続元として扱われるようになります。

また、NATの使用時に、SSH等でホストOSからゲストOSへの接続を行いたい場合、ネットワークのアダプターにホストオンリーアダプターを別途使用することで、ゲストOSへホストOSから接続可能とすることができます。

※複数のゲストOSでホストオンリーアダプターに同じホストオンリーネットワークを使用することで、ゲストOS同士も接続可能にすることができます。

ここでは、VirtualBoxの仮想マシンにインストールしたCentOS6.7 64bitで、NAT、ホストオンリーアダプターを使用する手順を以下に示します。

※VirtualBoxは、Mac用のバージョン4.3.30を使用しています。

※CentOS7 64bitをご使用の場合は、当サイトのVirtualBox CentOS7 64bitでNAT、ホストオンリーアダプターを使用のページをご覧ください。

VirtualBoxにホストオンリーネットワークを作成

ホストオンリーアダプターを使用するには、事前にVirtualBoxにホストオンリーネットワークを作成しておく必要があります。

以下のような手順で、ホストオンリーネットワークを作成します。

(1)

VirtualBoxのメニューから、「環境設定」を開きます。

(2)

設定画面で「ネットワーク」を選択し、「ホストオンリーネットワーク」の設定画面を開き、「ホストオンリーネットワークを追加」ボタン(右にある緑のプラスのアイコン)をクリックします。

(3)

「vboxnet0」というホストオンリーネットワークが追加されます。

これを選択した状態で、「ホストオンリーネットワークを編集」ボタン(右にあるドライバーのアイコン)をクリックします。

(4)

「アダプター」の設定画面を開くと、デフォルトでIPアドレスの設定が行われています。

このIPアドレスは、ホストOSに追加される「vboxnet0」というネットワークインターフェイスに設定されるものになります。

特に指定したいものがなければ、このままの設定で使用します。

  • IPv4 アドレス:ホストOSに設定するIPv4のアドレスを指定

    (ここでは「192.168.56.1」と入力)

  • IPv4 ネットマスク:ホストOSに設定するIPv4のアドレスのネットマスクを指定

    (ここでは「255.255.255.0」と入力)

  • IPv6 アドレス:ホストOSに設定するIPv6のアドレスを指定

    (ここでは空とし、IPv6のアドレスは使用しない)

  • IPv6 ネットマスク長:ホストOSに設定するIPv6のアドレスのネットマスク長を指定

    (ここでは「0」と入力)

「DHCPサーバー」の設定画面を開き、ゲストOSにDHCPを使用してIPアドレスを割り当てるときの設定を以下のように行い、「OK」ボタンをクリックします。

※「アダプター」の設定画面で設定したIPアドレスと、同じネットワークになるように設定します。

  • サーバーを有効化:チェックを入れる
  • サーバーアドレス:VirtualBoxに作成されるDHCPサーバーのIPアドレスを指定

    (ここでは「192.168.56.100」と入力)

  • サーバーマスク:ゲストOSにDHCPで割り当てるIPアドレスのネットマスクを指定

    (ここでは「255.255.255.0」と入力)

  • アドレス下限:ゲストOSにDHCPで割り当てるIPアドレスの範囲の最小値を指定

    (ここでは「192.168.56.101」と入力)

  • アドレス上限:ゲストOSにDHCPで割り当てるIPアドレスの範囲の最大値を指定

    (ここでは「192.168.56.254」と入力)

CentOS6 64bitのインストール時にNATとホストオンリーアダプターを使用する場合

VirtualBoxにCentOS6 64bit用の仮想マシンを作成のページでは、CentOSのインストール前のネットワークの設定で、ブリッジアダプターを使用するようにしていますが、NATとホストオンリーアダプターを使用する場合は、以下のような設定を行います。

※仮想マシンの作成と、ネットワークの設定後のOSのインストールメディアの設定については、当サイトのVirtualBoxにCentOS6 64bit用の仮想マシンを作成のページをご覧ください。

※CentOS6 64bitのインストールの手順については、当サイトのCentOS6 64bitのインストールページをご覧ください。

CentOS6 64bitのインストール前のVirtualBoxでのネットワークの設定

(1)

「Oracle VM VirtualBox マネージャー」で作成された仮想マシンを選択して、「設定」ボタンをクリックします。

(2)

設定画面で「ネットワーク」を選択し、「アダプター1」の設定画面を開き、以下の設定を行います。

  • ネットワークアダプターを有効化:チェックを入れる
  • 割り当て:「NAT」を選択

「アダプター2」の設定画面を開き、以下の設定を行い、「OK」ボタンをクリックします。

  • ネットワークアダプターを有効化:チェックを入れる
  • 割り当て:「ホストオンリーアダプター」を選択
  • 名前:前述の手順でVirtualBoxに作成したホストオンリーネットワーク「vboxnet0」を選択

CentOS6 64bitのインストール後のCentOSでのネットワークの設定

CentOS6 64bitのインストール後には、NAT用のネットワークインターフェイスとして「eth0」が、ホストオンリーアダプター用のネットワークインターフェイスとして「eth1」が作成されています。

※「/etc/sysconfig/network-scripts/」に作成されているネットワークインターフェイスの設定ファイル「ifcfg-eth0」、「ifcfg-eth1」のHWADDRに記載されているMACアドレスと、VirtualBoxのネットワークの設定で、高度な設定を開いたときに確認できるMACアドレスが一致していることで、NAT用、ホストオンリーアダプター用の区別が付きます。

NAT用のネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-eth0」を、以下のように編集します。変更を行う箇所のみ示します。

以下の変更を行い、ネットワークの接続が自動で行われるようにします。

ONBOOT=no
↓変更
ONBOOT=yes

ホストオンリーアダプター用のネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-eth1」を、以下のように編集します。変更を行う箇所のみ示します。

以下の変更を行い、ネットワークの接続が自動で行われるようにします。

ONBOOT=no
↓変更
ONBOOT=yes

ネットワークの設定を有効化するには、以下のコマンドを実行してネットワークサービスを再起動します。

# service network restart

CentOS6 64bitのインストール後にNATとホストオンリーアダプターを使用する場合

VirtualBoxにCentOS6 64bit用の仮想マシンを作成のページの手順と同様に、CentOSのインストール時はネットワークのアダプターにブリッジアダプターを使用するようにしていたが、インストール後にNATとホストオンリーアダプターを使用するように変更したい場合は、以下のような設定を行います。

VirtualBoxでのネットワークの設定

(1)

「Oracle VM VirtualBox マネージャー」で設定を行いたい仮想マシンを選択して、「設定」ボタンをクリックします。

(2)

設定画面で「ネットワーク」を選択し、「アダプター1」の設定画面を開き、以下の設定を行います。

  • ネットワークアダプターを有効化:チェックをはずす

※元々使用していたブリッジアダプターを無効化します。

「アダプター2」の設定画面を開き、以下の設定を行います。

  • ネットワークアダプターを有効化:チェックを入れる
  • 割り当て:「NAT」を選択

「アダプター3」の設定画面を開き、以下の設定を行い、「OK」ボタンをクリックします。

  • ネットワークアダプターを有効化:チェックを入れる
  • 割り当て:「ホストオンリーアダプター」を選択
  • 名前:前述の手順でVirtualBoxに作成したホストオンリーネットワーク「vboxnet0」を選択

CentOS6 64bitでのネットワークの設定

VirtualBoxでネットワークの設定後、CentOS6 64bitを起動すると、NAT用とホストオンリーアダプター用のネットワークインターフェイスが認識されるようになっています。

これは以下のコマンドで確認することができます。

# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: eth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

「eth1」がNAT用、「eth2」がホストオンリーアダプター用となります。

※「xx:xx:xx:xx:xx:xx」の部分に表示されているMACアドレスと、VirtualBoxのネットワークの設定で、高度な設定を開いたときに確認できるMACアドレスが一致していることで、NAT用、ホストオンリーアダプター用の区別が付きます。

元々使用していたブリッジアダプターは使用しませんので、ブリッジアダプター用のネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-eth0」を、以下のように編集します。変更を行う箇所のみ示します。

以下の変更を行い、ネットワークの接続が自動で行われないようにします。

ONBOOT=yes
↓変更
ONBOOT=no

NAT用、ホストオンリーアダプター用のネットワークインターフェイスの設定ファイルは作成されていませんので、以下のように作成します。

NAT用のネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-eth1」を、以下のように作成します。

DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp

ホストオンリーアダプター用のネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-eth2」を、以下のように作成します。

DEVICE=eth2
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp

ネットワークの設定を有効化するには、以下のコマンドを実行してネットワークサービスを再起動します。

# service network restart

尚、ブリッジアダプターのみを使用するように戻すときは、VirtualBoxのネットワークの設定で、ブリッジアダプターのみを有効化、NATとホストオンリーアダプターは無効化し、CentOSのネットワーク設定で、ブリッジアダプター用のネットワークインターフェイスの設定ファイルのみ「ONBOOT=yes」とし、NAT用とホストオンリーアダプター用は「ONBOOT=no」とします。

VirtualBox CentOS6.7 64bitでNAT、ホストオンリーアダプターを使用については、以上です。

Linuxの基礎知識に関するおすすめの書籍

当サイトの書籍紹介ページで、Linuxの基礎知識に関するおすすめの書籍の紹介も行っておりますので、ご覧ください。