外部AAA認証サービスによるDHCPクライアント認証 AAA認証
認証サポートの指定
表1に示す階層レベルでauthenticationステートメントを含めます。グローバル認証サポートまたはグループ固有のサポートのいずれかを設定できます。
サポートされている階層レベル |
階層レベル |
|---|---|
DHCP ローカルサーバー |
|
DHCP リレー エージェント |
|
DHCPv6ローカルサーバー |
|
DHCPv6 リレー エージェント |
|
DHCP クライアントの一意のユーザー名の作成
DHCP クライアントがログインしたときに外部 AAA 認証サービスに渡されるユーザー名に追加情報を含めるように、拡張 DHCP アプリケーションを設定できます。この追加情報により、加入者(DHCP クライアント)を一意に識別するユーザー名を構築できます。
一意のユーザー名を設定するには、 username-include ステートメントを使用します。追加ステートメントの一部またはすべてを含めることができます。
authentication { username-include { circuit-type; client-id <exclude-headers> <use-automatic-ascii-hex-encoding>; delimiter delimiter-character; domain-name domain-name-string; interface-description (DHCP Local Server) (device-interface | logical-interface); interface-name; logical-system-name; mac-address; option-60; option-82 <circuit-id> <remote-id>; routing-instance-name; user-prefix user-prefix-string; } }
認証設定にユーザー名を含めない場合、ルーター(またはスイッチ)は認証を実行しません。ただし、IPアドレスはローカルプールが設定されている場合は、ローカルプールによって提供されます。
DHCPv6ローカルサーバーを使用する場合は、認証とクライアントユーザー名を設定する必要があります。そうしないと、クライアントログインに失敗します。
以下のリストでは、ユーザー名の一部として含めることができるオプション情報について説明します。
circuit-type—DHCP クライアントで使用される回線タイプ(例:enet)。client-id- クライアント識別子オプション(オプション 1)。(DHCPv6ローカルサーバーDHCPv6リレーエージェントのみ)delimiter—連結されたユーザー名を構成するコンポーネントを区切る区切り文字。デフォルトの区切り文字はピリオド(.)です。セミコロン(;)は区切り文字としてサポートされていません。domain-name—文字列としてのクライアントドメイン名。ルーターは、ユーザー名に@区切り記号を追加します。interface-description—デバイス(物理)インターフェイスまたは論理インターフェイスの説明。interface-name—インターフェイス名。インターフェイスデバイスと関連するVLAN IDが含まれます。logical-system-name—受信インターフェイスが論理システム内にある場合の論理システムの名前。mac-address—クライアントMACアドレス(xxxx.xxxx.xxxx形式の文字列)。option-60—オプション 60 ペイロードのうち、長さフィールドに続く部分。(DHCPv6ローカルサーバーではサポートされていません)option-82 <circuit-id> <remote-id>—オプション 82 ペイロードの指定されたコンテンツ。(DHCPv6ローカルサーバーではサポートされていません)circuit-id—エージェント回線IDサブオプションのペイロード。remote-id—エージェントリモートIDサブオプションのペイロード。circuit-idとremote-idの両方—両方のサブオプションのペイロード(circuit-id[delimiter]remote-idの形式)。circuit-idもremote-idも—PDUからのオプション82の未加工のペイロードはユーザー名に連結されます。
注:DHCP リレーエージェントの場合、ユーザー名の作成に使用されるオプション 82 の値は、発信(リレー)PDU にエンコードされたオプション 82 の値に基づきます。
relay-agent-interface-id- Interface-ID オプション(オプション 18)。(DHCPv6ローカルサーバーまたはDHCPv6リレーエージェントのみ)relay-agent-remote-id—DHCPv6 リレー エージェント リモート ID オプション(オプション 37)。(DHCPv6ローカルサーバーまたはDHCPv6リレーエージェントのみ)relay-agent-subscriber-id—(ルーターのみ)DHCPv6 リレー エージェント Subscriber-ID オプション(オプション 38)。(DHCPv6ローカルサーバーまたはDHCPv6リレーエージェントのみ)routing-instance-name—受信インターフェイスがルーティングインスタンスにある場合のルーティングインスタンスの名前。user-prefix—ユーザプレフィックスを示す文字列。vlan-tags—加入者VLANタグ。外部VLANタグと、内部VLANタグ(存在する場合)が含まれます。外部VLANタグがシステム全体で一意であり、基になる物理インターフェイス名をフォーマットに含める必要がない場合、interface-nameオプションの代わりにこのオプションを使用できます。
DHCPv6クライアントの場合、DHCPv6パケット形式にはクライアントMACアドレスの特定のフィールドがないため、MACアドレスは、以下の優先度を持つ複数のソースから取得されます。
クライアントDUIDタイプ1またはタイプ3
オプション79(クライアントリンクレイヤーアドレス)(存在する場合)。
クライアントが直接接続されている場合のパケット送信元アドレス
リンクローカルアドレス。
ルーター(スイッチ)は、指定された追加情報を次の順序でフィールドを区切り、一意のユーザー名を作成します。
DHCPローカルサーバーおよびDHCPリレーエージェントの場合:
user-prefix[delimiter]mac-address[delimiter]logical-system-name[delimiter]routing-instance-name[delimiter]circuit-type[delimiter]interface-name[delimiter]option-82[delimiter]option-60@domain-name
DHCPv6ローカルサーバーの場合:
user-prefix[delimiter]mac-address[delimiter]logical-system-name[delimiter]routing-instance-name[delimiter]circuit-type[delimiter]interface-name[delimiter]relay-agent-remote-id[delimiter]relay-agent-subscriber-id[delimiter]relay-agent-interface-id[delimiter]client-id@domain-name
例 - 外部認証サーバーを使用したDHCPの設定
DHCPローカルサーバー、DHCPv6ローカルサーバー、DHCPリレーエージェント、DHCPv6リレーエージェントレベルで認証を設定するには、次の手順に従います。
以下の例は、一意のユーザー名を作成する設定例を示しています。ユーザー名は設定後に表示されます。
authentication {
username-include {
circuit-type;
domain-name example.com;
mac-address 2001:db8::/32;
user-prefix wallybrown;
}
}
結果として得られる一意のユーザー名は次のとおりです。
wallybrown.2001:db8::/32.enet@example.com