[SR-Users] How to statelessly send a reply to custom destination?

George Diamantopoulos georgediam at gmail.com
Fri Jul 5 10:27:37 CEST 2019


Thank you for the reply Karsten!

I'm afraid the options_reply() function won't work for me. The reason is
that it seems to only handle OPTIONS where the RURI username is not set,
and in my case I need to be able to handle these cases.

Moreover, it is not evident from the siputils module documentation if it
will perform NAT traversal on the side of kamailio, which is my original
problem. I'm beginning to think I can't serve NATted endpoints' requests
statelessly and that I'd have to handle the reply statefully, am I right in
thinking that?

BR,
George

On Fri, 5 Jul 2019 at 09:37, Karsten Horsmann <khorsmann at gmail.com> wrote:

> Hi George,
>
> i use something like that (shameless stolen from other configuration files
> within request-route).
>
> Thats for answering options to my internal kamailio.
> But Alex Balashov wrote an nice blog poste about NAT/OPTION Pings
> with kamailio:
> http://www.evaristesys.com/blog/server-side-nat-traversal-with-kamailio-the-definitive-guide/
>
>     ### only initial requests (no To tag)
>     if (is_method("OPTIONS"))
>     {
>         if (uri=~"sip:.*[@]+.*")  {
>             sl_send_reply("501", "Not Implemented");
>         }
>         else {
>             options_reply();
>             exit;
>         }
>     }
>
> Cheers Karsten
>
> Am Do., 4. Juli 2019 um 10:29 Uhr schrieb George Diamantopoulos <
> georgediam at gmail.com>:
>
>> Hello all,
>>
>> I've been trying to handle OPTIONS statelessly, but proper handling fails
>> for UACs behind NAT without ALG. I thought I'd overcome this by setting the
>> $du pseudovariable, but apparently I'm missing something. The following
>> does not work:
>>
>>         if ($Rp == "6050") {
>>             force_send_socket(udp:10.10.10.10:6050);
>>         }
>>         $du = "sip:" + $si + ":" + $sp;
>>         sl_send_reply("200","OK");
>>         exit;
>>
>> I'm now realising that I put this in request_route() so
>> force_send_socket() and $du have no use whatsoever, since the request is
>> not forwarded anywhere. Is this the reason?
>>
>> So the question is, how can I do the following things for a stateless
>> reply: a) choose a sending socket for the reply and b) change the
>> destination for the reply to something other than the URI in the first Via
>> header.
>>
>> Thanks!
>>
>> BR,
>> George
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>
>
> --
> Mit freundlichen Grüßen
> *Karsten Horsmann*
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190705/4d59d773/attachment.html>


More information about the sr-users mailing list