NetBoot クライアントがサーバから起動しない場合
NetBoot サービスをサーバから利用できるはずなのに、一部のクライアントを起動できないことがあります。原因究明のため、サーバのログメッセージを調べてください。
サーバのログメッセージを調べる
メッセージを調べて、クライアントとサーバ間の通信が途絶えた時点を突き止めます。それがわかれば、NetBoot の問題の原因を見極める上で役に立ちます。
OS X 10.11 以前をお使いの場合は、NetBoot サーバの「/var/log/system.log」ファイルを調べてください。
macOS Sierra 10.12 以降では、コンソールアプリを使ってフィルタを作成し、NetBoot サーバ上のメッセージをリアルタイムで確認できます。
検索フィールドに「bootpd」と入力して「return」キーを押します。
表示されるリストで「プロセス」を選択します。この検索条件を保存しておく場合は、「保存」をクリックします。
NetBoot サーバ上の bootpd プロセスでログに記録されるメッセージをリアルタイムで確認するには、以下のコマンドを実行します。
sudo log stream --process bootpd
NetBoot サーバ上のシステムログデータストアに記録されているメッセージを見るには、以下のコマンドを実行します。
sudo log show --predicate 'senderImagePath contains "bootpd"'
macOS Server 10.12 以降で確認すべきサーバのログメッセージ
DHCP (Dynamic Host Configuration Protocol) が有効になっているかどうかに応じて、以下のいずれかのセクションで取り上げているサーバメッセージを確認してください。
NetBoot サーバで DHCP が有効になっている場合
以下の DHCP DISCOVER、OFFER、REQUEST サーバログメッセージを探してください。以下の例はいずれも、macOS Sierra および Server 5.2 を実行しているサーバのものです。
DHCP DISCOVER
DHCP DISCOVER [en3]: 1,40:6c:8f:37:95:27
クライアントから送信される、ネットワーク上の DHCP サーバの検出リクエストです。
このメッセージが記録されていない場合、何らかの理由で bootp (DHCP) トラフィックが阻止されている可能性があります。サーバとクライアント間のネットワークデバイス (ファイアウォールや管理対象のスイッチなど) が正しく設定されているか確認してください。
OFFER
OFFER sent MacBook-Air 192.168.1.200 pktsize 300
この DHCP メッセージは、クライアントコンピュータに DHCP のリースについて提示したことを示しています。
NetBoot サーバで DHCP サービスを使っているのにこのメッセージが表示されない場合は、以下のいずれかの理由で、サーバが IP アドレスをリースできないと判断した可能性があります。
有効なサブネットが、IP アドレスの範囲外にある。
有効なサブネットがない。
ACK
ACK sent MacBook-Air 192.168.1.200 pktsize 300
このメッセージは、DHCP サーバが提示した IP アドレスをクライアントが受け入れたことをサーバ側で確認した印です。DHCP サーバは、クライアントがアドレスを使い始めたことを認識し、DHCP リース期間がこの時点から始まります。
DHCP INFORM
DHCP INFORM [en3]: 1,40:6c:8f:37:95:27
これは、クライアントが DHCP オプションを取得するためにサーバに送信する DHCP メッセージです。
NetBoot サーバで DHCP が無効になっている場合
DHCP を無効にしている場合は、BSDP (Boot Service Discovery Protocol) のサーバログメッセージを探してください。以下の例はいずれも、macOS Sierra および Server 5.2 を実行しているサーバのものです。
BSDP INFORM
BSDP INFORM [en3] 1,40:6c:8f:37:95:27 NetBoot001 arch=i386 sysid=MacBookAir5,2
BSDP (NetBoot) サーバからの応答を生成するために、クライアントが送信する BSDP メッセージです。クライアントは自身を MAC (Media Access Control) アドレスで識別します。このメッセージにより、クライアントコンピュータの種類が伝達されるため、サーバ側でそのクライアントを起動できるかどうかを判断できます。BSDP では、クライアントとサーバ間の通信に DHCP オプション 43 を使います。
サーバは、以下の場合にこのメッセージをログに記録します。
クライアントでシステム環境設定の「起動ディスク」パネルが開いたとき。
ユーザが起動中に「option」キーを押し続けたとき。この場合は通常、この BSDP INFORM メッセージが表示され、その次に BSDP ACK[LIST] メッセージが表示されます。
クライアントで起動元として NetBoot イメージが選択されたとき。この場合は通常、この BSDP INFORM メッセージが表示され、その次に BSDP ACK[SELECT] メッセージが表示されます。
このメッセージが表示されない場合は、サーバとクライアント間にあるファイアウォール、管理対象のスイッチ、その他のネットワークデバイスが bootp (DHCP) トラフィックを阻止している可能性があります。該当するデバイスの構成を調べてください。
BSDP ACK[LIST]
NetBoot: [1,40:6c:8f:37:95:27] BSDP ACK[LIST] sent 192.168.1.200 pktsize 344
このメッセージから、サーバが応答し、利用できる NetBoot イメージのリストを返したことがわかります。
BSDP ACK[SELECT]
NetBoot: [1,40:6c:8f:37:95:27] BSDP ACK[SELECT] sent 192.168.1.37 pktsize 358
このメッセージは、クライアントで選択された NetBoot イメージを BSDP サーバが認識したことを示しています。
OS X Server 10.11 以前で確認すべきサーバのログメッセージ
以下に記載しているサーバメッセージを確認してください。以下の例はいずれも、Mac OS X Server 10.6 を実行しているサーバのものです。それよりも新しいバージョンの Mac OS X Server のログエントリも、さほど変わりはありません。
BSDP INFORM
server bootpd[726]: BSDP INFORM [en0] 1,0:3:93:8d:e0:f4 NetBoot006 arch=ppc sysid=PowerMac4,2
BSDP (NetBoot) サーバからの応答を生成するために、クライアントが送信する BSDP メッセージです。クライアントは自身を MAC アドレスで識別しています。このメッセージにより、クライアントコンピュータの種類が伝達されるため、サーバ側でそのクライアントを起動できるかどうかを判断できます。
サーバは、以下の場合にこのメッセージをログに記録します。
クライアントでシステム環境設定の「起動ディスク」パネルが開いたとき。
ユーザが起動中に「option」キーを押し続けたとき。この場合は通常、この BSDP INFORM メッセージが表示が表示され、その次にBSDP ACK[LIST] メッセージが表示されます。
クライアントで起動元として NetBoot イメージが選択されたとき。この場合は通常、この BSDP INFORM メッセージが表示され、その次に BSDP ACK[SELECT] メッセージが表示されます。
BSDP ACK[LIST]
server bootpd[726]: NetBoot: [1,0:3:93:8d:e0:f4] BSDP ACK[LIST] sent 192.168.1.12 pktsize 416
このメッセージから、サーバが利用できる NetBoot イメージのリストを送信したことがわかります。
BSDP ACK[SELECT]
server bootpd[726]: NetBoot: [1,0:3:93:8d:e0:f4] BSDP ACK[SELECT] sent 192.168.1.12 pktsize 450
このメッセージは、クライアントで選択された NetBoot イメージを BSDP サーバが認識したことを示しています。
DHCP INFORM
server bootpd[726]: DHCP INFORM [en0]: 1,0:3:93:8d:e0:f4
これは、クライアントが DHCP オプションを取得するためにサーバに送信する DHCP メッセージです。
BSDP DISCOVER
server bootpd[726]: BSDP DISCOVER [en0] 1,0:3:93:8d:e0:f4 NetBoot006 arch=ppc sysid=PowerMac4,2
このメッセージは、クライアントが BSDP メッセージを送信して NetBoot を試したことを示しています。クライアントは自身を MAC アドレスで識別しています。このメッセージにより、クライアントコンピュータの種類が伝達されるため、サーバ側でそのクライアントを起動できるかどうかを判断できます。
この BSDP メッセージがログに記録されていない場合は、ネットワーク接続を調べてください。サーバがクライアントと通信できていない可能性があります。
BDSP OFFER
server bootpd[726]: BSDP OFFER sent [1,0:3:93:8d:e0:f4] pktsize 447
このメッセージから、以下のことがわかります。
サーバが DISCOVER リクエストを受信した。
サーバがクライアントを起動できると判断した。
サーバがクライアントに NetBoot を提案するメッセージを送信した。
ログにこのエントリが記録されていない場合は、サーバがクライアントを起動できないと判断したという意味です。この状況は、以下の場合に起きることがあります。
サーバでフィルタが有効になっている。Server アプリで、「フィルタ」タブを調べてください。
イメージでフィルタが有効になっている。Server アプリで、「イメージ」タブをクリックし、イメージをダブルクリックしてください。
クライアントがサーバ上で有効な NetBoot イメージまたは NetInstall イメージを見つけられない。
DHCP DISCOVER
server bootpd[726]: DHCP DISCOVER [en0]: 1,0:3:93:8d:e0:f4
このメッセージは、クライアントが IP アドレスをリクエストしたことを示しています。このリクエストはサーバに固有のものではなく、単にネットワークセグメント上でメッセージが送信されたことを示しています。リクエストは、このサーバのみを対象として送られたものではありません。このメッセージは、DHCP サービスが NetBoot サーバで有効になっている場合にのみ表示されます。
NetBoot サーバで DHCP サービスを使っているのにこのメッセージが表示されない場合は、サーバとクライアント間にあるファイアウォール、管理対象のスイッチ、その他のネットワークデバイスが bootp (DHCP) トラフィックを阻止している可能性があります。該当するデバイスの構成を調べてください。
OFFER
server bootpd[726]: OFFER sent 192.168.1.12 pktsize 300
このメッセージは、サーバがクライアントコンピュータに DHCP リースについて提示したことを示しています。
NetBoot サーバで DHCP サービスを使っているのにこのメッセージが表示されない場合は、以下のいずれかの理由で、サーバが IP アドレスをリースできないと判断した可能性があります。
有効なサブネットが IP アドレスの範囲外にあるとサーバが判断した。
有効なサブネットがないとサーバが判断した。
DHCP REQUEST
server bootpd[726]: DHCP REQUEST [en0]: 1,0:3:93:8d:e0:f4
IP アドレスを申請する、クライアントからの DHCP リクエストです。このメッセージは、DHCP サービスが NetBoot サーバで有効になっている場合にのみ表示されます。
HTTP NetBoot を使っている場合
Web ディレクトリに対するアクセス権を確認してください。ストレージデータが起動ディスク上にある場合は、「/Library/Server/Web/Data/Sites/Default/NetBoot」でアクセス権を確認できます。アクセス権は以下のようになっているはずです。
drwxr-xr-x 3 root wheel 102 (タイムスタンプ) /Library/Server/Web/Data/Sites/Default/NetBoot/
ディスクレスの NetBoot (AFP) を使っている場合
サーバの NetBoot 接続数の上限を上回った場合、クライアントは起動しません。サーバで、最大接続数とクライアントの「エージングタイム」の値を増やしてください。後者の値によって、利用可能な接続をサーバが再利用する間隔が決まります。
ネットワークインストールおよび Server ソフトウェアは、以下の素材のインストールおよび複製に限り利用できます。
著作権のない素材
自分で著作権を保有している素材
複製を許可または法律上認可されている素材
ネットワークインストールおよび Server ソフトウェアの使用許諾契約は、以下の条件が保証される限りにおいて、ソフトウェアの使用を許諾します。
イメージファイルに含まれているすべてのソフトウェアに関するソフトウェア使用許諾契約の条項を各エンドユーザに周知徹底させること。
エンドユーザ全員がソフトウェア使用許諾の条項に従うように徹底すること。