[sr-dev] git:master: ims_usrloc_pcscf: Add option, to disable the "received check" upon lookup.
Carsten Bock
carsten at ng-voice.com
Mon Jun 9 00:06:11 CEST 2014
Absolutely! The current implementation does not work with NAT... :-(
>From Syslog:
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_usrloc_pcscf [usrloc.c:114]: get_aor_hash(): using host in lookup
[192.168.178.23]
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_usrloc_pcscf [udomain.c:473]: get_pcontact(): Searching for
contact in P-CSCF usrloc
[sip:4989200011250 at 192.168.178.23:1024;alias=92.225.199.53~1024~1;line=nnh95z41]
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_usrloc_pcscf [udomain.c:481]: get_pcontact(): Searching for
[sip:4989200011250 at 192.168.178.23:1024;alias=92.225.199.53~1024~1;line=nnh95z41]
and comparing to
[sip:4989200011250 at 192.168.178.23:1024;alias=92.225.215.38~1024~1;line=nnh95z41]
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_registrar_pcscf [service_routes.c:154]: getContactP(): Received
host len 13 (search 13)
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_registrar_pcscf [service_routes.c:159]: getContactP(): Received
host 92.225.215.38 (search 92.225.199.53)
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: WARNING:
ims_registrar_pcscf [service_routes.c:176]: getContactP(): Contact not
found based on Contact-header, trying IP/Port/Proto
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_usrloc_pcscf [usrloc.c:114]: get_aor_hash(): using host in lookup
[92.225.199.53]
Jun 9 00:02:48 voiceblue-2 /usr/sbin/kamailio[73629]: DEBUG:
ims_registrar_pcscf [service_routes.c:180]: getContactP(): No entry in
usrloc for 92.225.199.53:1024 (Proto 1) found!
I have to find a better way, to deal with NAT. I will continue working
on this on tuesday...
Thanks,
Carsten
2014-06-08 21:30 GMT+02:00 Jason Penton <jason.penton at gmail.com>:
> You battling with nat?
>
> On 6 Jun 2014 19:10, "Carsten Bock" <carsten at ng-voice.com> wrote:
>>
>> Module: sip-router
>> Branch: master
>> Commit: a9155e4c73d533d0837bfd480ff7d838d18dc995
>> URL:
>> http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=a9155e4c73d533d0837bfd480ff7d838d18dc995
>>
>> Author: Carsten Bock <carsten at ng-voice.com>
>> Committer: Carsten Bock <carsten at ng-voice.com>
>> Date: Fri Jun 6 19:09:55 2014 +0200
>>
>> ims_usrloc_pcscf: Add option, to disable the "received check" upon lookup.
>>
>> ---
>>
>> .../doc/ims_usrloc_pcscf_admin.xml | 27
>> ++++++++++++++++++++
>> modules/ims_usrloc_pcscf/udomain.c | 3 +-
>> modules/ims_usrloc_pcscf/ul_mod.c | 4 +++
>> 3 files changed, 33 insertions(+), 1 deletions(-)
>>
>> diff --git a/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml
>> b/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml
>> index 43c91f8..2bdb7c1 100644
>> --- a/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml
>> +++ b/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml
>> @@ -204,6 +204,33 @@ modparam("ims_usrloc_pcscf", "hashing_type", 1)
>> </programlisting>
>> </example>
>> </section>
>> + <section>
>> + <title>lookup_check_received (int)</title>
>> +
>> + <para>If set to 1 (default), the Host in the contact will be
>> checked
>> + against the Host, from which the request was received.</para>
>> +
>> + <itemizedlist>
>> + <listitem>
>> + <para>0 - Upon lookup, do not check the host against
>> received.</para>
>> + </listitem>
>> +
>> + <listitem>
>> + <para>1 - Compare the host in the contact against the received
>> info.</para>
>> + </listitem>
>> + </itemizedlist>
>> +
>> + <para><emphasis>Default value is 1.</emphasis></para>
>> +
>> + <example>
>> + <title>Set lookup_check_received parameter</title>
>> +
>> + <programlisting format="linespecific">...
>> +modparam("ims_usrloc_pcscf", "lookup_check_received", 0)
>> +...
>> +</programlisting>
>> + </example>
>> + </section>
>> </section>
>>
>> <section>
>> diff --git a/modules/ims_usrloc_pcscf/udomain.c
>> b/modules/ims_usrloc_pcscf/udomain.c
>> index d655dea..e19b0f4 100644
>> --- a/modules/ims_usrloc_pcscf/udomain.c
>> +++ b/modules/ims_usrloc_pcscf/udomain.c
>> @@ -63,6 +63,7 @@
>>
>> extern int db_mode;
>> extern unsigned int hashing_type;
>> +extern int lookup_check_received;
>>
>> #ifdef STATISTICS
>> static char *build_stat_name( str* domain, char *var_name)
>> @@ -471,7 +472,7 @@ int get_pcontact(udomain_t* _d, str* _contact, struct
>> pcontact** _c) {
>> _contact->len,
>> _contact->s);
>>
>> - if ((c->aorhash == aorhash) && (c->aor.len ==
>> _contact->len)
>> + if (lookup_check_received && (c->aorhash == aorhash) &&
>> (c->aor.len == _contact->len)
>> && !memcmp(c->aor.s, _contact->s,
>> _contact->len)) {
>> *_c = c;
>> return 0;
>> diff --git a/modules/ims_usrloc_pcscf/ul_mod.c
>> b/modules/ims_usrloc_pcscf/ul_mod.c
>> index 998d4bc..d9e2b08 100644
>> --- a/modules/ims_usrloc_pcscf/ul_mod.c
>> +++ b/modules/ims_usrloc_pcscf/ul_mod.c
>> @@ -85,6 +85,8 @@ int db_mode = 0;
>> /*!< Database sync scheme: 0-no db, 1-write throug
>> int ul_fetch_rows = 2000;
>> int hashing_type = 0;
>> /*!< has type for storing P-CSCF contacts - 0 - use full contact AOR, 1 -
>> use IP:PORT only */
>>
>> +int lookup_check_received = 1;
>> /*!< Should we check received on lookup?
>> +
>> db1_con_t* ul_dbh = 0;
>> db_func_t ul_dbf;
>>
>> @@ -109,6 +111,8 @@ static param_export_t params[] = {
>> {"timer_interval", INT_PARAM, &timer_interval },
>> {"db_mode", INT_PARAM, &db_mode },
>> {"hashing_type", INT_PARAM, &hashing_type },
>> + {"lookup_check_received", INT_PARAM,
>> &lookup_check_received },
>> +
>> {0, 0, 0}
>> };
>>
>>
>>
>> _______________________________________________
>> sr-dev mailing list
>> sr-dev at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
--
Carsten Bock
CEO (Geschäftsführer)
ng-voice GmbH
Schomburgstr. 80
D-22767 Hamburg / Germany
http://www.ng-voice.com
mailto:carsten at ng-voice.com
Office +49 40 34927219
Fax +49 40 34927220
Sitz der Gesellschaft: Hamburg
Registergericht: Amtsgericht Hamburg, HRB 120189
Geschäftsführer: Carsten Bock
Ust-ID: DE279344284
Hier finden Sie unsere handelsrechtlichen Pflichtangaben:
http://www.ng-voice.com/imprint/
More information about the sr-dev
mailing list