[SR-Users-ES] Fallo al registrar un usuario y encontrar el AVP

jespinosa jespinosa en uma.es
Vie Ago 2 13:53:43 CEST 2019


Hola,
Mi nombre es Javier, primero debo pedir disculpas por mi poco 
conocimiento sobre la herramienta. Estoy intentando conectar un core 
funcional de red LTE (EPC) con Kamailio y he utilizado la solución de 
Polaris Networks que viene en una imagen con ambas funcionalidades.
El EPC está correctamente configurado y funcionando ya que puedo tener 
conexión de datos en mi UE, también he activado todas las opciones de 
IMS en el EPC: He creado el APN con identificador ims, el QCI de la 
portadora por defecto que asigna es 5 (para señalización SIP), el MME 
tiene activado la opción de soportar Voz IMS sobre la sesión PS y los 
nodos HSS y PCRF están configurados con las interfaces en las 
direcciones y puertos Cx-HSS 127.0.0.1:3868 y Cx-PCRF 10.11.0.35.
Hay varios parámetros que no sé si es necesario activar como por 
ejemplo, en el PCRF la personalización del QCI para el tipo de media, si 
debo incluir el OCS y OFCS como nodos, o si en el perfil de mi APN debo 
incluir autenticación por PDN AAA.
La configuración que utilizo para el IMS es la siguiente:
imsrealm = net1.test
imsport = 5060
pcscfgmip = 10.77.0.35
pcscfgmipintf = eth6
pcscfrxip = 10.102.81.111
pcscfrxipintf = eth1
icscfmwip = 127.0.0.21
icscfmwipintf = lo:21
icscfcxip = 127.0.0.20
icscfcxipintf = lo:20
scscfmwip = 127.0.0.23
scscfmwipintf = lo:23
scscfcxip = 127.0.0.22
scscfcxipintf = lo:22
audiobandwidth = 64
videobandwidth = 128
epcrealm = epc.mnc001.mcc001.3gppnetwork.org
pcrfhost = pcrf2.morsecore
pcrfrxip = 10.11.0.35
pcrfrxport = 3868
hsshost = hss6.morsecore
hsscxdxip = 127.0.0.1
hsscxdxport = 3868

Ambos núcleos están corriendo en la misma máquina pero tengo 
deshabilitada la opción de PCRF Co-located with IMS para poder editar el 
pcrf host name ya que si lo habilito no alcanza la peer pcrf.localhost 
aunque en el DNS esté bien configurado. Mi UE no es capaz de lanzar el 
REGISTER por él mismo, cuando va a realizar una llamada y estoy 
utilizando la aplicación de Google IMSDroid para poder lanzar las 
peticiones SIP y comprobar el funcionamiento del IMS. En la aplicación 
del UE la configuración es la siguiente:
Identidad: Alice
Public Identity: sip:<MSISDN>@net1.test (MSISDN=8800000451 configurado 
previamente en el EPC)
Private Identity: sip:<IMSI>@net1.test (IMSI incluyendo MCC y MNC)
Password: alice
Realm: net1.test (Aunque no sé si debo poner aquí 
epc.mnc001.mcc001.3gppnetwork.org, pero entonces la petición da error)
Network: Proxy-CSCF Host: 10.77.0.35:5060 Transport UDP and NO 
Proxy-CSCF discovery.

Entonces, lanzo mi petición y el log del nodo P-CSCF es es siguiente:
Aug  2 12:50:04 morsecore kamailio[53656]: INFO: <script>: REGISTER 
(sip:8800000451 en net1.test (10.77.0.196:37651) to 
sip:8800000451 en net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug  2 12:50:04 morsecore kamailio[53656]: INFO: cdp 
[authstatemachine.c:200]: auth_client_statefull_sm_process(): after 
callback of event 1
Aug  2 12:50:04 morsecore kamailio[53802]: INFO: cdp 
[authstatemachine.c:200]: auth_client_statefull_sm_process(): after 
callback of event 7
Aug  2 12:50:04 morsecore kamailio[53655]: INFO: <script>: REGISTER 
(sip:8800000451 en net1.test (10.77.0.196:37651) to 
sip:8800000451 en net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug  2 12:50:05 morsecore kamailio[53664]: INFO: <script>: REGISTER 
(sip:8800000451 en net1.test (10.77.0.196:37651) to 
sip:8800000451 en net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug  2 12:50:07 morsecore kamailio[53659]: INFO: <script>: REGISTER 
(sip:8800000451 en net1.test (10.77.0.196:37651) to 
sip:8800000451 en net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug  2 12:50:11 morsecore kamailio[53666]: INFO: <script>: REGISTER 
(sip:8800000451 en net1.test (10.77.0.196:37651) to 
sip:8800000451 en net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)

Que entiendo que hasta ahí todo es correcto, pero en el nodo I-CSCF me 
aparece:
Aug  2 12:50:04 morsecore kamailio[53397]: INFO: ims_icscf 
[cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully : 
[uaa_return_code]
Aug  2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf 
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_server_name: Failed finding 
avp
Aug  2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf 
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_capabilities: Failed finding 
avp
Aug  2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf 
[cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_result_code: Failed finding 
avp
Aug  2 12:50:04 morsecore kamailio[53465]: ERROR: ims_icscf 
[cxdx_uar.c:152]: async_cdp_uar_callback(): 
RC_IMS_DIAMETER_ERROR_USER_UNKNOWN
Aug  2 12:50:04 morsecore kamailio[53465]: INFO: ims_icscf 
[cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully : 
[uaa_return_code]
Aug  2 12:50:04 morsecore kamailio[53465]: ERROR: <script>: UAR failure 
- error response sent from module

Donde creo que ni si quiera se reenvía el mensaje de REGISTER, sin 
embargo parece que da error de que el usuario es desconocido o no está 
registrado pero si accedo a la base de datos MySQL, los usuarios 
registrados son:
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
| id | username   | domain    | password | email_address | ha1           
                    | ha1b                             | rpid |
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
|  1 | alice      | net1.test | alice    |               | 
91cc8c652ef5f37e91c468c7319d0086 | 044776963e2661788e8db076b393333e | 
NULL |
|  2 | bob        | net1.test | bob      |               | 
6ef7f9c924f1385d83cf22cbb94cfbbb | 0d893d2d8c10a044b918e4bd73b6bee5 | 
NULL |
|  3 | 8800000451 | net1.test | alice    |               | 
46811c4e58f298953a6f9efccf6c32f1 | 49c7a7ad84fe797fbefa2185be4cd226 | 
NULL |
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+

Sin embargo, no sé si está accediendo a la base de datos MySQL montada o 
al HSS y en este nodo, en las bases de datos que contiene no está el 
usuario (aunque debe estarlo porque se registra en la red 
correctamente).
Por si sirve de algo, esta es la traza de wireshark filtrada por los 
protocolos S1AP, SIP y Diameter justo cuando se lanza una petición 
REGISTER:
"596","2019-08-02 
12:50:00.705985000","127.0.0.20","127.0.0.1","DIAMETER","130","cmd=Device-Watchdog 
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"597","2019-08-02 
12:50:00.706133000","127.0.0.1","127.0.0.20","DIAMETER","210","cmd=Device-Watchdog 
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"599","2019-08-02 
12:50:00.786878000","127.0.0.22","127.0.0.1","DIAMETER","130","cmd=Device-Watchdog 
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"600","2019-08-02 
12:50:00.787019000","127.0.0.1","127.0.0.22","DIAMETER","210","cmd=Device-Watchdog 
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"602","2019-08-02 
12:50:00.914405000","10.102.81.111","10.11.0.35","DIAMETER","130","cmd=Device-Watchdog 
Request(280) flags=R--- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"603","2019-08-02 
12:50:00.914549000","10.11.0.35","10.102.81.111","DIAMETER","214","cmd=Device-Watchdog 
Answer(280) flags=---- appl=Diameter Common Messages(0) h2h=fedcb89 
e2e=4df0bbf5 | "
"622","2019-08-02 12:50:04.027238000","10.77.0.196","10.77.0.35","GTP 
<SIP>","1034","Request: REGISTER sip:net1.test  (1 binding) | "
"623","2019-08-02 12:50:04.027347000","10.77.0.196","10.77.0.35","GTP 
<SIP>","1034","Request: REGISTER sip:net1.test  (1 binding) | "
"624","2019-08-02 
12:50:04.027448000","10.77.0.196","10.77.0.35","SIP","998","Request: 
REGISTER sip:net1.test  (1 binding) | "
"625","2019-08-02 
12:50:04.028850000","10.102.81.111","10.11.0.35","DIAMETER","426","cmd=AA 
Request(265) flags=RP-- appl=3GPP Rx(16777236) h2h=fedcb8a e2e=4df0bbf6 
| "
"626","2019-08-02 
12:50:04.029862000","10.11.0.35","10.102.81.111","DIAMETER","350","cmd=AA 
Answer(265) flags=-P-- appl=3GPP Rx(16777236) h2h=fedcb8a e2e=4df0bbf6 | 
"
"630","2019-08-02 
12:50:04.031113000","10.77.0.35","127.0.0.21","SIP","1280","Request: 
REGISTER sip:net1.test  (1 binding) | "
"631","2019-08-02 
12:50:04.031794000","127.0.0.21","10.77.0.35","SIP","440","Status: 100 
Trying | "
"632","2019-08-02 
12:50:04.032382000","127.0.0.20","127.0.0.1","DIAMETER","354","cmd=User-Authorization 
Request(300) flags=RP-- appl=3GPP Cx(16777216) h2h=fedcb8a e2e=4df0bbf6 
| "
"633","2019-08-02 
12:50:04.033101000","127.0.0.1","127.0.0.20","DIAMETER","298","cmd=User-Authorization 
Answer(300) flags=-P-- appl=3GPP Cx(16777216) h2h=fedcb8a e2e=4df0bbf6 | 
"
"636","2019-08-02 
12:50:04.033557000","127.0.0.21","10.77.0.35","SIP","504","Status: 403 
Forbidden - HSS User Unknown | "

No sé si falta alguna información o algún detalle sobre la configuración 
pero puedo adjuntarlo en cualquier momento sin ningún problema.
Un saludo y muchas gracias de antemano,
Javier Espinosa.



Más información sobre la lista de distribución sr-users-es