Ce document décrit les messages de déconnexion RADIUS (DM).
Un message CoA (Change of Authorization) est utilisé afin de modifier les attributs et les filtres de données associés à une session utilisateur. Le système prend en charge les messages CoA du serveur AAA (Authentication, Authorization, and Accounting) pour modifier les filtres de données associés à une session d'abonné.
Le message de demande CoA doit contenir des attributs permettant d'identifier la session utilisateur ; et les filtres de données doivent être appliqués à la session utilisateur. L'attribut filter-id (id d'attribut 11) contient les noms des filtres. Si l'ASR 5000 exécute correctement la requête CoA, un ACK CoA est renvoyé au serveur RADIUS et les nouveaux attributs et filtres de données sont appliqués à la session utilisateur. Sinon, une CoA NAK est envoyée avec la raison appropriée en tant qu'attribut de code d'erreur sans apporter de modifications à la session utilisateur.
Le message DM est utilisé afin de déconnecter les sessions utilisateur dans l'ASR 5000 d'un serveur RADIUS. Le message de demande DM doit contenir les attributs nécessaires pour identifier la session utilisateur. Si le système déconnecte correctement la session utilisateur, DM ACK est renvoyé au serveur RADIUS. Sinon, DM-NAK est envoyé avec des raisons d'erreur appropriées.
Comme mentionné précédemment, il est possible que le NAS ne puisse pas honorer les messages de demande de déconnexion ou de demande de CoA pour une raison quelconque. L'attribut Cause d'erreur fournit plus de détails sur la cause du problème. Il PEUT être inclus dans les messages Disconnect-ACK, Disconnect-NAK et CoA-NAK.
Le champ Valeur est de quatre octets, qui contient un entier qui spécifie la cause de l'erreur.
Les valeurs de code d'erreur (exprimées en notation décimale) comprennent :
# 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
Pour l'identification de l'ASR 5000, l'une des méthodes suivantes peut être utilisée :
Pour l'identification de la session utilisateur, l'une des méthodes suivantes est utilisée :
La configuration d'un multiplexeur RADIUS est assez facile. Toutes les lignes doivent être configurées dans le contexte de destination (celui avec la configuration RADIUS).
radius change-permit-nas-ip adresse_ip [ clé chiffrée ] valeur [port port ]
[ eventtimestamp-window fenêtre ] [ no-nas-identification-check ]
[ no-inverse-path-forward-check][ entrée mpls-label valeur_étiquette_dans | sortie valeur_étiquette_sortie1
[ valeur_étiquette_sortie2 ]
radius change-authorize-nas-ip 192.168.88.40 encrypted key <key value>
no-reverse-path-forward-check
no-nas-identification-check
Il est possible que le socket ne soit pas prêt pour le port UDP 3799. (Conformément à la RFC 3756, le paquet RADIUS Disconnect-Request est envoyé au port UDP 3799).
Ce comportement peut être simplifié. Le processus qui gère toutes les requêtes CoA est aamgr instance 385, qui est celle de la carte SMC/MIO active. Cette commande CLI doit être exécutée dans le contexte de destination.
#cli test-commands password <xx> #show radius info radius group all instance 385
Ce résultat ressemble à ceci :
# 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
Dans cet exemple, il n'y a pas de port 3799 et c'est la raison du comportement signalé. Si vous voyez la même chose dans votre cas, la solution consiste à supprimer et à réajouter la configuration CoA afin de recréer le socket d'écoute. En outre, vous pouvez essayer de tuer l'instance aamgr 385 si la première solution n'aide pas.
Après les actions décrites, vous devriez voir cette sortie :
# 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
et le socket doit être visible depuis le shell de débogage sur le contexte/VR approprié :
bash-2.05b# netstat -lun | grep 3799
udp 0 0 10.176.81.215:3799 0.0.0.0:*
Le port UDP 3379 est équipé d'un socket prêt, mais vous ne voyez toujours pas les messages DM. Ceci est probablement dû à une configuration incorrecte de radius change-permit-nas-ip. Les valeurs d'attribut qui sont entrées dans le message de demande DM ne correspondent pas à celles qui ont été envoyées dans une demande Accounting vers 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
Dans cet exemple, la valeur de Acct-Session-Id qui vient à l'ASR 5000 est différente de celle envoyée vers RADIUS et c'est la raison du problème. Ce problème peut être résolu par des modifications appropriées du côté RADIUS.
L'ID de session d'accès de la session active peut être vérifié à l'aide de la commande show abonnés 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
À ce stade, on sait que ce type de message d'erreur signifie que le problème provient du serveur RADIUS. Cependant, on ne sait toujours pas ce qui ne va pas. Ici, la limitation de l'ASR 5000 ne prend pas en charge Called-station-Id dans Radius DM. Par conséquent, s'il est vu ici, il répond avec l'erreur mise en surbrillance.
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)
Ceci se produit dans cette configuration :
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
Pour un contexte PDP actif, la demande de déconnexion est définie sur 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)
Cependant, lorsque cette ligne est incluse dans le groupe AAA par défaut :
radius attribute nas-identifier starent
il commence à fonctionner :
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
Ou il fonctionnera également sans configuration de l'identificateur nas sur le groupe AAA, mais avec l'identificateur NAS AVP supprimé de la demande de déconnexion :
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
L'ID de bogue Cisco CSCuw78786 a été envoyé. Ceci a été testé sur les versions 17.2.0 et 15.
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
17-Dec-2015 |
Première publication |