DHCPローカルサーバーからのクライアントの動的再設定
拡張DHCPローカルサーバークライアントの動的再設定について
クライアントの動的な再設定により、拡張DHCPローカルサーバーは、クライアントからのリクエスト開始を待たずに、クライアントの更新を開始できます。
- デフォルトのクライアント/サーバーインタラクション
- DHCPv4のための動的なクライアント/サーバー相互作用
- DHCPv6の動的なクライアント/サーバー相互作用
- ローカルサーバーに再設定プロセスを手動で強制的に開始させる
- 再設定中に発生したイベントに対して実行されるアクション
- DHCPローカルサーバークライアントの動的再設定の利点
デフォルトのクライアント/サーバーインタラクション
通常、DHCP クライアントは、すべての基本的な DHCP クライアント/サーバー通信を開始します。DHCP サーバーは、クライアントからの要求に応答してのみクライアントに情報を送信します。この動作では、サーバーが変更された場合に、クライアントのネットワークアドレスと設定を迅速に更新することはできません。
技術的には、DHCP クライアント/サーバーのやり取りはルーターとスイッチで同じです。ただし、ルーターでのこのテクノロジーの主な用途は、加入者管理です。スイッチは加入者管理には使用されません。そのため、このトピックでは 2 つのサンプル シナリオを提供します。アクションは同じですが、実装の詳細は異なります。
ルーター上:サービスプロバイダがアドレス指定スキームを再構築するか、クライアントに提供したサーバーIPアドレスを変更したとします。動的な再設定を行わない場合、サービスプロバイダは通常、DHCPサーバーバインディングテーブルをクリアしますが、バインディングがクリアされたことをDHCPクライアントに通知することはできません。その結果、DHCP クライアントは IP アドレスがまだ有効であるかのように動作しますが、アクセス ネットワークを介して通信できなくなり、停止が発生します。DHCP ローカルサーバーは、クライアントがリースを更新するか、サーバーに再バインドするためのメッセージを送信するのを待つ必要があります。これに応じて、サーバーはクライアントにNAKメッセージを送信し、クライアントにDHCP接続プロセスを強制的に再開します。または、プロバイダは、顧客がネットワーク障害についてサービスコールを行うのを待ってから、顧客宅内機器の電源を入れ直して接続を再開するよう指示することもできます。これらの行動のいずれも、お客様にとってタイムリーでも便利でもありません。
スイッチ上:アドレス指定スキームを再構築するか、DHCPサーバーがクライアントに提供するサーバーIPアドレスを変更するとします。動的な再設定を行わない場合、ネットワークは通常、DHCP サーバー バインディング テーブルをクリアしますが、バインディングがクリアされたことを DHCP クライアントに通知することはできません。その結果、DHCP クライアントは IP アドレスがまだ有効であるかのように動作しますが、アクセス ネットワークを介して通信できなくなり、停止が発生します。DHCP ローカルサーバーは、クライアントがリースを更新するか、サーバーに再バインドするためのメッセージを送信するのを待つ必要があります。これに応じて、サーバーはクライアントにNAKメッセージを送信し、クライアントにDHCP接続プロセスを強制的に再開します。または、ユーザーがネットワーク障害を通知するのを待ってから、機器の電源を入れ直して接続を再開するように指示することもできます。これらのアクションはどちらも、ユーザーにとってタイムリーでも便利でもありません。
DHCPv4のための動的なクライアント/サーバー相互作用
DHCPv4の動的な再設定は、RFC 3203(DHCPv4用 DHCP再設定拡張 )の一部実装を通じて行うことができます。DHCPv4ローカルサーバーがクライアントにメッセージを送信して、再設定を強制できるようにします。
サーバーは、DHCPv4クライアントにforcerenewメッセージを送信し、メッセージ交換を開始します。これに応じて、forcerenewメッセージをサポートするDHCPv4クライアントは、リース更新メッセージをサーバーに送信します。サーバーがリース更新リクエストを拒否し、クライアントにNAKを送信すると、クライアントがDHCP接続を再開します。再接続に成功すると、DHCP クライアントが再設定されます。RFC 3202 からサポートされているのは、forcerenew、renew、NAK メッセージの交換のみです。DHCPリレーとDHCPリレープロキシは、クライアントの再設定には参加せず、強制更新メッセージに対しては、クライアントに転送する以外には反応しません。
ローカルサーバーのステートマシンがバインドされたクライアントで再設定プロセスを開始すると、クライアントは再設定状態に移行し、ローカルサーバーはクライアントにforcerenewメッセージを送信します。再設定状態に入る前は、クライアントがバインド状態にあったため、転送や統計情報など、すべての加入者サービスまたはDHCP管理サービスは引き続き動作します。再設定が成功してからその後のクライアントバインディングまでの間は、クライアント統計情報は維持されません。サーバーがクライアント更新リクエストにNAKで応答すると、クライアントエントリがバインディングテーブルから削除され、最終的な統計情報が報告されます。クライアントが新しいセッションを確立するためにディスカバリーメッセージを送信すると、新しい統計が収集されます。
DHCPv6の動的なクライアント/サーバー相互作用
DHCPv6の動的な再設定は、RFC 3315、 Dynamic Host Configuration Protocol for IPv6(DHCPv6)の一部実装によって利用できます。DHCPv6ローカルサーバーがクライアントにメッセージを送信して、再構成を強制できるようにします。
DHCPv6サーバーは、再構成メッセージをDHCPv6クライアントに送信し、メッセージ交換を開始します。これに応じて、再設定メッセージをサポートするDHCPv6クライアントは更新状態に移行し、サーバーに更新メッセージを送信します。サーバーは、ライフタイムがゼロ(0)の応答メッセージを返します。クライアントはinit状態に移行し、要請メッセージを送信します。サーバーは、サービスが利用可能であることを示すアドバタイズメッセージを送信します。クライアントから設定パラメーターの要求が送信され、サーバーはそれを返信に含めます。DHCP リレーと DHCP リレー プロキシは、クライアントの再設定には参加せず、クライアントに転送する以外はメッセージの再設定に反応しません。
DHCPv6サーバーが、バインドされたDHCPv6クライアントで再設定を開始するようにトリガーされると、クライアントは再設定状態に移行します。転送や統計情報など、すべての加入者サービスは引き続き機能します。次に、サーバーは再構成メッセージをクライアントに送信します。DHCPv6クライアントがすでに再設定状態にある場合、DHCPv6サーバーは再設定トリガーを無視します。バインドまたは再構成以外の状態のクライアントの場合、サーバーは、 clear dhcpv6 server binding コマンドが発行されたかのように、クライアントのバインディング状態をクリアします。
ローカルサーバーに再設定プロセスを手動で強制的に開始させる
DHCPv4クライアントの場合は request dhcp server reconfigure コマンドを、DHCPv6クライアントの場合は request dhcpv6 server reconfigure コマンドを発行することで、ローカルサーバーにクライアントの再設定プロセスを強制的に開始させることができます。コマンドオプションによって、すべてのクライアントまたは指定されたクライアントに対して再設定を試みるかどうかが決定されます。
再設定中に発生したイベントに対して実行されるアクション
再設定の処理中に発生するイベントは、再設定よりも優先されます。 表1は 、いくつかの異なるイベントに対応して実行されたアクションを示しています。
イベント |
アクション |
|---|---|
サーバーは、クライアントから検出(DHCPv4)または送信請求(DHCPv6)メッセージを受信します。 |
サーバーはパケットをドロップし、クライアントを削除します。 |
サーバーは、クライアントからリクエスト、更新、リバインド、またはinit-rebootメッセージを受信します。 |
DHCPv4—サーバーはNAKメッセージを送信し、クライアントを削除します。 DHCPv6—サーバーはパケットをドロップし、クライアントを削除します。サーバーは、リース時間がゼロ(0)の更新メッセージを返信します。 |
サーバーは、クライアントからリリースまたは拒否メッセージを受信します。 |
サーバーがクライアントを削除します。 |
クライアントリースがタイムアウトします。 |
サーバーがクライアントを削除します。 |
|
サーバーがクライアントを削除します。 |
|
コマンドは無視されます。 |
GRES または DHCP 再起動が発生します。 |
再構成プロセスが停止されます。 |
DHCPローカルサーバークライアントの動的再設定の利点
DHCP ローカルサーバーが DHCP クライアントを動的に再設定できるようにすることで、サーバーの設定変更によって、クライアントがリースの更新やサーバーへの再バインドを待つ必要になるような長期の停止を回避できます。
拡張ローカルサーバークライアントの動的再設定の概要
DHCP クライアントの動的再設定の試み
forcerenewまたはreconfigureメッセージを送信することで、ローカルサーバーがDHCPクライアントの再設定を開始する試行回数を設定することができます。また、サーバーが試行の間隔を待つ時間を指定することもできます。デフォルトでは、8 回試行され、最初の間隔は 2 秒です。
連続して試行するたびに、試行の間隔が 2 倍になります。例えば、最初の値が 2 の場合、最初の試行が失敗してから 2 秒後に最初の再試行が試行されます。2回目の再試行は、1回目の再試行が失敗してから4秒後に試行されます。3回目の再試行は、2回目の再試行が失敗してから8秒後に試行されます。グループ設定は、DHCPローカルサーバー設定よりも優先されます。
(オプション)すべてのDHCPクライアントのDHCPローカルサーバー再設定動作を設定するには:
特定のクライアントグループのグローバル設定を上書きするには、 [edit system services dhcp-local-server group group-name reconfigure] 階層レベルまたは [edit system services dhcpv6 dhcp-local-server group group-name reconfigure] 階層レベルでステートメントを含めます。
動的再設定に失敗した場合のクライアントの削除の設定
再構成の試行回数が最大数に達しなかった場合に、クライアントを削除するようにローカルサーバーを設定できます。デフォルトでは、クライアントの元の設定が復元されます。
(オプション)再設定に失敗した場合にクライアントを削除するようにDHCPローカルサーバーを設定するには、すべてのクライアントについて以下を行います。
クライアントの削除を指定します。
DHCPv4の場合:
[edit system services dhcp-local-server reconfigure] user@host# set clear-on-terminate
DHCPv6 の場合:
[edit system services dhcp-local-server dhcpv6 reconfigure] user@host# set clear-on-terminate
特定のクライアントグループのグローバル設定を上書きするには、 [edit system services dhcp-local-server group group-name reconfigure] 階層レベルまたは [edit system services dhcpv6 dhcp-local-server group group-name reconfigure] 階層レベルにステートメントを含めます。
RADIUS開始切断の受信時のクライアントの再設定の設定
クライアントが RADIUS 開始の切断を受信したときに、クライアントを再設定するようにローカル サーバーを設定できます。デフォルトでは、RADIUS が開始する切断を受信すると、クライアントが削除されます。
(オプション)すべてのクライアントについて、RADIUS 開始の切断を受信したときにクライアントを削除するのではなく、クライアントを再設定するように DHCP ローカルサーバーを設定するには:
RADIUS が開始する切断トリガーを指定します。
DHCPv4の場合:
[edit system services dhcp-local-server reconfigure trigger] user@host# set radius-disconnect
DHCPv6 の場合:
[edit system services dhcp-local-server dhcpv6 reconfigure trigger] user@host# set radius-disconnect
特定のクライアントグループのグローバル設定を上書きするには、 [edit system services dhcp-local-server group group-name reconfigure trigger] 階層レベルまたは [edit system services dhcpv6 dhcp-local-server group group-name reconfigure trigger] 階層レベルにステートメントを含めます。
DHCP ローカルサーバー認証用のトークンの設定
認証トークンを設定して、誤ってインスタンス化されたDHCPサーバーに対する基本的な保護を提供できます。ローカルサーバーがクライアントに送信する認証オプションの一部として、DHCP forcerenewメッセージに一定のエンコードされていないトークンを含めるように設定できます。サービスプロバイダが以前にDHCPクライアントをトークンで設定している場合、クライアントはそのトークンを新しく受信したトークンと比較できます。トークンが一致しない場合、DHCP クライアントは forcerenew メッセージを破棄します。この機能は、RFC 3118、 DHCPメッセージの認証、セクション4に対応しています。
(オプション)すべてのクライアントに対して、クライアントに送信されるforcerenewメッセージにトークンを含めるようにDHCPローカルサーバーを設定するには:
トークンを指定します。
DHCPv4の場合:
[edit system services dhcp-local-server reconfigure] user@host# set token token-value
DHCPv6 の場合:
[edit system services dhcp-local-server dhcpv6 reconfigure] user@host# set token token-value
(オプション)特定のクライアントグループのみ:
トークンを指定します。
DHCPv4の場合:
[edit system services dhcp-local-server group group-name reconfigure] user@host# set token token-value
DHCPv6 の場合:
[edit system services dhcp-local-server dhcpv6 group group-name reconfigure] user@host# set token token-value
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。