本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
Ignite-UX 管理ガイド: HP-UX 11i > 第4章 ネットワークブート匿名クライアント用のサーバーの作成

匿名 Itanium ベースクライアントのブートに関する考慮事項

≫ 

テクニカル ドキュメント

PDF版
フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 用語集

 ≫ 索引

Itanium ベースシステムの PXE ブートについて

Itanium ベースシステムがネットワーク経由でブートする際に、PXE ブート要求が送出されます。 PXE プロトコルは DHCP の上層に構築されています。 このため、PXE ブート要求に応答するように構成された DHCP サーバーが複数あると、混乱が生じる可能性があります。

Itanium ベースシステムでは、どのサーバからブートサービスを受けるかという、ブート用のサーバーを指定することはできません。 つまり Itanium ベースには、PA-RISC のブートコマンドである boot lan.192.10.10.10 install に相当するコマンドは存在しません。このコマンドは、システムが IP アドレス 192.10.10.10 以外からの応答をすべて無視するように指示します。 これはサーバー選択機能です。

Itanium ベースシステムは、PXE ブート要求を送出し、受信した最初の PXE 応答からのブートを試みます。 一定時間内に PXE 応答を受信しなかった場合、システムは受信した最初の DHCP 応答を使用します。 これらのどの応答もネットワークブートに適さない場合には、PXE ブートの試行は失敗し、要求側システムのコンソールにエラーメッセージが表示されます。 PXE エラーで表示される情報は、通常は問題の原因を特定できるほど明確なものではありません (「ネットワークブートでよく起こるエラー」を参照)。

Itanium ベースシステムからの PXE ブート要求が発生するネットワークでは、正常なブートのための十分な情報を提供できる DHCP サーバーだけを、応答するように構成してください。 すべての DHCP 要求に応答する DHCP サーバーがある場合は、PXE 要求かどうかに関係なく、ほとんど間違いなく、Itanium ベースシステムからの PXE ブート要求が干渉されます。 PXE ブート要求に応答して通常の DHCP 応答を受信した場合、ブート要求は失敗します。

ブートの失敗に加えて、ブートサーバーの選択機能がないために間違ったオペレーティングシステムがインストールされるおそれがあります。 同じネットワーク上に異なるブート内容で応答する PXE サーバーがある場合、混乱が生じる可能性があります。 たとえば、Linux のブートをサポートしているシステムと HP-UX のブートをサポートしているシステムが同じネットワーク上にある場合、それぞれのシステムは PXE ブート要求への応答を送信でき、最初に応答したサーバーが使用されます。 どちらのサーバーがブートに使用されるかを予測することはできません。

DHCP サーバーからの PXE 要求への干渉は、DHCP サーバー側の構成の問題です。 HP-UX や Ignite-UX に固有の問題ではなく、ファームウェアによる PXE ブートの実行方法に関連する問題です。

重要: DHCP サーバーを構成する際は、Itanium ベースシステムの PXE ブート要求に応答するように構成された DHCP サーバーが、ネットワーク上に 1 台しか存在しないことを確認し、HP-UX をインストールする必要がある場合はそのサーバーで HP-UX が実行されていることを確認してください。

Ignite-UX の実行が開始されると、DHCP 要求を使用して、インストールやリカバリに使用される IP アドレスが必要に応じて取得されます。 この要求に対する class-id を指定するように、Ignite-UX を構成できます。

詳細は、付録 BDHCP サービスの構成 」、およびbootpd(1M) を参照してください。

HP-UX 11i v2 および 11i v3 Ignite-UX サーバーとブートヘルパーのセットアップ

HP-UX 11i v2 および 11i v3 では、Itanium ベースクライアントの匿名クライアントによる DHCP ブートを改善する dhcp_device_group オプションがサポートされています。 このオプションでは、DHCP デバイスプールグループ内で 2 つの構成キーワード re および ncid を使用します。

Ignite-UX サーバーまたはブートヘルパーシステムに、HP-UX 11i v2 以降がインストールされていることを確認します。

Ignite-UX サーバーまたはブートヘルパーシステム上の /etc/dhcptab ファイルに、デバイスプールグループのエントリを追加します。

bootpd がすでに実行されている場合は、再起動する必要はありません。 新しい bootp DHCP 要求を受信すると、bootp は構成ファイルを再度読み取る必要があるかどうかを調べます。 bootp による構成ファイルの再読み取りを強制する場合は、SIGHUP シグナルを送信します。

以下の DHCP デバイスグループの例は、匿名の Itanium ベースクライアントをサポートするのに最適な方法です。

dhcp_device_group:\ 
    re:\ 
    ncid:\ 
    class-id="PXEClient:Arch:00002:.*":\ 
    lease-time=300:\ 
    subnet-mask=255.255.255.0:\ 
    addr-pool-start-address=192.168.1.10:\ 
    addr-pool-last-address=192.168.1.20:\
    bf=/opt/ignite/boot/nbp.efi 

dhcp_device_group 節内のオプションを以下に示します。

dhcp_device_group

DHCP デバイスプールグループの始まりを示します。DHCP デバイスプールグループは、一致する class-id を持つブート要求を出したクライアントに対して、一定範囲の IP アドレスを割り当てるためのグループです。

re

class-id の照合で、デフォルトの完全一致方式ではなく、正規表現を使用するように指示します。 これは HP-UX 11i v2 の新しいオプションです。

ncid

メッセージ応答に class-id を含めないことを指示します。 bootpd は Intel Preboot Execution Environment (PXE) プロトコルを完全にはサポートしていないため、応答で class-id を送り返さないでください。 これは HP-UX 11i v2 の新しいオプションです。

class-id

PXE ブート要求は異なる種類のシステムから実行される可能性があります。 たとえば、Itanium ベースシステムと、HP ProLiant サーバーなどの業界標準サーバーが、それぞれ PXE ブート要求を行う可能性があります。 これらの異なる要求に対して同じ構成が使用される可能性はほとんどありません。 class-id を使用すると、正しいクライアントからの PXE 要求に応答しつつ、間違ったクライアントからの PXE 要求を無視できます。

Itanium ベースサーバーはすべて、32 文字の PXE ブート要求を次の形式で送信します。

PXEClient:Arch:00002:UNDI:xxxyyy

xxxyyy は、Universal Network Device Interface のリビジョンのメジャー番号とマイナー番号です。

HP ProLiant サーバーなどの業界標準サーバーは、次の形式で PXE ブート要求を送信します。

PXEClient:Arch:00000:UNDI:xxxyyy

xxxyyy は上記で説明したものと同じです。

上記の例で、dhcp_device_group 内の class-id は、PXEClient:Arch:00002 の後に 0 個以上の任意の文字が続くブート要求を持つクライアントにのみ応答するよう、bootpd デーモンに指示します。 業界標準サーバーからの要求は無視されます。

PXEClient を含むすべての DHCP ブート要求に応答するように構成された DHCP サーバーまたはブートヘルパーシステムは、Itanium ベースサーバーと業界標準サーバーの両方に応答します。 業界標準サーバー用に適した PXE 応答によって、Itanium ベースシステムがブートできる可能性はほとんどありません。

lease-time

IP アドレスを使用してシステムをブートする時間 (秒数)。 上記の例では 300 秒 (5 分) ですが、ネットワークがビジーの場合はより多くの時間が必要になることがあります。 トラフィック量の多いネットワークでは、インストールカーネルとファイルシステムをダウンロードする必要があるため、ブートに 10~15 分かかることがあります。 lease-time を増やすと、ブートに使用する IP アドレスが使い果たされるおそれがある、という問題があります。 この値を増やす場合は、同時にブートする可能性のあるシステムが利用できるように、プール内に十分な IP アドレスがあることを確認してください。

subnet-mask

クライアントで使用されるサブネットマスク。

addr-pool-start-address

このアドレスプールの最初の IP アドレス。

addr-pool-last-address

このアドレスプールの最後の IP アドレス。

重要: ncid オプションは、DHCP サーバに、クライアントのブート要求への応答に DHCP class-id を含めないよう指示するため、このオプションの使用は重大な意味を持ちます。 DHCP サーバーが PXE ブート要求に対して、DHCP class-id で応答を返す場合、ブート中の PXE クライアントは同じホスト上の PXE 代理サーバーと通信しようとします。 HP-UX は PXE 代理サーバーを提供しないため、ブートは失敗します。 ncid オプションを使用すると、この問題を解決できます。

デバイスプールグループを /etc/dhcptab ファイルに追加することで、HP-UX 11i v2 または 11i v3 Ignite-UX サーバーが Itanium ベースの匿名クライアントに応答するように構成されます。

重要: PXE ブート要求への応答を送信するサーバーは、PXE クライアントがそこからブートファイルの tftp を試みるシステムです。 Itanium ベースの PXE 要求への応答に HP-UX システムを使用していない場合は、新しい Ignite-UX がリリースされたときに、必要なブートファイルを更新して使用可能な状態にする必要があります。 HP ではこの種の構成はサポートしていません。

制御不可能な DHCP サーバーからの Ignite-UX の分離

制御することのできない DHCP サーバーがネットワーク上にある場合は、それらのサーバーから Ignite-UX を完全に分離することができます。 これには、class-id をインストール ファイル システムの dhcp_class_id キーワードに追加します。 詳細は、instl_adm(1M) およびinstl_adm(4) を参照してください。

ネットワークブート処理が完了してインストールカーネルが実行されると、Ignite-UX は再度 DHCP を使用して IP アドレスを取得します。 これは、Ignite-UX がファームウェアで使用する IP アドレスを特定する手段を持たないためです。 この動作を利用することで、HP-UX のブートとインストールを行うシステムからの DHCP 要求を、他の DHCP サーバー要求から分離できます。

HP-UX 11i v2 または 11i v3 を実行していて、Itanium ベースサーバーの PXE 要求用の DHCP デバイスグループをすでに構成している場合は、そのデバイスグループを分離のために再利用することができます。 たとえば、次をインストールファイルシステムに追加していたとします。

dhcp_class_id="IgniteDHCPDeviceGroup",

Itanium ベースの匿名 PXE ブート要求に応答する、DHCP デバイスグループ内の class-id を、次のように変更できます。

class-id="PXEClient:Arch00002:.*|IgniteDHCPDeviceGroup"

重要:

上記の class-id エントリーは、ネットワークブートを実行する Itanium ベースシステムの class-id、または /etc/dhcptab 内の IgniteDHCPDeviceGroup への応答を許可するように設計された正規表現です。 これは、Ignite-UX インストールファイルシステムでの使用に有効な class-id ではありません。 匿名の Itanium ベースシステムをインストールするために DHCP デバイスグループを使用しているシステムでは、インストール後 DHCP を介して取得される IP アドレスをシステムが使用しないようにするため、is_net_info_temporary TRUE に設定する必要があります。

正規表現による一致が使用されるので、| は"or"の意味となり、どちらの式に一致する class-id に対しても応答できます。 このエントリ例では、Itanium ベースシステムの最初のブート要求に応答できるだけでなく、Ignite-UX の稼働中における以降の DHCP 要求にも応答できます。

すべての DHCP class-id に応答する DHCP サーバーは、再構成するか、別のサブネットに分離する必要があります。

この項には、EFI からネットワークブートを行う際に、Ignite-UX をブートするシステムを他の DHCP または PXE ブートサーバーから分離するための参考情報は示してありません。 この項では、インストールされるシステムがネットワークブートを実行し、インストールカーネルとファイルシステムをダウンロードした後、他の DHCP サーバーがそのシステムと通信を行わないようにする方法を説明しています。

インストールカーネルとファイルシステムをロードした後、特定のサーバーからの DHCP オファーだけを受け入れるようにしたい場合は、インストールファイルシステムの dhpc_server キーワードを使用することを検討してください。 dhcp_server キーワードを使用しても、EFI/PXE ブートプロセスには影響しません。

bootpd を instl_bootd で置換

Itanium ベースシステムで DHCP サービスを実行していない場合は、bootpd デーモンを instl_bootd デーモンに置き換えることで、Itanium ベースクライアントと PA-RISC クライアントの両方について、登録済みクライアントと匿名クライアントのネットワークブートが可能になります。 詳細は、図 2-7 「Itanium ベースシステムのブート用にサーバーを構成する際のフローチャート」と以降の説明を参照してください。

重要: サーバーで現在 DHCP サービスを提供している場合は、bootpdinstl_bootd に置き換えないでください。 この手順は、bootpd の代わりに instl_bootd を実行するよう、Ignite-UX サーバーを構成するためのものです。 次の項の手順を実行することにより、システムが DHCP サービスを提供しないようにできます。

Ignite-UX サーバーで instl_bootd を使用するには、bootpd デーモンがサーバーで実行されていないことが必要です。 instl_bootd デーモンは、クライアントからのすべてのブート要求に応答します。 instl_bootd デーモンは通常、特定のネットワークポート (1067/1068) 上で動作し、PA-RISC クライアントのブートにのみ使用されます。 ただし、この場合は instl_bootd は標準の bootpd ポート (67/68) 上で動作します。

ネットワーク上で bootp を DHCP と一緒に実行している場合は、以下の手順を実行しないでくださいinstl_bootd デーモンは、あたかもシステムがネットワークブートを要求しているかのように、DHCP 要求に応答します。 ネットワーク上で bootp を DHCP と一緒に実行している場合は、別の手段を検討してください。

次の手順を実行して、bootpd の代わりに instl_bootd を実行するよう、Ignite-UX サーバーを構成します。

  1. Ignite-UX サーバーのセットアップが終了したら、ポート 67/68 上で bootpd を無効にします (/etc/inetd.conf ファイルで以下の行をコメントアウトします)。

    bootps dgram udp wait root /usr/lbin/bootpd bootpd

  2. /etc/inetd.conf に以下の行を追加して、ポート 67/68 上で instl_bootd デーモンを有効にします。

    bootps dgram udp wait root /opt/ignite/lbin/instl_bootd \ instl_bootd

  3. インターネットデーモン inetd を再起動して、ステップ 2 で変更したポートを有効にします。

    /usr/sbin/inetd -c

これで、Ignite-UX サーバーが匿名クライアントに応答するよう構成されました。 詳細は、instl_bootd(1M) およびinetd( 1M) を参照してください。

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© Hewlett-Packard Development Company, L.P.