In questo documento vengono descritti i messaggi di disconnessione (DM) RADIUS.
Un messaggio CoA (Change of Authorization) viene utilizzato per modificare gli attributi e i filtri dati associati a una sessione utente. Il sistema supporta i messaggi CoA provenienti dal server di autenticazione, autorizzazione e accounting (AAA) per modificare i filtri dati associati a una sessione del sottoscrittore.
Il messaggio di richiesta CoA deve contenere attributi per identificare la sessione utente; gli attributi e i filtri dati devono essere applicati alla sessione utente. L'attributo filter-id (ID attributo 1) contiene i nomi dei filtri. Se l'ASR 5000 esegue correttamente la richiesta CoA, un ACK CoA viene inviato al server RADIUS e i nuovi attributi e filtri dati vengono applicati alla sessione utente. In caso contrario, viene inviato un NAK CoA con il motivo corretto come attributo di codice di errore senza apportare alcuna modifica alla sessione utente.
Il messaggio DM viene utilizzato per disconnettere le sessioni utente in ASR 5000 da un server RADIUS. Il messaggio di richiesta DM deve contenere gli attributi necessari per identificare la sessione utente. Se il sistema disconnette correttamente la sessione utente, DM ACK viene inviato nuovamente al server RADIUS. In caso contrario, DM-NAK viene inviato con le dovute motivazioni di errore.
Come accennato in precedenza, è possibile che il NAS non sia in grado di soddisfare i messaggi Disconnect-Request o CoA-Request per qualche motivo. L'attributo Error-Cause fornisce ulteriori dettagli sulla causa del problema. PUÒ essere incluso nei messaggi Disconnect-ACK, Disconnect-NAK e CoA-NAK.
Il campo Value (Valore) è costituito da quattro ottetti, contenenti un numero intero che specifica la causa dell'errore.
I valori dei codici di errore (espressi in decimali) includono:
# 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
Per identificare l'ASR 5000, è possibile utilizzare uno dei seguenti metodi:
Per l'identificazione della sessione utente, viene utilizzato uno dei metodi seguenti:
La configurazione di un DM RADIUS è abbastanza semplice. Tutte le linee devono essere configurate nel contesto di destinazione (quello con la configurazione RADIUS).
radius change-authorization-nas-ip indirizzo_ip chiave [ encrypted ] valore [port port ]
[ eventtimestamp-window finestra ] [ no-nas-identification-check ]
[ no-reverse-path-forward-check][ input mpls-label in_label_value | uscita 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
È possibile che il socket non sia pronto per la porta UDP 3799. (In conformità alla RFC 3756, il pacchetto RADIUS Disconnect-Request viene inviato alla porta UDP 3799).
Questo comportamento può essere semplificato. Il processo che gestisce tutte le richieste CoA è l'istanza di gestione 385, ovvero quella sulla scheda SMC/MIO attiva. Questo comando CLI deve essere eseguito nel contesto di destinazione.
#cli test-commands password <xx> #show radius info radius group all instance 385
Tale output avrà il seguente aspetto:
# 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
Nell'esempio, non è presente la porta 3799 e questa è la causa del comportamento segnalato. Se si verifica la stessa situazione, la soluzione è rimuovere e aggiungere nuovamente la configurazione CoA per ricreare il socket di ascolto. Inoltre, è possibile tentare di uccidere l'istanza 385 di amgr se la prima soluzione non aiuta.
Dopo le azioni descritte, verrà visualizzato questo output:
# 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
e il socket deve essere visibile dalla shell di debug sul contesto/VR appropriato:
bash-2.05b# netstat -lun | grep 3799
udp 0 0 10.176.81.215:3799 0.0.0.0:*
La porta UDP 3379 ha un socket pronto, ma i messaggi DM non vengono ancora visualizzati. Ciò è probabilmente causato da una configurazione errata di radius change-authorization-nas-ip. I valori degli attributi inclusi nel messaggio di richiesta DM non corrispondono a quelli inviati in una richiesta di accounting verso 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
Nell'esempio, il valore di Acct-Session-Id che arriva ad ASR 5000 è diverso da quello inviato verso RADIUS e questa è la causa del problema. Questo problema può essere risolto apportando modifiche appropriate sul lato RADIUS.
È possibile verificare l'account-Session-Id per la sessione attiva con il comando 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
A questo punto è noto che questo tipo di messaggio di errore indica che il problema proviene dal server RADIUS. Tuttavia, non è ancora chiaro cosa sia sbagliato. In questo caso, la limitazione di ASR 5000 non supporta l'ID stazione chiamata in Radius DM. Quindi, se viene visualizzata, risponde con l'errore evidenziato.
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)
Ciò si verifica nella configurazione seguente:
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
Per un contesto PDP attivo, la richiesta di disconnessione è 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)
Tuttavia, quando questa riga è inclusa nel gruppo AAA predefinito:
radius attribute nas-identifier starent
comincia a funzionare:
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
Oppure funzionerà anche senza la configurazione dell'identificatore-nas sul gruppo AAA, ma con l'AVP dell'identificatore-NAS rimosso da Disconnect-Request:
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 bug Cisco CSCuw78786 è stato inviato. Questo è stato testato sulle release 17.2.0 e 15.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
17-Dec-2015 |
Versione iniziale |