製品レビュー
デスクトップOSのマイグレーションを支援するVirtual PC 2004

3.VPC 2004で実現されるハードウェア・デバイス

デジタルアドバンテージ
2004/06/25

 VPC 2004で実現されているPCハードウェアは、OSを動作させるという目的上、非常にオーソドックスな構成のシステムになっている。実際には、次のようなPC互換機環境を実現している。

コンポーネント エミュレートされるハードウェア
CPU ホストPCのCPUをそのまま利用するので、ホストPCのCPUと同じ機能のみがサポートされる。ただしマルチプロセッサはサポートされない
BIOS AMI BIOS
チップセット Intel 440BX
サウンド・カード Creative LabsのSound Blaster 16 ISA Plug and Play
ネットワーク・インターフェイス Intel(DEC) DC21140A 10/100Mbps。最大4インターフェイスまでサポート。DHCP/NATサポート
ビデオ・カード S3 Trio 32/64 PCI (VRAM 8Mbytes)。VESA 2.0サポート
マウス/キーボード ホストPC環境のものを使用
HDD/CD-ROM/FDD これらはホストPC環境のものを使用するか、イメージ・ファイルを利用するかを選択できる
VPC 2004で実現されるPCシステム
いまから数年前の典型的なPCシステムをエミュレートしているようであるが、OS機能やその上で動作するアプリケーションの検証ならば、これでも何ら問題はないであろう。

 以下、いくつかのデバイスについて補足説明をしておく。

CD-ROMやFDへのアクセス

 WindowsやMS-DOSなどのゲストOSをVPC 2004にインストールするためには、仮想PCからこれらのOSをインストールするためのセットアップ・プログラムにアクセスできるようにしなければならない。現在一般的なOSは、CD-ROMメディアによって提供されているので、VPC 2004でも、CD-ROMメディアを使ったインストール方法がいちばんよく使われることになるであろう。

VPC 2004におけるハードウェア・エミュレーション環境

 VPC 2004でCD-ROMメディアをアクセスするためは、先ほど解説したように、2つの方法がある。1つは、実際のホストPCに装備されているCD-ROMドライブを使ってメディアを読み込む方法であり、もう1つは、仮想的なCD-ROMのイメージ・ファイルを作成して、それを仮想CD-ROMドライブにマウントする方法である。

■方法1―実際の物理的なCD-ROMドライブを利用する方法
 この方法では、CD-ROMメディアをホストPCのCD-ROMドライブに挿入し、そのCD-ROMドライブを仮想PCのD:ドライブ(仮想ハードディスクがC:ドライブのみの場合)としてアクセスさせる。ただし同時に複数の仮想PCで異なるCD-ROMを利用することはできず、どれか1台の仮想PCでのみCD-ROMドライブを利用することになる。

■方法2―CD-ROMイメージ・ファイルを利用する方法
 これは、CD-ROMメディアの内容をリッピングして(読み出して)「〜.iso」というファイルにしておき、そのファイルを仮想CD-ROMドライブとして「マウント」する方法である。CD-ROMドライブが利用できない(装備されていない)場合でも仮想PCでCD-ROMが利用できるし、同時に複数の仮想PCで異なるCD-ROMイメージ・ファイルにアクセスすることもできる。何度も仮想PCをインストールする場合には、この方法が便利だろう。OSごとのイメージ・ファイルは、実際のインストール・メディアからCD-Rライティング・ソフトウェアなどを使ってリッピングするか、開発者向けのMSDNライブラリに用意されているOSイメージ・ファイルを利用すればよい。

CD-ROMからのリッピング
多くのCD-Rライティング・ソフトウェアには、CD-ROMの内容を読み出して、ファイルに格納する機能(リッピング機能)が用意されている。これはBHA社の「B's Recorder Gold 7」というCD-Rライティング・ソフトウェアで、CD-ROMイメージ・ファイルをリッピングしているところ。ファイル名は「〜.iso」とすること(〜.imgではマウントできないので、名前を変更しておくこと)。一度ファイルにしてしまえば、実際のCD-ROMドライブがシステムに装備されていない場合でも、仮想PC上にOSをインストールすることができるし、実際のハードウェアにアクセスする場合よりも高速になり、便利である。なお当然のことながら、OSの使用ライセンスのないCD-ROMをリッピングしてはいけない。
  作成されるイメージ・ファイルのサイズ。

 なお、この例ではCD-ROMについて解説しているが、実際にはハードディスク・ドライブ(HDD)やフロッピー・ディスク・ドライブ(FDD)についても、イメージ・ファイルを用意しておき、それをマウントすることによってそれらのデバイスをエミュレーションすることができるし、実際のHDDやFDDドライブを仮想PCから利用することもできる。

ハードディスクのエミュレーション

 ウィザードで仮想PCを作成すると、デフォルトでは16GbytesのIDEディスクをエミュレーションする環境が作成される(作成されたディスクは、プライマリIDEインターフェイスのマスタ側に接続された状態になる)。もしディスクのサイズをもっと大きなものに変更したいとか、2台目以降のハードディスクも利用したいのなら、ユーザー自身で「バーチャル ディスク ウィザード」を起動して新しいディスク・イメージ(「バーチャル ディスク」という)を作成し、仮想PC環境に追加する必要がある。デフォルトでは、セカンダリIDEインターフェイスのマスタ側には仮想CD-ROMドライブが接続されているので、ユーザーは最大で3台(最初に作成されたディスクを含む)のディスクを取り扱うことができる。

バーチャル・ディスク・ウィザード(ディスクの種類の選択)
仮想PC環境には、最低でも1つ(1台)のディスクを用意する。「バーチャル マシン ウィザード」ではサイズ可変長の16Gbytesのディスクしか作成できないため、その構成を変更したり、別のディスクを作成して仮想PC環境に追加するには、このバーチャル・ディスク・ウィザードを使って手動でディスク・イメージを作成する。これは作成するディスクの種別を設定する画面。
  デフォルトではこのタイプが作成される。
  ファイル・サイズを固定にして、パフォーマンスを最大にするにはこれを選択する。
  差分(変更)情報のみを別ファイルに記録する場合。
  物理的なディスクを利用する場合。

 VPC 2004で作成可能なディスク・イメージには、以下の4つの種類がある。デフォルトでは「容量可変の拡張」というディスクが作成されるが、パフォーマンスを重視して容量固定のディスクにしたり、実際の物理的なハードディスクをマウントしたりすることも可能である。

ディスクの種別 意味
容量可変の拡張 デフォルトのディスク種別。例えば16Gbytesのハードディスクを作成したとしても、物理的なファイル・サイズは、実際に使っている部分のサイズだけになる。例えばWindows 2000 Professionalをインストールした場合は、約2Gbytesにしかならず、使用部分が増えるに従って、ディスク・イメージのファイル・サイズが拡大される
容量固定 ユーザーが指定したディスク・サイズと同じサイズのディスク・イメージ・ファイルが作成される。途中でファイル・サイズが拡張されることはないので、ディスクのフラグメントを防ぎ、パフォーマンスの劣化を最小限に抑える効果がある。一度このモードで作成しても、後で「容量可変の拡張」に戻すこともできるし、逆もできる
差分 ディスクに対する書き込みを、オリジナルのディスク・イメージ・ファイルとは別のディスク・イメージ・ファイルに記録する。マスタとなる1つのイメージ・ファイルを最初に作成しておき、そこから派生したディスク環境は(例:パッチを当てたり、アプリケーションを新しくインストールしたりした環境は)、別のファイルに保存する。これにより、オリジナル環境を保ったまま新しい環境を用意することができるので、元に戻すのが容易だし(差分を破棄すればよい)、多数の環境があっても、使用するファイル領域は少なくて済む。差分の元となるファイルと、差分を記録するファイルの2つを指定する
ハードディスクへのリンク ホストPCに装着されている、物理的なハードディスクを直接マウントする。環境を移行する場合は、物理的なハードディスクも移行しなければならず、VPC 2004による仮想的なPC環境のメリットが少なくなるが、パフォーマンスは高くなる
復元ディスク これはバーチャル・ディスク・ウィザードのオプションではなく、仮想PCごとに設定できる項目。ディスクに対する変更記録を、すべて別のファイルに記録するためのオプション。これを有効にすることにより、仮想PCの終了時に、変更分をすべて削除すれば環境を元の状態に復元できるし、変更分を反映すれば(これが通常の用法)最新の状態に更新することができる
バーチャル・ディスク・ウィザードで作成できるディスクの種別
デフォルトではサイズが16Gbytesに固定の「容量可変の拡張」ディスクが作成されるが、このバーチャル・ディスク・ウィザードを使うことにより、ほかの種類のディスクも作成可能。また相互にディスク種別を変換することも可能である。

仮想PCにおけるネットワーク・インターフェイスの扱い

 VPC 2004では、1つの仮想PCごとに、最大4つの仮想的なネットワーク・インターフェイス・カード(NIC)を利用することができる。通常は、1つのNICだけを利用することになるだろうが、サーバOSの検証用途などでは、同時に複数のNICを装備した環境をエミュレーションすることができる。

 ただしこれらの仮想NIC経由で送受信されたパケットは、最終的には実際のホストPCに装備されているいずれかのNIC経由で外部と送受信されることになる。そのため、ルータのように、2つ以上のネットワークへ接続してルーティングを行いたければ、実際のPCもそのようにネットワークに接続しておく必要がある。もし実際のシステムに1つしかNICがなければ、すべてのパケットは同一のNICを通じて外部とやりとりされることになる。

 なお、仮想PC上の仮想的なNICには、実際のホストPC上のNICとは異なるMACアドレスが割り当てられ、外部からは、まったく別々のNICがシステム上に用意されているように見える。最初に述べたように、VPC 2004は、Intel(元DEC)のDC21140Aというイーサネット・インターフェイス・カードをエミュレートしている。この場合、MACアドレスの上位3bytes(ベンダ・コード部分)は「00-03-FF」となり(これはMicrosoft向けに割り当てられた正式なベンダ・コード)、下位3bytesは、実際のNICのMACアドレスの下位3bytesをベースに一部変更したものが付けられている(1台のホストPC上で複数のNICを共存させるため)。

ネットワーク・インターフェイスの設定
仮想PC環境で実現するネットワーク・インターフェイスを設定する。各仮想PCごとに、最大で4つの仮想的なインターフェイスを実現することができる。
  ネットワークの構成を変更するには、これを選択する。
  ネットワーク・インターフェイスの数。複数用意して、ルーティング動作の検証などを行うこともできる。
  選択可能なネットワーク・インターフェイスの種類。このうち、「11a/b/g Wireless…」と「Intel(R) PRO/100…」はホストPCに装着されている物理的なネットワーク・インターフェイス。ローカルのみは仮想PC間での通信のみ、NATは、アドレス変換を利用して、セキュリティを高めたり、余計なIPアドレスを使用したりしないために使う。

 VPC 2004のNICサポートで特徴的なのは、単に仮想的なNICを実現するだけでなく、NAT機能なども用意しているというところである。この画面で分かるように、NICごとに次のような動作モードを設定することができる。

動作モード 意味
未接続 ネットワーク・カードがない状態
ローカル・ネットワーク VPC 2004下で動作している仮想マシン間でのみ通信可能な、特別なネットワーク。NICには、169.254.xxx.xxxといった、APIPAアドレスが割り当てられる
[物理ネットワーク] ホストPCに接続されている実際のNICをそのまま利用する。ただしMACアドレスはオリジナルのものとは違い、上位3bytesは00-03-FF、下位3bytesはホストPCのNICのものを少しアレンジしたアドレスになる。ホストPCに複数のNICが装備されている場合は、どれを使うかを選択できる。外部からみるとホストPCのNICとは異なる別のNICなので、IPアドレスを1つ新たに割り当てる必要がある。DHCPならば、ホストPC以外に、1つアドレスを消費する
共有ネットワーク(NAT) Windows XPのインターネット接続共有機能のように、実際のホストPCのNICに対してNAT/NAPTによるアドレス変換を施し、外部へ接続する。外部側からは直接仮想PCのNICにアクセスすることはできないが、仮想PCから外部へは自由にアクセスできる。この機能は、第1ネットワーク・インターフェイスでのみ利用可能。これを利用すると、ホストPCのIPアドレスを使ったまま(つまり余分なIPアドレスを消費せずに)、外部へアクセスすることができる
VPC 2004におけるネットワーク・インターフェイスのサポート

 ホストPCのNICをそのまま使うのではなく、「ローカル・ネットワーク」や「共有ネットワーク(NAT)」のように、外部への接続を制限する機能が用意されている。VPC 2004では非常に古いバージョンのゲストOSを動作させたり、検証のためにわざとService Packなどが適用されていないバージョンのOSを動作させたりすることがある。場合によっては、それらのOSにはセキュリティ・ホールが含まれており、そのままネットワークに接続すると、ウイルスに感染したり、ほかのマシンに感染を広げたりする可能性がある。そのような環境でテストする場合は、これらいずれかのネットワーク機能を利用して、外部から直接アクセスされたりしないようにするのが望ましい。またNAT機能を利用すると、IPアドレスを余分に消費しないというメリットもある(外部ヘアクセスする場合は、ホストPCに割り当てられたIPアドレスを使ってパケットが送信される)。


 INDEX
  [製品レビュー]デスクトップOSのマイグレーションを支援するVirtual PC 2004 
    1.Virtual PC 2004とは
    2.VPC 2004のインストール
  3.VPC 2004で実現されるハードウェア・デバイス
    4.ゲストOSのインストールと実行
 
 製品レビュー


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間