VMwareでLinux仮想マシンを作成③

前回の記事「VMwareLinux仮想マシンを作成する②」ではRHEL仮想マシンを作成しました。
今回は仮想マシンのネットワーク接続について説明していきます。

VMware Workstation Playerのネットワークアダプタ

VMware Workstation Playerではブリッジ/NAT/ホストオンリーという3種類のネットワーク接続の設定が可能です。 ネットワーク接続は以下の手順で確認ができます。
デフォルトの接続設定はNATです。

  1. VMware Workstation Playerの仮想マシンを右クリックしたメニューから「設定」をクリック
  2. 「ハードウェア」タブのデバイスネットワークアダプタ」をクリック

VMware Workstation Playerはネットワーク接続の種類に応じて自動でネットワーク設定を行います。
ホストOSにはVMware Workstation Playerインストール時に以下のネットワークアダプタが作成されています。

  • VMware Network Adapter VMnet1
  • VMware Network Adapter VMnet8

VMnet1はホストオンリー接続、VMnet8はNAT接続のときのホスト側インターフェースとして使用されます。

ネットワークアダプタの設定画面を見てわかるように、VMware Workstation Playerでは以下の5種類のネットワークを選択できます。

  • ブリッジ
  • NAT
  • ホストオンリー
  • カスタム
  • LANセグメント

上記のうち、今回はブリッジ、NAT、ホストオンリーについて説明します。
各ネットワーク接続可否を以下にまとめます。

項目    ブリッジ       NAT    ホストオンリー
ネットワークインターフェース なし VMnet8 VMnet1
ホスト→ゲスト接続
ホスト←ゲスト接続
ゲスト→外部ネットワーク接続 ×
ゲスト←外部ネットワーク接続 × ×
ゲストーゲスト接続

ブリッジ

ブリッジ接続は仮想マシンがホストのNIC(Network Interface Card)をネットワークアダプタとして扱うことで、仮想マシンが外部接続可能できるネットワーク接続です。
VMware Workstation Playerでは外部ネットワークからも仮想マシンに接続させたい場合はブリッジ接続を使用します。
ネットワーク構成のイメージ図を以下に示します。

  • ホストOSとゲストOSのIPを同一セグメントにすることで接続が可能
  • ホストマシンの物理NICを使用して直接外部と接続が可能

NAT

NAT接続はNATデバイス仮想マシンIPアドレスをホストのIPアドレスに変換することで、仮想マシンが外部接続できるネットワーク接続です。
仮想マシンが外部ネットワークに接続する場合はブリッジ接続かNAT接続を使用します。
ブリッジ接続は仮想マシンのセグメントをホストに合わせる必要があるのに対して、NAT接続は仮想マシンIPアドレスをプライベートIPアドレスで設定することが可能です。
ネットワーク構成のイメージ図を以下に示します。

# Virtual ethernet segment 8
# Added at 12/15/23 12:14:03
subnet 172.16.219.0 netmask 255.255.255.0 {     # セグメント定義
range 172.16.219.128 172.16.219.254;            # default allows up to 125 VM's
option broadcast-address 172.16.219.255;
option domain-name-servers 172.16.219.2;        # DNSサーバのIPデフォルトアドレス
option domain-name "localdomain";
option netbios-name-servers 172.16.219.2;
option routers 172.16.219.2;                    # ゲートウェイのデフォルトIPアドレス
default-lease-time 1800;
max-lease-time 7200;
}
host VMnet8 {
    hardware ethernet 00:50:56:C0:00:08;
    fixed-address 172.16.219.1;                 # VMnet8のデフォルトIPアドレス
    option domain-name-servers 0.0.0.0;
    option domain-name "";
    option routers 0.0.0.0;
}
# End

ホストオンリー

ホストオンリー接続は仮想マシンがホストとのみ接続可能なネットワーク接続です。
隔離されたネットワークを再現することになるので、たとえばスタンドアロンのシステムのOSをバージョンアップさせる必要が発生したときの検証環境として使用するなどがシチュエーションとしては考えられます。
ネットワーク構成のイメージ図は以下の通りです。

# Virtual ethernet segment 1
# Added at 12/15/23 12:14:03
subnet 172.16.198.0 netmask 255.255.255.0 {     # セグメント定義
range 172.16.198.128 172.16.198.254;            # default allows up to 125 VM's
option broadcast-address 172.16.198.255;
option domain-name-servers 172.16.198.1;
option domain-name "localdomain";
default-lease-time 1800;
max-lease-time 7200;
}
host VMnet1 {
    hardware ethernet 00:50:56:C0:00:01;
    fixed-address 172.16.198.1;                 # VMnet1のデフォルトIPアドレス
    option domain-name-servers 0.0.0.0;
    option domain-name "";
}
# End

IPアドレスの固定化

ゲストのIPアドレスDHCPにより都度変更の可能性があるため、 これを回避するためにIPアドレスを固定化しておくと便利な場合があります。
設定するIPアドレスは同一セグメント内で重複しないものから任意に選択してください。 IPアドレスを固定化する場合は、最低限IPアドレスゲートウェイDNSを設定します。

(ゲストの固定IPアドレスを設定)
# nmcli connection modify {コネクション名} ipv4.method manual ipv4.address {ゲストIPアドレス/サブネットマスク}

(ゲートウェイに仮想SWのIPアドレスを設定)
# nmcli connection modify {コネクション名} ipv4.gateway {ゲートウェイのIPアドレス}

(DNSに仮想SWのIPアドレスを設定)
# nmcli connection modify {コネクション名} ipv4.dns DNSのIPアドレス}
項目   ゲートウェイ      DNS   
ブリッジ ホストのゲートウェイ ホストのDNS
NAT NAT構成のゲートウェイ(xxx.xxx.xxx.2) NAT構成のDNS(xxx.xxx.xxx.2)
ホストオンリー 設定不要 VMnet1(xxx.xxx.xxx.1)

上記と同様にホストのネットワークアダプタVMnet1とVMnet8も同一セグメント内で任意のIPアドレスに変更可能です。

まとめ

今回はVMware Workstation Playerのネットワーク接続について説明しました。
ホスト/ゲスト/外部ネットワーク との接続の違いで適切なネットワークが存在しますので、仮想マシンの用途に応じて選択できるようになるとよいでしょう。
個人的にはホスト型の仮想マシンを本運用で使うことはあまりなく、ローカル上に検証環境として利用するケースが多いのかなという印象です。
隔離されたシチュエーションを再現する必要がないのであれば、仮想マシンをプライベートIP化できるNAT接続が利用しやすいのではないかと思います。
次回はRHELサブスクリプション適用を説明します。