Hello Henning Westerholt,
First of all thanks for your fast answer, as you mentioned I had not
defined that xml file but I have defined three xml for each node (that
are referenced in kamailio.cfg also one per node) that contains the
DiameterPeer information and for the icscf.xml this is the parameters:
<?xml version="1.0" encoding="UTF-8"?>
<DiameterPeer
FQDN="icscf.net1.test"
Realm="net1.test"
Vendor_Id="10415"
Product_Name="CDiameterPeer"
AcceptUnknownPeers="1"
DropUnknownOnDisconnect="1"
Tc="30"
Workers="4"
QueueLength="8"
TransactionTimeout="5"
SessionsHashSize="128"
DefaultAuthSessionTimeout="345600"
MaxAuthSessionTimeout="345600">
<Peer FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
Realm="epc.mnc001.mcc001.3gppnetwork.org" port="3868"
src_addr="127.0.0.20"/>
<Acceptor port="3868" bind="127.0.0.20"/>
<Auth id="16777216" vendor="10415"/>
<SupportedVendor vendor="10415" />
<!--Realm name="epc.mnc001.mcc001.3gppnetwork.org">
<Route
FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="1"/>
</Realm-->
<DefaultRoute
FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="2"/>
<!--DefaultRoute is needed for vendor=0 -->
</DiameterPeer>
For the node P-CSCF this is the XML file:
<?xml version="1.0" encoding="UTF-8"?>
<DiameterPeer
FQDN="pcscf.net1.test"
Realm="net1.test"
Vendor_Id="10415"
Product_Name="CDiameterPeer"
AcceptUnknownPeers="1"
DropUnknownOnDisconnect="1"
Tc="30"
Workers="4"
QueueLength="8"
TransactionTimeout="5"
SessionsHashSize="128"
DefaultAuthSessionTimeout="345600"
MaxAuthSessionTimeout="345600">
<Peer FQDN="pcrf2.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
Realm="epc.mnc001.mcc001.3gppnetwork.org" port="3868"
src_addr="10.102.81.111"/>
<Acceptor port="3868" bind="10.102.81.111"/>
<Auth id="16777236" vendor="10415"/>
<SupportedVendor vendor="10415" />
<!--Realm name="epc.mnc001.mcc001.3gppnetwork.org">
<Route
FQDN="pcrf2.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="1"/>
</Realm-->
<DefaultRoute
FQDN="pcrf2.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="2"/>
<!--DefaultRoute is needed for vendor=0 -->
</DiameterPeer>
And for the S-CSCF:
<?xml version="1.0" encoding="UTF-8"?>
<DiameterPeer
FQDN="scscf.net1.test"
Realm="net1.test"
Vendor_Id="10415"
Product_Name="CDiameterPeer"
AcceptUnknownPeers="1"
DropUnknownOnDisconnect="1"
Tc="30"
Workers="4"
QueueLength="8"
TransactionTimeout="5"
SessionsHashSize="128"
DefaultAuthSessionTimeout="345600"
MaxAuthSessionTimeout="345600">
<Peer FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
Realm="epc.mnc001.mcc001.3gppnetwork.org" port="3868"
src_addr="127.0.0.22"/>
<Acceptor port="3868" bind="127.0.0.22"/>
<Auth id="16777216" vendor="10415"/>
<SupportedVendor vendor="10415" />
<!--Realm name="epc.mnc001.mcc001.3gppnetwork.org">
<Route
FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="1"/>
</Realm-->
<DefaultRoute
FQDN="hss6.morsecore.epc.mnc001.mcc001.3gppnetwork.org"
metric="2"/>
<!--DefaultRoute is needed for vendor=0 -->
</DiameterPeer>
Maybe this could help to find the answer to my problem. Thank you a lot.
Kind regards,
Javier Espinosa.
Hello Javiar,
I am not an IMS expert - but see my comment below inline:
Am 02.08.19 um 14:05 schrieb jespinosa:
Hello,
My name is Javier, I must first apologize for my little knowledge
about the tool and my poor English. I am trying to connect a
functional core network LTE with Kamailio and I have used the Polaris
Networks Solution that brings an iso with both functionalities.
The EPC is correctly configured and working because I can have data
connection in my UE, I have also activated all the IMS options in the
EPC: I have created the APN with ims identifier, the default carrier
QCI assigned is 5 (for SIP signaling), the MME has activated the
option to support IMS Voice over the PS session and the HSS and PCRF
nodes are configured with the interfaces at the addresses and ports
Cx-HSS 127.0.0.1:3868 and Cx-PCRF 10.11.0.35:3868 .
There are several parameters that I do not know if it is necessary to
activate, for example, in the PCRF the customization of the QCI for
the media type, if I must include the OCS and OFCS as nodes, or if in
the profile of my APN I must include authentication by PDN AAA.
The configuration I use for the IMS is as follows:
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
Both cores are running on the same machine but I have disabled the
option of PCRF Co-located with IMS to be able to edit the pcrf host
name since if I enable it it does not reach the peer pcrf.localhost
even if the DNS is well configured. My UE is not able to launch the
REGISTER by itself when it is going to make a call, so I am using the
Google IMSDroid application to be able to launch the SIP requests and
check the operation of the IMS. In the application of the UE the
configuration is as follows:
Identity: 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.
So, I launch my request and the log of the P-CSCF node is as follows:
Aug 2 12:50:04 morsecore kamailio[53656]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@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@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:05 morsecore kamailio[53664]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:07 morsecore kamailio[53659]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
Aug 2 12:50:11 morsecore kamailio[53666]: INFO: <script>: REGISTER
(sip:8800000451@net1.test (10.77.0.196:37651) to
sip:8800000451@net1.test, 76203fe6-1d8f-bcba-c9ab-4050ac0d8cc8)
I understand that everything is correct until now, but in the I-CSCF
node it appears:
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
This is the code that creates this error:
avp = cdpb.AAAFindMatchingAVP(msg,0,avp_code,vendor_id,0);
if (avp==0){
LM_INFO("%s: Failed finding avp\n",func);
return r;
}
So the module can't execute the AAAFindMatchingAVP function imported
from the CDP module. The README mentions a XML file that needs to be
defined, have you setup this as well?
> Where I believe that the REGISTER message is not even forwarded,
> however it seems that it gives an error that the user is unknown or
> not registered but if I access the MySQL database, the registered
> users are:
>
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
>
> | 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 |
>
+----+------------+-----------+----------+---------------+----------------------------------+----------------------------------+------+
>
>
> However, I do not know if it is accessing the mounted MySQL database
> or accessing the HSS and on this node, in the databases it does not
> contain the user (although it must be because it is registered in the
> network correctly).
> In case it works, this is the trace of wireshark filtered by the
> protocols S1AP, SIP and Diameter just when a REGISTER request is
> launched:
> "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 | "
>
> I don't know if any information or configuration details are missing
> but I can attach it at any time without any problem.
> Regards and thank you very much in advance,
> Javier Espinosa.
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users(a)lists.kamailio.org
>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users