外部AAA認証サービスによるDHCPクライアント認証
認証サポートの指定
表 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 (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
—xxxx.xxxx.xxxx
形式の文字列でのクライアント MAC アドレス。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
—インターフェイスIDオプション(オプション18)。(DHCPv6 ローカル サーバーまたは DHCPv6 リレー エージェントのみ)relay-agent-remote-id
—DHCPv6 リレー エージェント Remote-ID オプション(オプション 37)。(DHCPv6 ローカル サーバーまたは DHCPv6 リレー エージェントのみ)relay-agent-subscriber-id
—(ルータのみ)DHCPv6 Relay Agent 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