RADIUS サーバ障害発生時順序変更
RADIUS サーバ障害発生時順序変更機能は、高負荷期間またはサーバで障害が発生した場合に、サーバ グループ内の別のサーバへのフェールオーバーを提供します。障害発生後は、すべての RADIUS トラフィックが新しいサーバに転送されます。新しいサーバからサーバ グループ内の別のサーバにトラフィックが切り替えられるのは、新しいサーバでも障害が発生した場合に限られます。トラフィックが自動的に最初にサーバに戻されることはありません。
RADIUS トランザクションを複数のサーバに分散させることによって、認証要求とアカウンティング要求がより迅速に処理されます。
機能情報の確認
ご使用のソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。最新の機能情報と注意事項については、ご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。この章に記載されている機能の詳細、および各機能がサポートされているリリースのリストについては、「RADIUS サーバ障害発生時順序変更の機能情報」 を参照してください。
プラットフォーム サポートと Cisco IOS および Catalyst OS ソフトウェア イメージ サポートに関する情報を入手するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator には、 http://tools.cisco.com/ITDIT/CFN/jsp/index.jsp からアクセスできます。Cisco.com のアカウントは必要ありません。
RADIUS サーバ障害発生時順序変更の前提条件
• 障害発生時に順序変更を実行するように RADIUS サーバを設定する前に、 aaa new-model コマンドを使用して、Authentication, Authorization, and Accounting(AAA; 認証、認可、およびアカウンティング)を有効にする必要があります。
• 認証、アカウンティング、静的ルート ダウンロードなどの機能用に RADIUS を設定する必要もあります。
RADIUS サーバ障害発生時順序変更の制約事項
• サーバ グループごとに新しい 4 バイトのメモリが消費されます。ただし、ほとんどのサーバは少数のサーバ グループのみに設定されているため、追加の 4 バイトはそれほど性能に影響しない可能性があります。
• Cisco IOS ソフトウェア セット内の RADIUS 機能によっては、この機能を使用できない場合があります。RADIUS 機能で RADIUS サーバ障害発生時順序変更機能を使用できない場合は、順序変更機能が設定されていないかのようにサーバが動作します。
RADIUS サーバ障害発生時順序変更に関する情報
RADIUS サーバ障害発生時順序変更機能を設定するには、次の概念を理解しておく必要があります。
• 「RADIUS サーバの障害」
• 「RADIUS サーバ障害発生時順序変更機能の動作方法」
RADIUS サーバの障害
RADIUS サーバ障害発生時順序変更機能が設定されていない状態でサーバの障害が発生した場合:
1. 新しい RADIUS トランザクションを実行する必要があります。
2. トランザクション用の RADIUS パケットが、グループ内で停止中としてマークされていない(設定されたデッドタイムに従って)最初のサーバに送信され、設定された再送回数だけ再送されます。
3. 再送のすべてがタイムアウトした(設定されたタイムアウトに従って)場合は、ルータがそのパケットをリストで次の非停止中サーバに設定された再送回数だけ送信します。
4. ステップ 3 は、トランザクションごとに指定された最大送信回数に達するまで繰り返されます。最大送信回数に到達する前にリストの最後に到達した場合は、ルータがリストの先頭に戻ってそこから処理を継続します。
このプロセスのどの時点でも、サーバが停止中サーバ検出基準(設定不可、使用されている Cisco IOS ソフトウェアによって異なる)を満たした場合は、設定されたデッドタイムに合わせてサーバが停止中としてマークされます。
RADIUS サーバ障害発生時順序変更機能の動作方法
RADIUS サーバ障害発生時順序変更機能を設定した場合は、次のように、初期サーバとして使用する RADIUS サーバが決定されます。
• Network Access Server(NAS; ネットワーク アクセス サーバ)が、トランスミッションが送信される最初のサーバである「フラグ設定された」サーバのステータスを保持します。
• フラグ設定されたサーバにトランスミッションが送信された後は、設定された再送回数だけ、フラグ設置されたサーバにトラフィックが再送されます。
• その後は、NAS が、フラグ設定されたサーバの次にリストされたサーバから始めて、設定されたトランザクションの最大再試行回数に到達するか、応答が返されるまで、サーバ グループ内の非停止中サーバのリストの順にトランスミッションを送信します。
• 起動時は、 radius-server host コマンドを使用して設定されたように、フラグ設定されたサーバがサーバ グループ リストで最初のサーバになります。
• フラグ設定されたサーバが停止中としてマークされている場合は(デッドタイムが 0 の場合でも)、フラグ設定されたサーバの次にリストされた最初の非停止中サーバがフラグ設定されたサーバになります。
• フラグ設定されたサーバが、リスト内の最後のサーバで、停止中としてマークされている場合は、フラグ設定されたサーバがリスト内で停止中としてマークされていない最初のサーバになります。
• すべてのサーバが停止中としてマークされている場合は、トランザクションが失敗して、フラグ設定されたサーバへの変更が実施されません。
• フラグ設定されたサーバが停止中としてマークされており、デッド タイマーが切れた場合は、何も行われません。
(注) トランスミッションのタイプ(Challenge Handshake Authentication Protocol(CHAP; チャレンジ ハンドシェーク認証プロトコル)、Microsoft CHAP(MS-CHAP)、Extensible Authentication Protocol(EAP; 拡張可能認証プロトコル))によっては、1 つのサーバを何度も往復しなければならない場合があります。このような特殊なトランザクションの場合は、サーバへの往復シーケンス全体が 1 回のトランスミッションのように処理されます。
RADIUS サーバが停止中の場合
次の 1 と 2 の基準が満たされた場合に、サーバを停止中としてマークすることができます。
1. radius-server transaction max-tries コマンドで指定された再送回数を超えてサーバが応答しなかった場合。
2. 設定されたタイムアウトまでどの要求にもサーバが応答しなかった場合。両方の基準(これと上の基準)が満たされた場合にのみ、サーバが停止中としてマークされます。デッドタイムが 0 の場合でも、サーバを停止中としてマークすると、RADIUS サーバの再試行方式順序変更システムに重大な影響を及ぼします。
RADIUS サーバ障害発生時順序変更の設定方法
ここでは、次の各手順について説明します。
• 「RADIUS サーバ障害発生時順序変更の設定」(必須)
• 「RADIUS サーバ障害発生時順序変更のモニタリング」(任意)
RADIUS サーバ障害発生時順序変更の設定
このタスクを実行して、サーバ グループ内のあるサーバを、最初のサーバで障害が発生した場合に別のサーバにトラフィックを転送するように設定します。
手順の概要
1. enable
2. configure terminal
3. aaa new-model
4. radius-server retry method reorder
5. radius-server retransmit { retries }
6. radius-server transaction max-tries { number }
7. radius-server host { hostname | ip-address } [ key string ]
8. radius-server host { hostname | ip-address } [ key string ]
手順の詳細
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
aaa new-model
Router (config)# aaa new-model |
AAA アクセス コントロール モデルをイネーブルにします。 |
ステップ 4 |
radius-server retry method reorder
Router (config)# radius-server retry method reorder |
サーバ グループ内の RADIUS トラフィック エントリの順序変更を指定します。 |
ステップ 5 |
radius-server retransmit { retries }
Router (config)# radius-server retransmit 1 |
Cisco IOS ソフトウェアが RADIUS サーバ ホストのリストを検索する回数の最大値を指定します。 retries 引数は、再送試行の最大回数です。デフォルトは 3 回です。 |
ステップ 6 |
radius-server transaction max-tries { number }
Router (config)# radius-server transaction max-tries 3 |
RADIUS サーバ上で試行可能なトランザクション当たりのトランスミッション数の最大値を指定します。 number 引数は、トランザクション当たりのトランスミッション数の総数です。このコマンドが設定されなかった場合のデフォルトは 8 トランスミッションです。 (注) このコマンドは、特定のトランザクションに関係するすべての RADIUS サーバに適用されます。 |
ステップ 7 |
radius-server host { hostname | ip-address } [ key string ]
Router (config)# radius-server host 10.2.3.4 key radi23 |
RADIUS サーバ ホストを指定します。 コマンドを発行することによって、サーバ単位キーが設定されていないすべての RADIUS サーバのグローバル キーを設定することもできます。 |
ステップ 8 |
radius-server host { hostname | ip-address } [ key string ]
Router (config)# radius-server host 10.5.6.7 key rad234 |
RADIUS サーバ ホストを指定します。 (注) 少なくとも 2 つのサーバを設定する必要があります。 |
RADIUS サーバ障害発生時順序変更のモニタリング
ルータ上でサーバ障害発生時順序変更プロセスをモニタするには、次のコマンドを使用します。
手順の概要
1. enable
2. debug aaa sg-server selection
3. debug radius
手順の詳細
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
debug aaa sg-server selection
Router# debug aaa sg-server selection |
ルータ内の RADIUS および TACACS+ サーバ グループ システムが特定のサーバを選択している理由に関する情報を表示します。 |
ステップ 3 |
debug radius
Router# debug radius |
ルータが特定の RADIUS サーバを選択している理由に関する情報を表示します。 |
例
次の 2 つのデバッグ出力は、RADIUS サーバ障害発生時順序変更機能の動作を示しています。
デバッグ 1
次のサンプル出力では、RADIUS サーバ障害発生時順序変更機能が設定されています。サーバの再送は 0(したがって、次に設定されたサーバへのフェールオーバー前に、各サーバが一度だけ試行される)に設定され、トランザクション当たりのトランスミッション数は 4(3 回めのフェールオーバーでトランスミッション終了)に設定されています。サーバ グループ内で 3 番めのサーバ(10.107.164.118)が、3 回めのトランスミッション(2 回めのフェールオーバー)のトランザクションを受け入れています。
00:38:35: %SYS-5-CONFIG-I: Configured from console by console
00:38:53: RADIUS/ENCODE(OOOOOOOF) : ask "Username: "
00:38:53: RADIUS/ENCODE (0000000F) : send packet; GET-USER
00:38:58: RADIUS/ENCODE (0000000F) : ask "Password: "
00:38:58: RADIUS/ENCODE(0000000F) : send packet; GET-PASSWORD
00:38:59: RADIUS: AAA Unsupported [152] 4
00:38:59: RADIUS: 7474 [tt]
00:38:59: RADIUS (0000000F) : Storing nasport 2 in rad-db
00:38:59: RADIUS/ENCODE(0000000F) : dropping service type, "radius-server attribute 6 on-for-login-auth" is off
00:38:59: RADIUS (0000000F) : Config NAS IP: 0.0.0.0
00:38:59: RADIUS/ENCODE (0000000F) : acct-session-id: 15
00:38:59: RADIUS (0000000F) : sending
00:38:59: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 192.1.1.1
00:38:59: RAPIUS(0000000F) : Send Access-Request to 10.10.10.10:1645 id 21645/11, len 78
00:38:59: RADIUS:: authenticator 4481 E6 65 2D 5F 6F OA -lE F5 81 8F 4E 1478 9C
00:38:59: RADIUS: User-Name [1] 7 "username1"
00:38:59: RADIUS: User-Password [2] 18 *
00:38:59: RADIUS: NAS-Port fSl 6 2
00:~8:59: RADIUS: NAS-Port-Type [61] 6 Virtual [5]
00:38:59: RADIUS: Calling-Station-Id [31] 15 "10.19.192.23"
00:39:00: RADIUS: NAS-IP-Address [4] 6 10.0.1.130
00:39:02: RADIUS: Fail-over to (10.2.2.2:1645,1646) for id 21645/11
00:39:02: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 192.2.2.2 00:39:04: RADIUS: Fail-over to (10.107.164.118:1645,1646) for id 21645/11
00:39:04: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 128.107.164.118
00:39:05: RADIUS: Received from id 21645/11 10.107.164.118:1645, Access-Accept, len 26 00:39:05: RADIUS: authenticator 5609 56 F9 64 4E DF 19- F3 A2 DD 73 EE 3F 9826
00:39:05: RADIUS: Service-Type [6] 6 Login [1]
デバッグ 2
次のサンプル出力では、RADIUS サーバ障害発生時順序変更機能が設定されています。サーバの再送は 0 に設定され、トランザクション当たりのトランスミッション数は 8 に設定されています。このトランザクションでは、サーバ 10.10.10.0 へのトランスミッションが 8 回めで失敗します。
00:42:30: RADIUS(00000011): Received from id 21645/13
00:43:34: RADIUS/ENCODE(00000012) : ask "Username: "
00:43:34: RADIUS/ENCODE(00000012) : send packet; GET-USER
00:43:39: RADIUS/ENCODE(00000012) : ask "Password: "
00:43:39: RADIUS/ENCODE(00000012) : send packet; GET-PASSWORD
00:43:40: RADIUS: AAA Unsupported [152] 4
00:43:40: RADIUS: 7474 [tt]
00:43:40: RADIUS(00000012) : Storing nasport 2 in rad-db
00:43:40: RADIUS/ENCODE(00000012): dropping service type, "radius-server attribute 6 on-for-login-auth" is off
00:43:40: RADIUS(00000012) : Co~fig NAS IP: 0.0.0.0
00:43:40: RADIUS/ENCODE(00000012) : acct-session-id: 18
00:43:40: RADIUS(00000012) : sending
00:43:40: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.107.164.118 00:43:40: RADIUS(00000012) : Send Access-Request to 10.107.164.118:1645 id 21645/14, len 78 00:43:40: RADIUS: authenticator B8 OA 51 3A AF A6 0018 -B3 2E 94 5E 07 OB 2A IF 00:43:40: RADIUS: User-Name [1] 7 "username1" 00:43:40: RADIUS: User-Password [2] 18 * 00:43:40: RADIUS: NAS-Port [5] 6 2
00:43:40: RADIUS: NAS-Port-Type [61] 6 Virtual [5] 00:43:40: RADIUS: Calling-Station-]d [31] 15 "172.19.192.23" 00:43:40: RADIUS: NAS-IP-Address [4] 6 10.0.1.130
00:43:42: RADIUS: Fail-over to (10.10.10.10:1645,1646) for id 21645/14
00:43:42: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.1.1.1 00:43:44: RADius: Fail-over to (10.2.2.2:1645,1646) for id 21645/14
00:43:44: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.2.2.2 00:43:46: RADIUS: Fail-over to (10.107.164.118:1645,1646) for id 21645/14
00:43:46: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.107.164.118 00:43:48: RADIUS: Fail-over to (10.10.10.10:1645,1646) for id 21645/14
00:43:48: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.1.1.1 00:43:50: RADIUS: Fail-over to (10.2.2.2:1645,1646) for id 21645/14
00:43:50: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.2.2.2 00:43:52: RADIUS: Fail-over to (10.107.164.118:1645,1646) for id 21645/14
00:43:52: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.107.164.118 00:43:54: RADIUS: Fail-over to (10.10.10.10:1645,1646) for id 21645/14
00:43:54: RADIUS/ENCODE: Best Local IP-Address 10.0.1.130 for Radius-Server 10.1.1.1 00:43:56: RADIUS: No response from (10.10.10.10:1645,1646) for id 21645/14 00:43:56: RADIUS/DECODE: parse response no app start; FAIL 00:43:56: RADIUS/DECODE: parse response; FAIL
RADIUS サーバ障害発生時順序変更の設定例
ここでは、次の設定例について説明します。
• 「RADIUS サーバ障害発生時順序変更の設定例」
• 「RADIUS サーバが停止中の送信順序の決定」
RADIUS サーバ障害発生時順序変更の設定例
次の設定例は、RADIUS サーバが障害発生時に順序変更されるように設定されます。RADIUS サーバ上で試行可能なトランザクション当たりのトランスミッション数の最大値は 6 です。
aaa new-model
radius-server retry method reorder
radius-server retransmit 0
radius-server transaction max-tries 6
radius-server host 10.2.3.4 key rad123
radius-server host 10.5.6.7 key rad123
RADIUS サーバが停止中の送信順序の決定
起動時に次のように設定し、
radius-server retry method reorder
radius-server retransmit 0
radius-server transaction max-tries 6
radius-server host 10.2.3.4
radius-server host 10.5.6.7
両方のサーバがダウンしているが、まだ、停止中としてマークされていない場合は、最初のトランザクションで、次のようなトランスミッションが見られます。
順序変更を次のように設定し、
radius-server retry method reorder
radius-server retransmit 1
radius-server transaction max-tries 3
radius-server host 10.2.3.4
radius-server host 10.4.5.6
両方の RADIUS サーバが RADIUS パケットに応答していないが、まだ、停止中としてマークされていない(NAS の起動後のため)場合は、最初のトランザクションのトランスミッションが次のようになります。
以降のトランザクションは、別のパターンに従って転送されます。トランスミッションは、どちらか(または両方)のサーバを停止中としてマークする基準が満たされているかどうかと、前述したサーバのフラグ設定パターンによって異なります。
順序変更を次のように設定し、
radius-server retry method reorder
radius-server retransmit 1
radius-server max-tries-per-transaction 8
radius-server host 10.1.1.1
radius-server host 10.2.2.2
radius-server host 10.3.3.3
RADIUS サーバ 10.1.1.1 が RADIUS パケットに応答していないが、まだ、停止中としてマークされておらず、残りの 2 つの RADIUS サーバが動作中の場合は、次のように表示されます。
最初のトランザクションの場合:
サーバが停止中としてマークされる前に任意のトランスミッションに対して開始された追加のトランザクションの場合:
その後開始されたトランザクションの場合:
その後で、サーバの 10.2.2.2 と 10.3.3.3 もダウンした場合は、サーバの 10.2.2.2 と 10.3.3.3 が停止中としてマークされる基準を満たすまで、次のようなトランスミッションが見られます。
この後に、トランスミッションが失敗し、方式リスト内で次の方式が使用されます(存在する場合)。
サーバの 10.2.2.2 と 10.3.3.3 がダウンしたが、同時に、サーバ 10.1.1.1 が復旧した場合は、次のようになります。
その後で、サーバの 10.2.2.2 と 10.3.3.3 が停止中としてマークされると、次のようになります。
その他の参考資料
次の項で、RADIUS サーバ障害発生時順序変更に関する参考資料を紹介します。
テクニカル サポート
|
|
右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。 以下を含むさまざまな作業にこの Web サイトが役立ちます。 ・テクニカル サポートを受ける ・ソフトウェアをダウンロードする ・セキュリティの脆弱性を報告する、またはシスコ製品のセキュリティ問題に対する支援を受ける ・ツールおよびリソースへアクセスする - Product Alert の受信登録 - Field Notice の受信登録 - Bug Toolkit を使用した既知の問題の検索 ・Networking Professionals(NetPro)コミュニティで、技術関連のディスカッションに参加する ・トレーニング リソースへアクセスする ・TAC Case Collection ツールを使用して、ハードウェアや設定、パフォーマンスに関する一般的な問題をインタラクティブに特定および解決する この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。 |
http://www.cisco.com/techsupport |
RADIUS サーバ障害発生時順序変更の機能情報
表 1 に、この機能のリリース履歴を示します。
ご使用の Cisco IOS ソフトウェア リリースによっては、コマンドの中に一部使用できないものがあります。特定のコマンドに関するリリース情報については、コマンド リファレンス マニュアルを参照してください。
Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェア イメージのサポート情報を検索できます。Cisco Feature Navigator を使用すると、特定のソフトウェア リリース、機能セット、またはプラットフォームをサポートする Cisco IOS ソフトウェア イメージおよび Catalyst OS ソフトウェア イメージを確認できます。Cisco Feature Navigator には、 http://tools.cisco.com/ITDIT/CFN/jsp/index.jsp からアクセスできます。Cisco.com のアカウントは必要ありません。
(注) 表 1 には、一連の Cisco IOS ソフトウェア リリースのうち、特定の機能が初めて導入された Cisco IOS ソフトウェア リリースだけが記載されています。特に明記していないかぎり、その機能は、一連の Cisco IOS ソフトウェア リリースの以降のリリースでもサポートされます。
表 1 RADIUS サーバ障害発生時順序変更の機能情報
|
|
|
RADIUS サーバ障害発生時順序変更 |
12.3(1) 12.2(28)SB 12.2(33)SRC |
RADIUS サーバ障害発生時順序変更機能は、高負荷期間またはサーバで障害が発生した場合に、サーバ グループ内の別のサーバへのフェールオーバーを提供します。 この機能は、12.3(1) で導入されました。 この機能は、Cisco IOS Release 12.2(28)SB に統合されました。 この機能は、Cisco IOS Release 12.2(33)SRC に統合されました。 debug aaa sg-server selection、radius-server retry method reorder、および radius-server transaction max-tries の各コマンドがこの機能で導入または変更されました。 |
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/go/trademarks . Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R)
このマニュアルで使用している IP アドレスおよび電話番号は、実際のアドレスおよび電話番号を示すものではありません。マニュアル内の例、コマンド出力、ネットワーク トポロジ図、およびその他の図は、説明のみを目的として使用されています。説明の中に実際のアドレスおよび電話番号が使用されていたとしても、それは意図的なものではなく、偶然の一致によるものです。
© 2003, 2006-2009 Cisco Systems, Inc.
All rights reserved.
Copyright © 2003-2011, シスコシステムズ合同会社.
All rights reserved.