Hi,


Our client registers with the IMS core using UDP but uses TCP when the  packet 
size is over 1300 bytes. When the client sends the TCP reques, the  PCSCF 
replies with 403 Forbidden "you need to reg with the  SCSCF"

We've traced this back to the code in the PCSCF and it looks like it is  
checking  the via headers and the received ip/port combinations for a match. 
The  actual  contact header looks like it matches the registered client.



Question is what do we need to do in the client to ensure that the PCSCF  
recognizes the request  as one from a registered client?



We've tried the config options is_registered_fallback2ip ,  
ignore_contact_rxport_check  and they don't seem to be used.



I'm attaching a network trace and included here are some debug messages from 
the PCSCF. In the network trace the client is 10.8.0.6.



PCSCF Trace messages -------------------------------------------

34207) DEBUG: ims_registrar_pcscf [service_routes.c:208]: getContactP():

This is a request - using first via to find contact

10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:216]:

getContactP(): searching for contact with host:port:proto contact  
[2://10.8.0.6:49946]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:457]: get_pcontact():

Searching for contact with AOR

[sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2]

in P-CSCF usrloc based on VIA [2://10.8.0.6:49946] Received  
[2://10.8.0.6:49946], Search flag is 0

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:463]: get_pcontact(): Have an  AOR 
to search for

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:468]: get_pcontact():

checking for rinstance10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:480]:

get_pcontact(): no rinstance param

10(34207) DEBUG: ims_usrloc_pcscf [usrloc.c:148]: get_aor_hash():

Returning hash: [1662767777]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:503]: get_pcontact():

get_pcontact slot is [161]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:507]: get_pcontact():

comparing contact with aorhash [1662767777], aor  
[sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:508]: get_pcontact():

contact host [10.8.0.6:44580]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:509]: get_pcontact(): contact  
received [1:10.8.0.6:44580]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:543]: get_pcontact(): contact  not 
found in memory

10(34207) INFO: ims_registrar_pcscf [service_routes.c:258]: getContactP():

Contact not found based on Contact-header, trying IP/Port/Proto

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:457]: get_pcontact():

Searching for contact with AOR

[sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2]

in P-CSCF usrloc based on VIA [2://10.8.0.6:49946] Received  
[2://10.8.0.6:49946], Search flag is 1

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:463]: get_pcontact(): Have an  AOR 
to search for

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:468]: get_pcontact():

checking for rinstance10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:480]:

get_pcontact(): no rinstance param

10(34207) DEBUG: ims_usrloc_pcscf [usrloc.c:148]: get_aor_hash():

Returning hash: [1662767777]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:503]: get_pcontact():

get_pcontact slot is [161]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:507]: get_pcontact():

comparing contact with aorhash [1662767777], aor  
[sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:508]: get_pcontact():

contact host [10.8.0.6:44580]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:509]: get_pcontact(): contact  
received [1:10.8.0.6:44580]

10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:543]: get_pcontact(): contact  not 
found in memory

10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:263]:

getContactP(): No entry in usrloc for 10.8.0.6:49946 (Proto 2) found!

10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:300]:

getContactP(): Asserted identity not set10(34207) ERROR: ***  
cfgtrace:request_route=[Orig_Initial] c=[/opt/OpenEPC/etc/pcscf2.cfg]

l=975 a=26 n=xlog

10(34207) WARNING: <script>: 2.1

10(34207) ERROR: *** cfgtrace:request_route=[Orig_Initial]

c=[/opt/OpenEPC/etc/pcscf2.cfg] l=976 a=26 n=send_reply

Appreciate any help we can get,

-        Paul


Attachment: subscribe.pcap
Description: subscribe.pcap

_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to