この記事では、管理者が Configuration Manager で PXE ブートエラーを診断して解決するのに役立つ、事前のトラブルシューティング手法について説明します。
元の製品バージョン: Configuration Manager (Current Branch)
元の KB 番号: 4491871
はじめに
PXE のしくみに関する重要な情報については、ConfigMgr での PXE ブートの を理解するに関するコンパニオン記事を参照してください。
「 Configuration Manager での PXE ブートの問題のトラブルシューティング」セクションに記載されている解決策は PXE ブートに影響するほとんどの問題を解決できます。
IP ヘルパーを使用するか、PXE を再インストールして PXE ブートの問題を解決できない場合は、次のトラブルシューティング手順を試してください。
同じサーバーで DHCP と WDS を共同ホストする場合の特別な考慮事項
動的ホスト構成プロトコル (DHCP) と WDS が同じコンピューターで共同ホストされている場合、WDS では、特定のポートでリッスンするための特別な構成が必要です。 この構成の概要については、「 Windows 展開サービスと動的ホスト構成プロトコル (DHCP)。 この記事によると、WDS と DHCP が同じサーバーで共同ホストされている場合は、次の操作を完了する必要があります。
次のレジストリの場所で、
UseDHCPPorts
の値を 0 に設定します。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WDSServer\Providers\WDSPXE
次の WDS コマンドを実行します。
WDSUTIL /Set-Server /UseDHCPPorts:No /DHCPOption60:Yes
この推奨事項では、 WDSUTIL
コマンドを実行するように WDS を構成する必要があります。 この推奨事項は、ConfigMgr PXE 対応 DP をインストールするときに WDS を構成しないベスト プラクティスと競合します。 ただし、WDSUTIL
コマンドを必要としない別の方法を使用して、WDSUTIL
コマンド (UseDHCPPorts
とDHCPOption60
) で指定されている 2 つの設定を構成できます。 この方法では、WDS を構成する必要はありません。
WDS を有効にせずにこれらの設定を構成するには、次のガイドラインに従います。
WDSUTIL
のUseDHCPPorts
スイッチは、実際には、次の場所でUseDHCPPorts
レジストリ キーを 0 の値に設定することと同じです。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WDSServer\Providers\WDSPXE
レジストリ キーが手動で設定されている場合、
UseDHCPPorts
スイッチを使用する必要はありません。 WDS がインストールされていない場合、このレジストリ キーが存在しない可能性があります。DHCPOption60
スイッチは、WDS サービスではなく DHCP サービスのオプションを構成します。WDSUTIL
を使用してこの DHCP オプションを設定する代わりに、同等の DHCP コマンドを使用して同じオプションを設定できます。 これを行うには、「リモート ブート サービスの DHCP の構成に関するページで説明されているように、netsh
コマンドを使用します。これらのガイドラインに従って WDS オプションを構成するには、開いている DHCP コンソールを閉じてから、管理者特権のコマンド プロンプトで次のコマンドを実行します。
netsh dhcp server \\<DHCP_server_machine_name> add optiondef 60 PXEClient String 0 comment=PXE support
netsh dhcp server \\<DHCP_server_machine_name> set optionvalue 60 STRING PXEClient
これらのコマンドは、DHCP サーバーで DHCP オプション 60 を設定して有効にします。 これらのコマンドを実行した後、DHCP コンソールに
060 PXE Client
ではなく、Unknown
という名前のオプションが表示された場合は、これらの設定を有効にするためにサーバーを再起動します。 再起動後、オプションが正しく表示されます。 この問題は通常、2 つのコマンドの実行時に DHCP コンソールが開いたままにされた場合にのみ発生します。
DHCP が別のサーバーに移動され、WDS をホストしているサーバーから削除された場合は、これらの手順を元に戻す必要があります。 WDS サーバーで次の手順に従います。
管理者特権のコマンド プロンプトで、次のコマンドを実行します。
REG ADD HKLM\SYSTEM\CurrentControlSet\services\WDSServer\Providers\WDSPXE /v UseDHCPPorts /t REG_DWORD /d 1 /f
管理者特権のコマンド プロンプトで次のコマンドを実行します。
netsh dhcp server \\<DHCP_server_machine_name> delete optionvalue 60
netsh dhcp server \\<DHCP_server_machine_name> delete optiondef 60 PXEClient
Note
これらのコマンドの最初のコマンドでは、DHCP オプション 60 が無効になります。 2 番目のコマンドは、DHCP オプション 60 を完全に削除します。
DHCP 検出のトラブルシューティング
PXE ブート プロセスの初期 DHCP 検出ステージのトラブルシューティングを開始する前に、次の点を考慮してください。
- SMSPXE.logでは、起動しようとしているデバイスの MAC アドレスまたは DHCPREQUEST が表示されます。 表示されない場合は、クライアントと DP の間にルーター構成の問題が存在する可能性があります。
- DHCP オプション 60、66、または 67 は使用しないでください。 サポートされていません。
- PXE 対応 DP と同じサブネット上のスイッチに接続されたときに、デバイスを起動できるかどうかをテストします。 可能であれば、問題にはルーターの構成が関係している可能性があります。
- クライアント コンピューター、DHCP サーバー、PXE DP の間で DHCP (67 および 68)、TFTP (69)、および BINL (4011) ポートが開いていることを確認します。
この段階では、参照するログはありません。 通常、PXE エラー コードは、WinPE が開始される前に PXE ブート プロセスが失敗した場合に表示されます。 表示される可能性があるエラー メッセージの例を次に示します。
- PXE-E51: DHCP または proxyDHCP オファーが受信されませんでした。
- PXE-E52: proxyDHCP オファーを受信しました。 DHCP オファーは受信されませんでした。
- PXE-E53: ブート ファイル名が受信されていません。
- PXE-E55: proxyDHCP サービスがポート 4011 の要求に応答しませんでした。
- PXE-E77 検出サーバーの一覧が正しくないか見つかりません。
- PXE-E78: ブート サーバーが見つかりませんでした。
トラブルシューティングの焦点を絞り込むのに役立ちますが、Netmon や WireShark などのネットワーク監視ツールを使用して、問題のネットワーク トレースをキャプチャしなければならない場合があります。 ネットワーク監視ツールは、PXE 対応 DP と、スイッチのミラー化されたポートに接続されているコンピューターの両方にインストールする必要があります。 ミラー化されたポートを設定する方法の詳細については、特定のスイッチまたはルーティング デバイスの製造元が提供するマニュアルを参照してください。
一般的な手順では、DP とミラー化されたポートに接続されているコンピューターの両方でネットワーク トレースを開始します。 PXE を使用してデバイスを起動してみてください。 次に、トレースを停止し、さらに分析するために保存します。
PXE 対応 DP からキャプチャされた DHCP 会話のサンプル トレースを次に示します。
PXE クライアントによる初期 DHCPDISCOVER の後に、DHCP サーバーと PXE DP から DHCPOFFER が続くことがわかります。 クライアント (0.0.0.0) からの要求が行われ、DHCP サーバー (10.238.0.14) によって確認されます。 PXE クライアントは IP アドレス (10.238.0.3) を持った後、PXE DP (10.238.0.2) に要求を送信します。 その DP は、ネットワーク ブート プログラムの詳細を返すことによって要求を確認します。
クライアントと DP で同時ネットワーク トレースをキャプチャして、会話が想定どおりに発生しているかどうかを判断します。 以下のガイドラインに従います。
- DHCP サービスが実行され、使用可能であることを確認します。
- WDS サービスが DP で実行されていることを確認します。
- サーバーとクライアントの間の DHCP ポートをブロックしているファイアウォールがないことを確認します。
- クライアント コンピューターが DP と同じサブネット上にあるときに起動できることを確認します。
- クライアント コンピューターが DP のサブネットとは異なるサブネットから起動している場合は、IP ヘルパーが正しく構成されていることを確認します。
TFTP 転送のトラブルシューティング
PXE ブートのエラーが TFTP を参照している場合は、ブート ファイルを転送できない可能性があります。 表示される可能性があるエラー メッセージの例を次に示します。
- PXE-E32: TFTP オープン タイムアウト
- PXE-E35: TFTP 読み取りタイムアウト
- PXE-E36: TFTP サーバーから受信したエラー
- PXE-E3F: TFTP パケット サイズが無効です
- PXE-E3B: TFTP エラー - ファイルが見つかりません
- PXE-T04: アクセス違反
これらのエラーをトラブルシューティングする良い方法は、Netmon または Wireshark を使用してネットワークを監視することです。 TFTP オープン タイムアウトが発生したときに PXE クライアントからキャプチャされるデータの例を次に示します。
ここでは、クライアントは Wdsnbp.com ファイルの読み取り要求を送信していますが、応答を受信していません。 これは、何かがクライアントによって受信確認を受信できないようにしていることを示します。 データの外観を次に示します。
このような場合は、次のトラブルシューティング方法を試すことができます。
PXE 対応 DP のブロック サイズを小さくする(KB 975710を参照してください。
WDS サービスが DP で開始されていることを確認します。
クライアント コンピューターと DP の間で TFTP ポートが開いていることを確認します。
REMINST 共有とフォルダーに対するアクセス許可が正しいことを確認します。
WDS ログで他の TFTP エラーがないか確認します。
RemoteInstall\SMSBoot\x86
フォルダーとRemoteInstall\SMSBoot\x64
フォルダーに次のファイルが含まれていることを確認します。フォントがフォルダー内
SMSBoot\Fonts
存在することを確認します。boot.sdi ファイルが
RemoteInstall\SMSBoot
フォルダーに存在することを確認します。
Windows PE のスタートアップに関する問題 - ドライバー
このフェーズで発生する最も一般的な問題は、ドライバー関連です。 全体的に、最新バージョンの Windows PE (WinPE) には、ほとんどのネットワーク ドライバーと大容量ストレージ ドライバーが含まれています。 必要なドライバーが含まれていない場合があります。 そのため、ブート WIM にインポートする必要があります。 このプロセスには、次のガイドラインが適用されます。
- ブート イメージに必要なドライバーのみをインポートします。
- NIC ドライバーまたは大容量記憶装置ドライバーのみを追加することを検討してください。 その他のドライバーは必要ありません。
SMSTS.log ファイル ( <SystemDrive>:\Windows\temp\SMSTS) は、これらの問題のトラブルシューティングに最も役立つリソースです。 (このファイルを調べることができるように、起動時にコマンド プロンプトを有効にすることを忘れないでください)。有効な IP アドレスを持ち、次のエントリのようなログ エントリが表示されない場合は、ドライバーの問題が発生している可能性があります。
SMSTS.log
Found network adapter "Intel 21140-Based PCI Fast Ethernet Adapter (Emulated)" with IP Address <IP address>
この状況を確認するには、F8 キーを押し、コマンド プロンプトで IPCONFIG
を実行して、NIC が認識され、有効な IP アドレスがあるかどうかを判断します。
WIM ファイル
また、x86 ブート イメージと x64 ブート イメージの両方が DP に存在することを確認します。 次のディレクトリに WIM が表示され、コンテンツ ライブラリにも表示されます。
C:\RemoteInstall\SMSImages\<PackageID>
PXE 対応配布ポイントからこのブート イメージを展開ブート イメージのプロパティに設定されていることを確認します。
Configuration Manager ポリシーの問題
PXE ブートに影響するもう 1 つの一般的な問題は、タスク シーケンスの展開です。 次の例では、タスク シーケンスは不明なコンピューターに展開されていますが、既にデータベースにあります。 最初の現象は、PXE ブートが中止されていることです。
さらに調査すると、SMSPXE ログに次のエントリが表示されます。
SMSPXE.log
Client lookup reply: <ClientIDReply><Identification Unknown="0" ItemKey="16777299" ServerName=""><Machine><ClientID/><NetbiosName/></Machine></Identification></ClientIDReply>
MP_LookupDevice succeeded: 16777299 1 16777299 1 0
00:15:5D:00:19:CA, 32E5B71A-B626-4A4B-902E-7F94AD38B5B3: device is in the database.
Client boot action reply: <ClientIDReply><Identification Unknown="0" ItemKey="16777299" ServerName=""><Machine><ClientID/><NetbiosName/></Machine></Identification><PXEBootAction LastPXEAdvertisementID="" LastPXEAdvertisementTime="" OfferID="" OfferIDTime="" PkgID="" PackageVersion="" packagePath="" BootImageID="" Mandatory=""/></ClientIDReply>
Client Identity:
00:15:5D:00:19:CA, 32E5B71A-B626-4A4B-902E-7F94AD38B5B3: SMSID= OfferID=, PackageID=, PackageVersion=, BootImageID=, PackagePath=, Mandatory=0
00:15:5D:00:19:CA, 32E5B71A-B626-4A4B-902E-7F94AD38B5B3: no advertisements found
00:15:5D:00:19:CA, 32E5B71A-B626-4A4B-902E-7F94AD38B5B3: No boot action. Aborted.
00:15:5D:00:19:CA, 32E5B71A-B626-4A4B-902E-7F94AD38B5B3: Not serviced.
このエントリでは、NBS ストアド プロシージャが実行されたときに、使用可能なポリシーが見つからなかったことがわかります。 そのため、ブート アクションは中止されました。 逆の場合も true になります。 つまり、コンピューターが不明であるが、タスク シーケンスが既知のコンピューターのコレクションに展開されている場合です。
次のトラブルシューティング手順を試すことができます。
- 再起動しようとしているコンピューターが、タスク シーケンス展開の対象となるコレクションに存在することを確認します。
- DP の 不明なコンピューターサポート PXE 設定をオンにしていることを確認します。
- 不明なコンピューターにタスク シーケンスを展開する場合は、コンピューターがまだデータベースに存在していないことを確認します。
さらにサポートが必要な場合
この問題の解決に関する詳細については、TechNet サポート フォーラムまたはMicrosoft サポートを参照してください。
サードパーティの情報に関する免責事項
この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。 明示的か黙示的かにかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。
サードパーティのお問い合わせ窓口に関する免責事項
サードパーティのお問い合わせ窓口に関する情報は、ユーザーの便宜のために提供されているものであり、 この連絡先情報は、予告なしに変更される可能性があります。 マイクロソフトは、掲載されている情報に対して、いかなる責任も負わないものとします。