土曜日, 8月 01, 2009

VMware Server 基礎 (第4回、ネットワークの設定 Linuxホスト編)

[概要]
VMware Server Linuxホスト版において、仮想ネットワークの設定について説明しています。

[詳細]
VMware Serverでは、仮想ネットワークの種類が3つあます。Linuxホスト上でのそれらの設定方法について説明します。

  • ブリッジ接続
    バーチャルマシンのネットワークカードを、ホストマシンのネットワーク・カードにバインドすることで、ホストマシンと同じLAN上に仮想マシンがあるように見えます。
  • NAT接続
    仮想ルータを通して、仮想環境の外部ネットワークにアクセスします。
  • host-only接続
    仮想環境の中だけで利用するネットワークを構成します。外部ネットワークに接続することができません。

さて、仮想ネットワークの設定には、"/usr/bin/vmware-config.pl"を使用して、VMware Serverの設定の再構築を行います。
  1. "/usr/bin/vmware-config.pl"をrootで実行し、モジュールの作成、インストールパスの指定を行います。
    なお、デフォルトには前回の値が設定されますので、変更がなければデフォルトで進めてください。

  2. ネットワークの設定をスキップするかどうかの質問に"no"と入力し、ネットワークをバーチャルマシンで使用するに"yes"と入力してください。

    Would you like to skip networking setup and keep your old settings as they are?
    (yes/no) [yes] no

    Do you want networking for your virtual machines? (yes/no/help) [yes]

  3. 仮想ネットワーク変更を行う方法を選択します。今回は詳細な設定を行える"editor"を選択してください。
    Would you prefer to modify your existing networking configuration using the
    wizard or the editor? (wizard/editor/help) [wizard] editor

  4. 現在の仮想ネットワークが表示され、変更実行の再確認に答えます。

    The following virtual networks have been defined:

    . vmnet0 is bridged to eth0
    . vmnet1 is a host-only network on private subnet 192.168.6.0.
    . vmnet8 is a NAT network on private subnet 192.168.123.0.

    Do you wish to make any changes to the current virtual networks settings?
    (yes/no) [no] yes

  5. 変更、追加したい仮想ネットワークの番号を入力します。番号は"vmnet0"の数字の部分になります。
    ネットワークが存在する場合には、変更の確認に答えます。

    Which virtual network do you wish to configure? (0-254) 1

    The network vmnet1 has been reserved for a host-only network. You may change
    it, but it is highly recommended that you use it as a host-only network. Are
    you sure you want to modify it? (yes/no) [no] yes


  6. 仮想ネットワークの詳細設定を行います。
    1. ブリッジ接続
      1. 仮想ネットワークのタイプの選択では、"bridged"と入力します。

        What type of virtual network do you wish to set vmnet0?
        (bridged,hostonly,nat,none) [hostonly] bridged

      2. 仮想ネットワーク名を入力します。これはすべての仮想ネットワークで一意である必要があります。

        Please specify a name for this network.
        [Bridged]

      3. ブリッジするデバイスを入力します。デバイスが空き1つしかない場合は自動的に選択されるので、表示されません。

        Your computer has multiple ethernet network interfaces available: eth0, eth1.
        Which one do you want to bridge to vmnet0? [eth0] eth1

    2. host-only接続
      1. 仮想ネットワークのタイプの選択では、"hostonly"と入力します。

        What type of virtual network do you wish to set vmnet0?
        (bridged,hostonly,nat,none) [bridged] hostonly

      2. 仮想ネットワーク名を入力します。これはすべての仮想ネットワークで一意である必要があります。

        Please specify a name for this network.
        [Hostonly] Hostonly1

      3. 既に仮想ネットワークが構築してある場合には、同じ設定を使用するかどうかを確認されます。変更する場合は"no"を入力します。

        The host-only network is currently configured to use the private subnet
        192.168.210.0/255.255.255.0. Do you want to keep these settings? [yes] no

      4. host-only接続に使用するネットワークアドレスについて、vmware-config.plが空きプライベート・ネットワークを検索して自動的に割り当てるか、手動で割り当てるかを選択します。手動で割り当てる場合は"no"を入力します。自動割当にした場合、開いているネットワークアドレス対して、Class C、つまり24bi(e.g. 192.168.12.0/255.255.255.0)のサブネットマスクが割り当てられます。

        Do you want this program to probe for an unused private subnet? (yes/no/help)
        [yes]

        Probing for an unused private subnet (this can take some time)...

        The subnet 172.16.130.0/255.255.255.0 appears to be unused.

        自動設定の場合は、上記のように取得したネットワークが表示されます。

      5. 手動割当てを選択した場合は、ネットワークアドレスとサブネットマスクを設定します。

        What will be the IP address of your host on the private
        network? 192.168.2.0

        What will be the netmask of your private network? 255.255.255.0

        既存の仮想ネットワーク(変更中の自身のネットワークも含む)のネットワークアドレスが、重なる場合確認画面が表示されます。通常は重なるようなネットワーク設定は行わないと思いますので"no"と答えてください。

        The new private network has collided with existing private networks vmnet2,
        vmnet8. Are you sure you wish to add it? [no]

    3. NAT接続
      1. 仮想ネットワークのタイプの選択では、"nat"と入力します。

        What type of virtual network do you wish to set vmnet0?
        (bridged,hostonly,nat,none) [bridged] nat

      2. 仮想ネットワーク名を入力します。これはすべての仮想ネットワークで一意である必要があります。

        Please specify a name for this network.
        [Hostonly] Nat1

      3. 既に仮想ネットワークが構築してある場合には、同じ設定を使用するかどうかを確認されます。変更する場合は"no"を入力します。

        The NAT network is currently configured to use the private subnet
        192.168.210.0/255.255.255.0. Do you want to keep these settings? [yes] no

      4. NAT接続に使用するネットワークアドレスについて、vmware-config.plが空きプライベート・ネットワークを検索して自動的に割り当てるか、手動で割り当てるかを選択します。手動で割り当てる場合は"no"を入力します。自動割当にした場合、開いているネットワークアドレス対して、Class C、つまり24bi(e.g. 192.168.12.0/255.255.255.0)のサブネットマスクが割り当てられます。

        Do you want this program to probe for an unused private subnet? (yes/no/help)
        [yes]

        Probing for an unused private subnet (this can take some time)...

        The subnet 172.16.130.0/255.255.255.0 appears to be unused.

        自動設定の場合は、上記のように取得したネットワークが表示されます。

      5. 手動割当てを選択した場合は、ネットワークアドレスとサブネットマスクを設定します。

        What will be the IP address of your host on the private
        network? 192.168.2.0

        What will be the netmask of your private network? 255.255.255.0


        既存の仮想ネットワーク(変更中の自身のネットワークも含む)のネットワークアドレスが、重なる場合確認画面が表示されます。通常は重なるようなネットワーク設定は行わないと思いますので"no"と答えてください。

        The new private network has collided with existing private networks vmnet2,
        vmnet8. Are you sure you wish to add it? [no]

    4. 仮想ネットワークの削除
      仮想ネットワークのタイプの選択で、"none"と入力すると指定した仮想ネットワークが削除されます。

      What type of virtual network do you wish to set vmnet3?
      (bridged,hostonly,nat,none) [nat] none

      Removing a NAT network for vmnet3.

  7. 各設定の終了後、現在の設定の一覧が表示され、仮想ネットワークの変更を続けるかどうかに答えます。"yes"で継続。"no"で設定終了です。

    The following virtual networks have been defined:

    . vmnet0 is bridged to eth0
    . vmnet1 is a host-only network on private subnet 120.1.0.0.
    . vmnet2 is a NAT network on private subnet 172.16.109.0.

    Do you wish to make additional changes to the current virtual networks
    settings? (yes/no) [yes] no

  8. 以降は再構築のために、リモート接続のポート番号や管理ユーザの設定を順次行っていきます。これらについても前回の設定がデフォルトになりますので、変更がなければデフォルトで進めてください。

以上でLinuxホストでの仮想ネットワークの設定方法の説明は終わりです。

[仮想ネットワークののDHCPの設定]

さて、host-only接続とNAT接続では、それぞれの仮想ネットワークにDHCPサーバがそれぞれ自動的に設定されます。IPアドレスの配布範囲は自動的に設定されるので、自分で設定したい場合には各ネットワークの設定ファイルを編集する必要があります。ここではその設定方法について説明します。
  1. 設定ファイル(dhcpd.conf)の編集
    DHCPサーバの設定変更を行う場合には、設定ファイルであるdhcpd.confを編集します。
    dhcpd.confは、それぞれ、"/etc/vmware/ネットワーク名/dhcpd/dhcpd.conf"に作成されています。
    (e.g. "/etc/vmware/vmnet1/dhcpd/dhcpd.conf")
    下記の赤字の範囲を修正します。

    allow unknown-clients;
    default-lease-time 1800; # 30 minutes
    max-lease-time 7200; # 2 hours

    subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.128 192.168.0.254;
    option broadcast-address 192.168.0.255;
    option domain-name-servers 192.168.0.1;
    option domain-name "localdomain";

    }


    注意:
    • ネットワークアドレスの最初の値(e.g. 192.168.0.1)は、ホスト側のデバイスに割り当てられるので使用できません。
    • NAT接続の場合には、ネットワークアドレスの2番目の値(e.g. 192.168.0.2)は、ゲートウェイに使用されているので使用できません。
    • "vmware-config.pl"を実行すると、dhcpd.confは上書きされるので必ずバックアップを取っておいてください。

  2. 仮想ネットワークの再起動
    "/usr/lib/vmware/net-services.sh"コマンドを使用して、仮想ネットワークの再起動を行います。
    Usage: net-services.sh {start|stop|status|restart} [{|all} []]


    引数の"vHubNr"には、仮想ネットワークのデバイス名の最後の数字を指定します。
    vmnet2を再起動するためには、下記のようにコマンド実行します。

    [root@localhost ~]# /usr/lib/vmware/net-services.sh restart 2
    DHCP server on /dev/vmnet2 [ OK ]
    Host-only networking on /dev/vmnet2 [ OK ]
    Host-only networking on /dev/vmnet2 (background) [ OK ]
    DHCP server on /dev/vmnet2 [ OK ]

次回はWindowsホストの仮想ネットワークの設定方法について、説明します。

0 件のコメント: