Tecnología inalámbrica : Cisco GGSN Gateway GPRS Support Node

Entienda y resuelva problemas el CoA RADIUS y desconecte los mensajes

18 Junio 2016 - Traducción Automática
Otras Versiones: PDFpdf | Comentarios

Introducción

Este documento describe los mensajes de la desconexión de RADIUS (DM).

Contribuido por Tomás Dudarski y Maciej Poszywak, ingenieros de Cisco TAC.

Definición de los mensajes CoA RADIUS

Un cambio del mensaje de la autorización (CoA) se utiliza para cambiar los atributos y los filtros de los datos asociados a una sesión del usuario. Los mensajes CoA de los soportes de sistema del servidor del Authentication, Authorization, and Accounting (AAA) para cambiar los filtros de los datos asociados a una sesión del suscriptor.

Nota: Los filtros en los atributos filtro-identificación (si es presente en la petición) se deben configurar en el ASR 5000 para la aplicación al tráfico de usuarios. Ésta es la forma de Listas de control de acceso (ACL) y se configura en el ASR 5000 con los comandos ip access-list.

El mensaje request CoA debe contener los atributos para identificar a la sesión del usuario; los atributos y los filtros de los datos necesitan ser aplicados a la sesión del usuario. El atributo filtro-identificación (identificación 11 del atributo) contiene los nombres de los filtros. Si el ASR 5000 ejecuta con éxito la petición CoA, un CoA ACK se devuelve al servidor de RADIUS y los nuevos filtros de los atributos y de los datos se aplican a la sesión del usuario. Si no, un CoA NAK se envía con la razón apropiada como atributo del código de error sin realizar ningunos cambios a la sesión del usuario.

RADIUS DM

El mensaje DM se utiliza para desconectar a las sesiones del usuario en el ASR 5000 de un servidor de RADIUS. El mensaje request DM debe contener los atributos necesarios para identificar a la sesión del usuario. Si el sistema desconecta con éxito a la sesión del usuario, el DM ACK se devuelve al servidor de RADIUS. Si no, DM-NAK se envía con los Motivos de error apropiados.

Según lo mencionado previamente, es posible que el NAS no puede honrar los mensajes del pedido de desconexión o de la CoA-petición por alguna razón. El atributo de la causa del error proporciona más detalle en la causa del problema. PUEDE ser incluido dentro de los mensajes Desconexión-ACK, Desconexión-NAK, y CoA-NAK.

El campo de valor es cuatro octetos, que contiene un número entero que especifique la causa del error.

  • Los valores 0-199 y 300-399 son reservados.
  • El 200-299 de los valores representa la terminación satisfactoria, de modo que estos valores se pudieran enviar solamente dentro del mensaje Desconexión-ACK o CoA-ACK y NO SE DEBAN enviar dentro de un Desconexión-NAK o de un CoA-NAK.
  • El 400-499 de los valores representa los errores fatales cometidos por el servidor de RADIUS, para PODERLOS enviar dentro de los mensajes CoA-NAK o Desconexión-NAK y NO DEBAN ser enviados dentro de los mensajes CoA-ACK o Desconexión-ACK.
  • El 500-599 de los valores representa los errores fatales que ocurren en un NAS o una representación de RADIUS, para PODERLOS enviar dentro de los mensajes CoA-NAK y Desconexión-NAK, y NO SE DEBEN enviar dentro de los mensajes CoA-ACK o Desconexión-ACK. Los valores de la causa del error SE DEBEN registrar por el servidor de RADIUS.

Los valores de código de error (expresados en el decimal) incluyen:

   #     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

Atributos para la identificación de la sesión

Para la identificación del ASR 5000, uno de estos métodos puede ser utilizado:

  • Nas-ip-address: La dirección IP NAS si es presente en la petición COA/DM debe hacer juego con la dirección IP ASR 5000 NAS.
  • NAS-identificador: Si este atributo está presente, su valor debe hacer juego al NAS-identificador generado para la sesión del usuario.
    Esto es un atributo obligatorio para la identificación de la sesión, si el ASR 5000 se configura con el NAS-identificador.

Para la identificación de la sesión del usuario, se utiliza cualquiera uno de estos métodos:

  • ACCT-SESIÓN-ID: Si este atributo está presente, su valor debe hacer juego a la acct-sesión-identificación para la sesión del usuario.
  • Framed-IP-direccionamiento: Si este atributo está presente, sus valores deben hacer juego a la dirección IP enmarcada de la sesión.
  • Nombre de usuario: Si este atributo está presente, sus valores deben hacer juego al nombre de usuario de la sesión.
  • LLAMAR-ESTACIÓN-ID: Ésta es la identidad internacional del suscriptor móvil (IMSI) del usuario.

Configuración de RADIUS DM

La configuración de un RADIUS DM es muy fácil. Todas las líneas necesitan ser configuradas en el contexto del destino (el que está con la configuración de RADIUS).

[port port] del valor de la clave del [encrypted] de los ip_address cambio-autorizar-NAS-IP del radio
[no-nas-identification-check] del [eventtimestamp-window window]
[no-reverse-path-forward-check] [in_label_value de la entrada de la MPLS-escritura de la etiqueta | salida out_label_value1
[out_label_value2]

 

Nota: El “cambio-autorizar-NAS-IP del radio” debe ser direccionamiento de la interfaz AAA de su contexto local. Este comando CLI es a veces una fuente de confusión.

Configuración de muestra:

radius change-authorize-nas-ip 192.168.88.40 encrypted key <key value>
no-reverse-path-forward-check
no-nas-identification-check

Ejemplos del escenario de falla

Ningunos mensajes DM recibidos en el lado ASR 5000

Es posible que el socket no está listo para el puerto 3799 UDP. (De acuerdo con el RFC 3756, el paquete de pedido de desconexión RADIUS se envía al puerto 3799 UDP).

Este comportamiento puede ser simplificado. El proceso que maneja todas las peticiones CoA es el caso 385 del aaamgr, que es el que está en el indicador luminoso LED amarillo de la placa muestra gravedad menor activo SMC/MIO. Este comando CLI necesita ser ejecutado en el contexto del destino.

#cli test-commands password <xx> #show radius info radius group all instance 385

 Tal salida parece: 

# 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

En este ejemplo, no hay puerto 3799 y ésta es la razón del comportamiento señalado. Si usted ve lo mismo en su caso, la solución es quitar y re-agregar la configuración CoA para reconstruir el socket que escucha. Además, usted puede intentar matar al caso 385 del aaamgr si la primera solución no ayuda.

Después de las acciones descritas, usted debe ver esta salida:

# 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

y el socket debe ser visible del shell del debug en el context/VR apropiado: 

bash-2.05b# netstat -lun | grep 3799
udp 0 0 10.176.81.215:3799 0.0.0.0:*

El puerto 3379 UDP tiene socket listo sin los mensajes DM

El puerto 3379 UDP tiene socket listo, no obstante usted todavía no ve los mensajes DM. Esto es causada probablemente por una configuración incorrecta del cambio-autorizar-NAS-IP del radio. Cualquier los valores de atributo que vinieron en el mensaje request DM no hacen juego los que fueron enviadas en una petición de las estadísticas hacia el RADIUS.

Petición que considera

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)

Pedido de desconexión

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

En este ejemplo, el valor de la Acct-Sesión-identificación que viene al ASR 5000 es diferente que el que está enviado hacia el RADIUS y éste es la razón del problema. Este problema se puede reparar por los cambios apropiados en el lado RADIUS.

La Acct-Sesión-identificación para la sesión activa se puede verificar con el <> activo del imsi de la AAA-configuración de los suscriptores GGSN-solamente del comando show.

[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

Todos los atributos hacen juego, pero el ASR 5000 envía DM NAK con el mensaje de error: 401 - Atributo sin apoyo

En este momento se sabe que este mensaje del tipo de error significa que el problema viene del servidor de RADIUS. Sin embargo, todavía no está claro cuál es incorrecto. Aquí, la limitación del ASR 5000 no soporta la Llamar-estación-identificación en el radio DM. Por lo tanto, si se ve allí, contesta con el error resaltado.

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)

El sistema ha configurado “ninguno-NAS-identificación-control” en “la línea cambio-autorizar-NAS-IP del radio”, error de la “NAS-Identificación-discordancía” todavía vuelto

Esto sucede en esta configuración:

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

Para un contexto activo PDP, el pedido de desconexión está descubierto:

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)
          &nbsp                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)

Sin embargo, cuando esta línea se incluye en el grupo del valor por defecto AAA:

    radius attribute nas-identifier starent

comienza a trabajar:

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

O también trabajará sin la configuración del NAS-identificador en el grupo AAA, pero con el NAS-identificador AVP quitado del pedido de desconexión:

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

Se ha sometido el Id. de bug Cisco CSCuw78786. Esto se ha probado en la versión 17.2.0 y la versión 15.


Discusiones relacionadas de la comunidad de soporte de Cisco

La Comunidad de Soporte de Cisco es un foro donde usted puede preguntar y responder, ofrecer sugerencias y colaborar con colegas.