kakiro-webカキローウェブ

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

CentOS7.2 64bit インストール時にVirtualBoxでNAT、ホストオンリーアダプターを使用する場合のネットワークの設定

CentOS7.2 64bitのインストール時に、VirtualBoxのネットワークのアダプターにNATとホストオンリーアダプターを使用する場合のネットワークの設定について、以下に示します。

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

※CentOS7 64bitのインストール後にVirtualBoxでNAT、ホストオンリーアダプターに変更する場合のネットワークの設定については、当サイトのCentOS7 64bit インストール後にVirtualBoxでNAT、ホストオンリーアダプターに変更する場合のネットワークの設定のページをご覧ください。

CentOS7 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
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

ネットワークインターフェイス「enp0s3」が「NAT」に、「enp0s8」が「ホストオンリーアダプター」に割り当てられています。

※割り当てられるネットワークインターフェイスの名前は、環境によって異なります。

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

これらのネットワークインターフェイスの設定ファイル「/etc/sysconfig/network-scripts/ifcfg-enp0s3」、「/etc/sysconfig/network-scripts/ifcfg-enp0s8」は直接編集はせず、nmcliコマンドを使用して編集していきます。

※設定の詳細は、コマンド「man nm-settings」で確認することができます。

設定ファイル「ifcfg-enp0s3」のデフォルトの内容

設定ファイル「ifcfg-enp0s3」のデフォルトの内容は、以下のようになっています。

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DEVICE=enp0s3
ONBOOT=no

設定ファイル「ifcfg-enp0s8」のデフォルトの内容

設定ファイル「ifcfg-enp0s8」のデフォルトの内容は、以下のようになっています。

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s8
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DEVICE=enp0s8
ONBOOT=no

ネットワークインターフェイス「enp0s3」の接続設定のデフォルトの内容

接続設定の内容は、以下のコマンドで確認することができます。

ネットワークインターフェイス「enp0s3」の接続設定のデフォルトの内容は、以下のようになっています。

# nmcli -p connection show enp0s3
===============================================================================
                      Connection profile details (enp0s3)
===============================================================================
connection.id:                          enp0s3
connection.uuid:                        xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
connection.interface-name:              enp0s3
connection.type:                        802-3-ethernet
connection.autoconnect:                 no
connection.autoconnect-priority:        0
connection.timestamp:                   0
connection.read-only:                   no
connection.permissions:
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
-------------------------------------------------------------------------------
802-3-ethernet.port:                    --
802-3-ethernet.speed:                   0
802-3-ethernet.duplex:                  --
802-3-ethernet.auto-negotiate:          yes
802-3-ethernet.mac-address:             --
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.mac-address-blacklist:
802-3-ethernet.mtu:                     auto
802-3-ethernet.s390-subchannels:
802-3-ethernet.s390-nettype:            --
802-3-ethernet.s390-options:
802-3-ethernet.wake-on-lan:             1 (default)
802-3-ethernet.wake-on-lan-password:    --
-------------------------------------------------------------------------------
ipv4.method:                            auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.gateway:                           --
ipv4.routes:
ipv4.route-metric:                      -1
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.never-default:                     no
ipv4.may-fail:                          yes
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------
  • nmcliコマンドで接続に関する操作を行う際には、引数に「connection」を指定します。

  • 接続設定の内容を確認する際には、引数の「connection」に続けて「show」と、確認するネットワークインターフェイスの名前(ここでは「enp0s3」)を指定します。

  • 「-p」オプションを指定すると、表示内容が見やすいように線で区切られて表示されます。

ネットワークインターフェイス「enp0s8」の接続設定のデフォルトの内容

接続設定の内容は、以下のコマンドで確認することができます。

ネットワークインターフェイス「enp0s8」の接続設定のデフォルトの内容は、以下のようになっています。

# nmcli -p connection show enp0s8
===============================================================================
                      Connection profile details (enp0s8)
===============================================================================
connection.id:                          enp0s8
connection.uuid:                        xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
connection.interface-name:              enp0s8
connection.type:                        802-3-ethernet
connection.autoconnect:                 no
connection.autoconnect-priority:        0
connection.timestamp:                   0
connection.read-only:                   no
connection.permissions:
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
-------------------------------------------------------------------------------
802-3-ethernet.port:                    --
802-3-ethernet.speed:                   0
802-3-ethernet.duplex:                  --
802-3-ethernet.auto-negotiate:          yes
802-3-ethernet.mac-address:             --
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.mac-address-blacklist:
802-3-ethernet.mtu:                     auto
802-3-ethernet.s390-subchannels:
802-3-ethernet.s390-nettype:            --
802-3-ethernet.s390-options:
802-3-ethernet.wake-on-lan:             1 (default)
802-3-ethernet.wake-on-lan-password:    --
-------------------------------------------------------------------------------
ipv4.method:                            auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.gateway:                           --
ipv4.routes:
ipv4.route-metric:                      -1
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.never-default:                     no
ipv4.may-fail:                          yes
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------
  • nmcliコマンドで接続に関する操作を行う際には、引数に「connection」を指定します。

  • 接続設定の内容を確認する際には、引数の「connection」に続けて「show」と、確認するネットワークインターフェイスの名前(ここでは「enp0s8」)を指定します。

  • 「-p」オプションを指定すると、表示内容が見やすいように線で区切られて表示されます。

OSの起動時にネットワークの接続が自動で行われるようにする

OSの起動時にネットワークの接続が自動で行われるようにするには、以下のコマンドを実行します。

# nmcli connection modify enp0s3 connection.autoconnect yes
# nmcli connection modify enp0s8 connection.autoconnect yes
  • nmcliコマンドで接続に関する操作を行う際には、引数に「connection」を指定します。

  • 接続設定の編集を行う際には、引数の「connection」に続けて「modify」と、編集するネットワークインターフェイスの名前(ここでは「enp0s3」と「enp0s8」)を指定し、続けて編集するプロパティの名前と値を指定します。

  • 「connection.autoconnect」の値に「yes」と指定すると、OSの起動時にネットワークの接続が自動で行われるようになります。

このコマンドの実行により、設定ファイル「ifcfg-enp0s3」と「ifcfg-enp0s8」に「ONBOOT=yes」の設定が行われます。

ホストオンリーアダプターのネットワークインターフェイスで固定のIPアドレスを使用するようにする

ホストオンリーアダプターで、IPアドレスをホストオンリーネットワークのDHCPから自動で割り当てるようにしていると、複数のゲストOSを同じホストオンリーネットワークのホストオンリーアダプターで使用している場合に、IPアドレスがゲストOS間で入れ替わったりすることがあります。

IPアドレスが変更されないようにするには、DHCPは使用せず固定のIPアドレスを使用するようにします。

固定のIPアドレスを使用するようにするには、以下のコマンドを実行します。

※NATのほうのネットワークインターフェイス「enp0s3」は、外部から接続されることはないため、固定のIPアドレスにする必要はありません。

# nmcli connection modify enp0s8 ipv4.method manual ipv4.addresses xxx.xxx.xxx.xxx/xx
  • nmcliコマンドで接続に関する操作を行う際には、引数に「connection」を指定します。

  • 接続設定の編集を行う際には、引数の「connection」に続けて「modify」と、編集するネットワークインターフェイスの名前(ここでは「enp0s8」)を指定し、続けて編集するプロパティの名前と値を指定します。

  • 「ipv4.method」の値に「manual」と指定すると、IPv4で固定のIPアドレスを使用するようになります。

    固定のIPアドレスを使用する場合は、「ipv4.addresses」へのIPv4のIPアドレスの指定も同時に行う必要があります。

    ※「xxx.xxx.xxx.xxx/xx」の「/」の前の「xxx.xxx.xxx.xxx」にIPアドレスを指定し、後の「xx」にサブネットマスクのビット長を指定します。

    ※IPアドレスには、ホストオンリーネットワークと同じネットワークで、DHCPで割り当てるようにしている範囲外のものを指定するようにします。

このコマンドの実行により、設定ファイル「ifcfg-enp0s8」に「BOOTPROTO=none」、「IPADDR=xxx.xxx.xxx.xxx」、「PREFIX=xx」の設定が行われます。

ネットワークの設定を有効化する

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

# systemctl restart network.service

※CentOS7になってサービス起動関連のコマンドは、「service」から「systemctl」に変わりました。

ネットワークの設定後の設定ファイル「ifcfg-enp0s3」の内容

ネットワークの設定後の設定ファイル「ifcfg-enp0s3」の内容は、以下のようになっています。

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DEVICE=enp0s3
ONBOOT=yes
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

ネットワークの設定後の設定ファイル「ifcfg-enp0s8」の内容

ネットワークの設定後の設定ファイル「ifcfg-enp0s8」の内容は、以下のようになっています。

TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s8
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DEVICE=enp0s8
ONBOOT=yes
IPADDR=xxx.xxx.xxx.xxx
PREFIX=xx
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

ネットワークの設定後のネットワークインターフェイス「enp0s3」の接続設定の内容

ネットワークの設定後のネットワークインターフェイス「enp0s3」の接続設定の内容は、以下のようになっています。

# nmcli -p connection show enp0s3
===============================================================================
                      Connection profile details (enp0s3)
===============================================================================
connection.id:                          enp0s3
connection.uuid:                        xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
connection.interface-name:              enp0s3
connection.type:                        802-3-ethernet
connection.autoconnect:                 yes
connection.autoconnect-priority:        0
connection.timestamp:                   xxxxxxxxxx
connection.read-only:                   no
connection.permissions:
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
-------------------------------------------------------------------------------
802-3-ethernet.port:                    --
802-3-ethernet.speed:                   0
802-3-ethernet.duplex:                  --
802-3-ethernet.auto-negotiate:          yes
802-3-ethernet.mac-address:             --
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.mac-address-blacklist:
802-3-ethernet.mtu:                     auto
802-3-ethernet.s390-subchannels:
802-3-ethernet.s390-nettype:            --
802-3-ethernet.s390-options:
802-3-ethernet.wake-on-lan:             1 (default)
802-3-ethernet.wake-on-lan-password:    --
-------------------------------------------------------------------------------
ipv4.method:                            auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.gateway:                           --
ipv4.routes:
ipv4.route-metric:                      -1
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.never-default:                     no
ipv4.may-fail:                          yes
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------
===============================================================================
      Activate connection details (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
===============================================================================
GENERAL.NAME:                           enp0s3
GENERAL.UUID:                           xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
GENERAL.DEVICES:                        enp0s3
GENERAL.STATE:                          activated
GENERAL.DEFAULT:                        yes
GENERAL.DEFAULT6:                       no
GENERAL.VPN:                            no
GENERAL.ZONE:                           --
GENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/ActiveConnection/2
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/Settings/1
GENERAL.SPEC-OBJECT:                    /
GENERAL.MASTER-PATH:                    --
-------------------------------------------------------------------------------
IP4.ADDRESS[1]:                         xxx.xxx.xxx.xxx/xx
IP4.GATEWAY:                            xxx.xxx.xxx.xxx
IP4.DNS[1]:                             xxx.xxx.xxx.xxx
IP4.DOMAIN[1]:                          xxxxx.xxx
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------

ネットワークの設定後のネットワークインターフェイス「enp0s8」の接続設定の内容

ネットワークの設定後のネットワークインターフェイス「enp0s8」の接続設定の内容は、以下のようになっています。

# nmcli -p connection show enp0s8
===============================================================================
                      Connection profile details (enp0s8)
===============================================================================
connection.id:                          enp0s8
connection.uuid:                        xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
connection.interface-name:              enp0s8
connection.type:                        802-3-ethernet
connection.autoconnect:                 yes
connection.autoconnect-priority:        0
connection.timestamp:                   xxxxxxxxxx
connection.read-only:                   no
connection.permissions:
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
-------------------------------------------------------------------------------
802-3-ethernet.port:                    --
802-3-ethernet.speed:                   0
802-3-ethernet.duplex:                  --
802-3-ethernet.auto-negotiate:          yes
802-3-ethernet.mac-address:             --
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.mac-address-blacklist:
802-3-ethernet.mtu:                     auto
802-3-ethernet.s390-subchannels:
802-3-ethernet.s390-nettype:            --
802-3-ethernet.s390-options:
802-3-ethernet.wake-on-lan:             1 (default)
802-3-ethernet.wake-on-lan-password:    --
-------------------------------------------------------------------------------
ipv4.method:                            manual
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:                         xxx.xxx.xxx.xxx/xx
ipv4.gateway:                           --
ipv4.routes:
ipv4.route-metric:                      -1
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.never-default:                     no
ipv4.may-fail:                          yes
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------
===============================================================================
      Activate connection details (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
===============================================================================
GENERAL.NAME:                           enp0s8
GENERAL.UUID:                           xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
GENERAL.DEVICES:                        enp0s8
GENERAL.STATE:                          activated
GENERAL.DEFAULT:                        no
GENERAL.DEFAULT6:                       no
GENERAL.VPN:                            no
GENERAL.ZONE:                           --
GENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/ActiveConnection/3
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/Settings/1
GENERAL.SPEC-OBJECT:                    /
GENERAL.MASTER-PATH:                    --
-------------------------------------------------------------------------------
IP4.ADDRESS[1]:                         xxx.xxx.xxx.xxx/xx
IP4.GATEWAY:
-------------------------------------------------------------------------------
:(略)
-------------------------------------------------------------------------------

CentOS7.2 64bit インストール時にVirtualBoxでNAT、ホストオンリーアダプターを使用する場合のネットワークの設定については、以上です。

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

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