このドキュメントでは、RADIUS切断メッセージ(DM)について説明します。
認可変更(CoA)メッセージは、ユーザセッションに関連付けられた属性とデータフィルタを変更するために使用されます。システムは、Authentication, Authorization, and Accounting(AAA;認証、認可、アカウンティング)サーバからのCoAメッセージをサポートし、サブスクライバセッションに関連付けられたデータフィルタを変更します。
CoA要求メッセージには、ユーザセッションを識別する属性を含める必要があります。属性とデータフィルタをユーザセッションに適用する必要があります。filter-id属性(属性id 11)には、フィルタの名前が含まれます。ASR 5000がCoA要求を正常に実行すると、CoA ACKがRADIUSサーバに返送され、新しい属性とデータフィルタがユーザセッションに適用されます。それ以外の場合は、ユーザセッションを変更せずに、CoA NAKがエラーコード属性として適切な理由で送信されます。
DMメッセージは、ASR 5000のユーザセッションをRADIUSサーバから切断するために使用されます。DM要求メッセージには、ユーザセッションを識別するために必要な属性が含まれている必要があります。システムが正常にユーザセッションを切断すると、DM ACKがRADIUSサーバに送り返されます。それ以外の場合は、適切なエラー理由でDM-NAKが送信されます。
前述したように、何らかの理由でNASがDisconnect-RequestまたはCoA-Requestメッセージを承認できない場合があります。Error-Cause属性は、問題の原因に関する詳細を提供します。これは、Disconnect-ACK、Disconnect-NAK、およびCoA-NAKメッセージに含めることができます。
Valueフィールドは4オクテットで、エラーの原因を示す整数が含まれています。
エラーコード値(10進数で表されます)は次のとおりです。
# Value
--- -----
201 Residual Session Context Removed>
202 Invalid EAP Packet (Ignored)
401 Unsupported Attribute
402 Missing Attribute
403 NAS Identification Mismatch
404 Invalid Request
405 Unsupported Service
406 Unsupported Extension
501 Administratively Prohibited
502 Request Not Routable (Proxy)
503 Session Context Not Found
504 Session Context Not Removable
505 Other Proxy Processing Error
506 Resources Unavailable
507 Request Initiated
ASR 5000の識別には、次のいずれかの方法を使用できます。
ユーザセッションの識別には、次のいずれかの方法が使用されます。
RADIUS DMの設定はきわめて簡単です。すべての回線は、宛先コンテキスト(RADIUS設定がある回線)で設定する必要があります。
RADIUS変更オーソライズNAS IP IPアドレス [ encrypted ]キー の値を入力します。 [port port ]
[ eventtimestamp-window 窓 ] [ no-nas-identification-check ]
[ no-reverse-path-forward-check][ mplsラベル入力 in_label_value | 出力 out_label_value1(オプション)
[ out_label_value2(オプション) ]
radius change-authorize-nas-ip 192.168.88.40 encrypted key <key value>
no-reverse-path-forward-check
no-nas-identification-check
ソケットがUDPポート3799に対応していない可能性があります(RFC 3756に従って、RADIUS切断要求パケットはUDPポート3799に送信されます)。
この動作は単純化できます。すべてのCoA要求を処理するプロセスは、アクティブなSMC/MIOカードにあるaaamgrインスタンス385です。このCLIコマンドは、宛先コンテキストで実行する必要があります。
#cli test-commands password <xx> #show radius info radius group all instance 385
出力は次のようになります。
# show radius info radius group all instance 385 AAAMGR instance 385:
cb-list-en: 3 AAA Group: <>
---------------------------------------------
socket number: 19
socket state: ready
local ip address: 10.176.81.215
local udp port: 50954
flow id: 0
use med interface: no
VRF context ID: 66
この例では、ポート3799は存在せず、これが報告される動作の理由です。この場合も同じことが発生する場合の解決策は、CoA設定を削除して再度追加し、リスニングソケットを再作成することです。また、最初のソリューションが役に立たない場合は、aaamgrインスタンス385を強制終了することもできます。
説明したアクションを実行すると、次の出力が表示されます。
# show radius info radius group all instance 385 AAAMGR instance 385:
cb-list-en: 3 AAA Group: <>
--------------------------------------------->
socket number: 19>
socket state: ready
local ip address: 10.176.81.215
local udp port: 50954
flow id: 0
use med interface: no
VRF context ID: 66
socket number: 21 <---------------------
socket state: ready
local ip address: 10.176.81.215
local udp port: 3799 <--------------------
flow id: 0
use med interface: no
ソケットは適切なコンテキスト/VRのデバッグシェルから確認できます。
bash-2.05b# netstat -lun | grep 3799
udp 0 0 10.176.81.215:3799 0.0.0.0:*
UDPポート3379にはReadyソケットがありますが、DMメッセージは表示されません。これは、radius change-authorize-nas-ipの設定が誤っているために発生した可能性があります。DM要求メッセージに含まれる属性値が、RADIUSへのアカウンティング要求で送信されたものと一致しない。
Thursday August 06 2015
<<<<OUTBOUND
Code: 4 (Accounting-Request)
Attribute Type: 44 (Acct-Session-Id)
Length: 18
Value: 42 43 37 31 44 46 32 36 BC71DF26
30 36 30 33 41 32 42 46 0603A2BF
Attribute Type: 31 (Calling-Station-Id)
Length: 14
Value: 39 39 38 39 33 31 37 32 99893172
30 39 31 31 0911
Attribute Type: 4 (NAS-IP-Address)
Length: 6
Value: C0 A8 58 E1 ..X.
(192.168.88.225)
Attribute Type: 8 (Framed-IP-Address)
Length: 6
Value: 0A 55 12 21 .U.!
(10.85.18.33)
Radius Protocol
Code: Disconnect-Request (40)
Packet identifier: 0x2 (2)
Length: 71
Authenticator: 4930a228f13da294550239f5187b08b9
Attribute Value Pairs
AVP: l=6 t=NAS-IP-Address(4): 192.168.88.225
NAS-IP-Address: 192.168.88.225 (192.168.88.225)
AVP: l=6 t=Framed-IP-Address(8): 10.85.18.33
Framed-IP-Address: 10.85.18.33 (10.85.18.33)
AVP: l=14 t=Calling-Station-Id(31): 998931720911
Calling-Station-Id: 998931720911
AVP: l=18 t=Acct-Session-Id(44): BC71DF260603A2BF
Acct-Session-Id: BC71DF260603A200
この例では、ASR 5000に到達するAcct-Session-Idの値がRADIUSに送信される値と異なっており、これが問題の原因です。この問題は、RADIUS側で適切に変更することで解決できます。
アクティブセッションのAcct-Session-Idを確認するには、show subscribers ggsn-only aaa-configuration active imsi <>コマンドを使用します。
[local]# show subscribers ggsn-only aaa-configuration active imsi 434051801170727
Username: 998931720911@mihc1 Status: Online/Active
Access Type: ggsn-pdp-type-ipv4 Network Type: IP
Access Tech: WCDMA UTRAN Access Network Peer ID: n/a
callid: 057638b8 imsi: 434051801170727
3GPP2 Carrier ID: n/a
3GPP2 ESN: n/a
RADIUS Auth Server: 192.168.88.40 RADIUS Acct Server: n/a
NAS IP Address: 192.168.88.225
Acct-session-id: BC71DF260603A2BF
この時点で、この種のエラーメッセージは問題がRADIUSサーバから発生していることを意味することが判明しています。しかし、何が間違っているのかはまだ明らかではありません。この場合、ASR 5000の制限では、Radius DMのCalled-station-Idはサポートされません。したがって、そこにあれば、強調表示されたエラーで応答します。
INBOUND>>>>>
RADIUS COA Rx PDU, from 192.168.1.254:38073 to 192.168.1.2:1800
Code: 40 (Disconnect-Request)
Id: 106
Length: 61
Authenticator: 8D F1 50 2E DD 79 49 39 79 A0 B5 FC 59 3E C4 51
Attribute Type: 32 (NAS-Identifier)
Length: 9
Value: 73 74 61 72 65 6E 74 starent
Attribute Type: 1 (User-Name)
Length: 10
Value: 74 65 73 74 75 73 65 72 testuser
Attribute Type: 30 (Called-Station-ID)
Length: 9
Value: 65 63 73 2D 61 70 6E ecs-apn
Attribute Type: 31 (Calling-Station-Id)
Length: 13
Value: 36 34 32 31 31 32 33 34 64211234
35 36 37 567
<<<<OUTBOUND 06:57:42:683 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:38073
Code: 42 (Disconnect-Nak)
Id: 106
Length: 26
Authenticator: 34 2E DE B4 77 22 4A FE A5 16 93 91 0D B2 E6 3B
Attribute Type: 101 (Error-Cause)
Length: 6
Value: 00 00 01 91 ....
(Unsupported-Attribute)
これは、次の設定で発生します。
radius change-authorize-nas-ip 192.168.1.2 encrypted key
+A27wvxlgy06ia30pcqswmdajxd11ckg4ns88i6l92dghsqw7v77f1 port 1800
event-timestamp-window 0 no-reverse-path-forward-check no-nas-identification-check
aaa group default
radius attribute nas-ip-address address 192.168.1.2
radius server 192.168.1.128 encrypted key
+A3ec01d8zs92ed1gz2mytddjjrf11af3u0watpyr3gd0rs8mthlzc port 1812
radius accounting server 192.168.1.128 encrypted key
+A24x0pj4mjgnqh0sclbnen1lm6f1d6drn2nw3yf31tmfldk9fr38e port 1813
#exit
アクティブなPDPコンテキストの場合、切断要求はNAKされます。
INBOUND>>>>> 04:27:13:898 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:42082 to 192.168.1.2:1800 (52) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 115
Length: 52
Authenticator: BF 95 05 0B 87 B4 42 59 5F C6 CC 78 D7 17 77 7F
Attribute Type: 32 (NAS-Identifier)
Length: 9
Value: 73 74 61 72 65 6E 74 starent
Attribute Type: 1 (User-Name)
Length: 10
Value: 74 65 73 74 75 73 65 72 testuser
Attribute Type: 31 (Calling-Station-Id)
  Value: 36 34 32 31 31 32 33 34 64211234; Length: 13
35 36 37 567
Monday October 19 2015
<<<<OUTBOUND 04:27:13:898 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:42082 (26) PDU-dict=starent-vsa1
Code: 42 (Disconnect-Nak)
Id: 115
Length: 26
Authenticator: 75 D1 04 3E 31 19 9C 92 B2 2E 5D 5F 98 B9 34 99
Attribute Type: 101 (Error-Cause)
Length: 6
Value: 00 00 01 93 ....
(NAS-Identification-Mismatch)
ただし、この行がデフォルトのAAAグループに含まれている場合は、次のようになります。
radius attribute nas-identifier starent
次のように動作し始めます。
Monday October 19 2015
INBOUND>>>>> 05:19:01:798 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:55426 to 192.168.1.2:1800 (52) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 171
Length: 52
Authenticator: 3A 67 43 25 DC 18 5C E3 23 08 04 C0 9C 31 68 68
NAS-Identifier = starent
User-Name = testuser
Calling-Station-Id = 64211234567
Monday October 19 2015
<<<<OUTBOUND 05:19:01:799 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:55426 (26) PDU-dict=starent-vsa1
Code: 41 (Disconnect-Ack)
Id: 171
Length: 26
Authenticator: 45 07 79 C5 E0 92 53 28 8F AD A3 E3 C4 B4 52 10
Acct-Termination-Cause = Admin_Reset
または、AAAグループにnas-identifierを設定せずに、Disconnect-RequestからNAS-Identifier AVPを削除した場合にも機能します。
INBOUND>>>>> 05:14:41:374 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:54757 to 192.168.1.2:1800 (43) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 78
Length: 43
Authenticator: 84 5D FE 5E 90 0D C8 16 84 7A 11 67 FF 82 40 DB
User-Name = testuser
Calling-Station-Id = 64211234567
Monday October 19 2015
<<<<OUTBOUND 05:14:41:375 Eventid:70902(6
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:54757 (26) PDU-dict=starent-vsa1
Code: 41 (Disconnect-Ack)
Id: 78
Length: 26
Authenticator: 34 84 5B 8E AF 02 1C F2 58 26 1B 0C 20 37 93 33
Acct-Termination-Cause = Admin_Reset
Cisco Bug ID CSCuw78786が送信されています。これは、リリース17.2.0およびリリース15でテスト済みです。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
17-Dec-2015 |
初版 |