ソリューション:
この情報では、PXE ブートが失敗する原因となる問題については詳しく説明していません。このドキュメントでは、PXE ブートを成功させるための要件について説明し、PXE サーバーを使用できない場合の対応について説明します。
PXE リモートブートプロセスは DHCP プロトコルに基づきます。PXE の動作原理を理解するには、まず DHCP の基礎を理解しておく必要があります。
Dhcp
DHCP は、一般に BootP と呼ばれるブートストラップ・プロトコルをベースとしており、これによりシステムは IP アドレスを取得し、ネットワークからリモートブートを行うことができます。DHCP は、システム情報を渡すための動的 IP アドレス指定、オプションフィールドなどの機能を追加します。
DHCP プロセスは、クライアントが DHCP 検出メッセージを使用してアドレスを要求することによって開始されます。この検出メッセージは、発信元ポートが 68 (Bootp クライアントの場合は Bootpc として定義されています)、宛先ポート 67 (Bootp サーバーの場合は Bootpc として定義) で、UDP パケットです。このディスカバー・メッセージには、送信元 MAC アドレスとして要求元ノードの MAC アドレスと、送信先 MAC アドレスとしてのブロードキャスト (すべて F) が表示されます。送信元 IP アドレスは0.0.0.0 で、宛先 IP アドレスは 255.255.255.255 (ブロードキャスト) です。要求には、最低限次のオプションが含まれています。
1つ以上の DHCP サーバーが DHCP サービスに応答する必要があります。DHCP OFFER メッセージは、宛先アドレスとしてサービスを要求しているクライアントの MAC アドレスを持つ UDP パケットです。ポートは元のリクエストと逆のものにする必要があります (発信元ポートは67、宛先ポートは68でなければなりません)。送信元 IP アドレスはオファーを tendering したサーバーのアドレスで、宛先 IP アドレスはブロードキャストです。このオファーには、要求されたオプションのパラメーターに対して提案された IP アドレスと応答を含めます。
クライアントは、DHCP リクエストを使用して、1つのオファーに応答します。リクエストメッセージは、検出メッセージと類似の UDP パケットで、同じ送信元ポートとアドレスを使用し、同じパラメーターを要求します。
サーバーは、要求されたすべての情報を使用して、DHCP ACK (ack) で応答します。ACK メッセージは、offer メッセージと同様の UDP パケットであり、オプションの情報がリクエストされています。
DHCP への PXE 拡張
PXE ブートプロセスは、コンピューターをリモートブートするために必要な情報を追加することによって、DHCP プロトコルを拡張します。その情報には、クライアント・ベンダーとクラスが含まれ、PXE サーバーがクライアント固有の画像を選択できるようにします。
PXE ブートを要求するシステムは、DHCP 発見メッセージを使用してベンダーとマシンクラスを特定し、画像ファイルの場所とファイル名を要求します。Pxe クライアントは、PXE サーバー経由で複数の画像が利用可能になる可能性があるので、マシンのベンダーとクラスを特定します。
PXE クライアントからの DHCP 検出メッセージには、次のオプションのパラメーター要求が含まれます。
PXE ブートの Ethereal * または Wireshark * トレースの確認
PXE ブート・プロセスには多くの交換が含まれます。
メモ |
|
図1は、PXE クライアントからの DHCP DISCOVER メッセージの Ethereal キャプチャのスクリーンショットです。オプション 55 (パラメータ・リクエスト・リスト) がハイライトされ、リクエストされているパラメーターがリストされます。
また、パラメーターには、TFTP サーバー名 (オプション 66) およびブート・ファイル名 (オプション 67) のリクエストも含まれています。オプション60でベンダークラス id も要求されています。要求への応答はオプションであり、PXE サーバーが DHCP サーバー (DHCP プロキシを使用している) とは異なるサーバーに接続していることをクライアントに通知するために使用されます。
図 1.DHCP 検出
図2は、dhcp リクエストに対する DHCP ACK 応答を示しています。DHCP ACK には、DHCP OFFER に見られるのと同じオプションが含まれています。DHCP トランザクションが成功した場合、TFTP サーバーとブートファイル名がパケットに含まれていることに注意してください。
図 2.DHCP ACK
正常な DHCP 交換が終了した後、TFTP セッションが終了します。図3は、TFTP セッションの開始を示しています。
図 3.TFTP セッション。
図4は、pxe ブートが失敗した場合の、PXE サーバーが存在しないことによるトレースを示しています。PXE クライアントが TFTP サーバー名 (オプション 66) とブートファイル名 (オプション 67) を要求しましたが、表示される DHCP オファーにはオプション66または67は含まれません。この場合、PXE クライアントでは、PXE ブート操作を完了するために必要なオプションを持たない DHCP OFFER 応答の後に、dhcp OFFER 応答を繰り返し送信します。
図 4.DHCP OFFER
PXE サーバーを使用できない場合