Preboot eXecution Environment (PXE) について
Preboot eXecution Environment(PXE)は、
インテルが策定したネットワーク
ブートの規格です。PXEを利用することで、クライアント
コンピュータはネットワークを通じて
サーバー上にあるOSイメージを起動できます。これにより、ストレージを持たない
シンクライアントや、ストレージに別のOSがインストールされている場合でも、ネットワーク経由でOSを起動できるようになります。
PXEの概要
PXE
ブート環境を構築することで、以下のようなことが可能になります。
ストレージを持たないコンピュータの起動: HDDなどのストレージを持たないシンクライアントに、OSイメージをネットワーク経由で送り込み、動作させることができます。
インストールメディアがないコンピュータへのOSインストール: DVDドライブなどのインストールメディアがない
コンピュータに対して、インストールイメージをネットワーク経由で送り込み、インストーラーを起動させることができます。
PXEによるネットワーク
ブートには、以下の構成要素が必要です。
1.
クライアント: PXEに準拠したファームウェアが組み込まれたNIC(ネットワークインターフェースカード)が必要です。このファームウェアは、ネットワーク経由で
ブートローダーを取得し、実行する役割を担います。
2.
ネットワーク上のサーバ: 以下の
サーバーが必要です。
DHCPサーバ(またはBOOTPサーバ): クライアントにIPアドレスを割り当てる役割を担います。また、PXEブートに必要なオプション(OPTION 60, 66, 67)を提供します。
TFTPサーバ:
ブートローダをクライアントに送信する役割を担います。DHCP
サーバのOPTION 67で指定されたファイル名で起動イメージが用意されている必要があります。
(オプション) WWWサーバ、FTPサーバ: 起動イメージがHTTPやFTPに対応している場合、オペレーティングシステムやインストーラーのイメージをWWWサーバやFTPサーバから別途配布する構成が一般的です。
DHCPオプション
DHCPサーバは、PXEブートに必要な以下のオプションを提供します。
OPTION 60: Client Identifier(クライアントの識別子)
OPTION 66: TFTP Server Name(TFTPサーバのアドレス)
OPTION 67: Boot File Name(
ブートローダーのファイル名)
ProxyDHCP
既存のDHCP
サーバの設定を変更せずにPXE
ブート環境を構築したい場合は、ProxyDHCPを使用します。ProxyDHCPは、既存のDHCP
サーバとクライアントとの通信を仲介し、PXE
ブートに必要なオプションを付加します。Windows向けのWindows展開サービス(WDS)も同様の仕組みで機能しています。
PC起動時のPXEエラーメッセージ
PXE ROMを搭載した
コンピュータが、ハードディスクなどの起動デバイスからOSを読み込めない場合、起動時にPXEという文字列を含むエラーメッセージが表示されることがあります。
これは、PXEが起動リソースを検索した結果見つからなかったことを示しており、DHCP
サーバやLANケーブルの接続を確認するように促すメッセージです。具体的には、BIOSなどの起動デバイス設定において、ネットワーク
ブートが有効になっているにも関わらず、ネットワーク
ブートに失敗した場合に表示されます。
もし、ネットワーク
ブートを利用していない環境でこのエラーメッセージが表示された場合は、BIOSの起動デバイス設定に問題があるか、または起動に使用するハードディスクに異常が発生している可能性が考えられます。
PXE関連技術
DHCP: 動的なIPアドレスの割り当てを行うプロトコル。
BOOTP: DHCPの前身となるプロトコル。
TFTP: シンプルなファイル転送プロトコル。
WinINSTALL: PXEを実装したPC統合管理ツール。
iPXE: オープンソースのPXE実装。
UEFI: BIOSの後継となるファームウェア。
BIOS: PCの基本ソフトウェア。
参考文献
Intel and Systemsoft, Preboot Execution Environment (PXE) Specification, Version 2.1, 1999.