I have kamailio behind a TLS termination proxy so the sockets are correctly
deduced to be TCP. However the clients only talk TLS to the proxy and are
confused when the top Via header added by Kamailio is TCP. Is there a way
for Kamailio to forcibly pretend its protocol is TLS? Like
advertised_address but "advertised_protocol" instead.
(With pjsip testing: it has a flag use_tls which ignores TCP from Kamailio
and continues to use the persistent TLS transport to proxy. Linphone fails
because it tries to honor TCP in Via and is unable to establish TCP
transport).
BTW I am using t_relay_to_tcp so Kamailio will return traffic to the proxy
as TCP even though the contact addresses specify transport=TLS.
On Mon, May 07, 2018 at 04:44:14PM +0200, Daniel Tryba wrote:
> Sure. Attached. Problem appears to be that the topos query can't find
> callid-totag (from the response).
>
> I'll try the same scenario with the mysql backend to see if it behaves
> different.
Config works fine with mysql as topos backend. So the bug is restricted
to topos-redis.
Hi,
We’re still using kamailio 4.4 but we’ll be migrating to 5.0 soon.
Cool so it will be fixed when we migrate !
Thanks,
Andreas
From: sr-users [mailto:sr-users-bounces@lists.kamailio.org] On Behalf Of Federico Cabiddu
Sent: vendredi 12 mai 2017 11:56
To: Kamailio (SER) - Users Mailing List
Subject: Re: [SR-Users] t_drop_replies not working with t_suspend in failure route
Hi,
which version are you using?
A similar case had been reported some months ago and it should be fixed in 5.0.
Regards,
Federico
On Fri, May 12, 2017 at 11:44 AM, Huber Andreas <andreas.huber(a)nagra.com<mailto:andreas.huber@nagra.com>> wrote:
Hello,
We have a use case where we suspend a transaction in a failure_route to give UEs that might be woken by a push notification more time to REGISTER and join the INVITE.
We’d like to drop the previous branches in this case. I tried using t_drop_replies() but it has no effect.
The doc states that t_drop_replies() is only working if a new branch is added. And from my understanding t_suspend() adds a new branch.
But is it possible that t_drop_replies() cannot be used with t_suspend()? Or am I missing something?
Kind Regards,
Andreas
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
hi,
I have a Kamailio setup infront of a SIP system that do not handle cancellation of a INVITE correctly.
The system sends out a BYE request instead of a Cancel request on non connected dialogs.
I am trying to find a way to let Kamailio "translate" the BYE request to a Cancel reqeust for the ongoing INVITE dialog.
Alternative if SEMS b2bua can do it, but currently it replies: "not sip-relaying BYE in not connected dlg", and I have not found any obvious way to rewrite it there.
Any thoughts. I can not change the behavior of the remote system.
Best Regards,
Lars
When receiving an INVITE over a specific LTE carrier, I'm seeing 'c=IN IP4
192.0.0.4' in SDP, which isn't technically a RFC1918 or RFC6598 IP address
and thus nat_uac_test(8) fails.
What elegant workaround can be done to catch such specific cases?
Thanks.
Hello,
I'm using RTPproxy for the first time in bridged mode and I can't get kamailio/rtpproxy to rewrite the c parameter to the correct public ip address of kamailio.
The setup is as following:
Carrier ------[fiber]------ Kamailio ---------[lan]--------- Freeswitch
Kamailio is listening on two interfaces:
1) Private: 172.0.0.1
2) Public: 192.168.0.1 (since we have a dedicated fiber with our carrier, this is its public address)
Freeswitch is listening on:
1) 172.0.0.2
Carrier is on:
1) 10.0.0.1
I've started an rtpproxy instance on the Kamailio box using:
rtpproxy -s udp:127.0.0.1:7721 -u rtpproxy rtpproxy -p /var/run/rtpproxy/rtpproxy.pid -l 192.168.0.1 172.0.0.1
I've played around with rtpproxy_manage() and the various flags (ie, ei), but I can't get kamailio to set the correct public IP when the 200 OK has to be sent back to the carrier.
It always sets it to its private address, instead of its public address.
I'm using Kamailio 4.2 with sippy/rtpproxy 2.0.
Could someone please point me into the right direction?
Thanks!
Grant
Hi,
With Asterisk, we are able to get some peer round-trip connection statistic by setting qualify=yes for the specified peer.
It sends periodic OPTIONS to the peer and calculates the time round trip time.
It's something like - "Status: OK (30 ms)".
Is there any way to achieve this in Kamailio by using nathelper module, or any other?
Thank you.
Hi kamailios,
i have a creepy situation with v5.2.1 stable Kamilio. After a day or
so, Kamailio stop to process incoming SIP traffic via TCP. The
incoming TCP network packages get TCP-ACK from the OS (Debian 9,
4.18.0-15-generic-Linux) but Kamailio does not show any processing for
the SIP-Traffic incoming via TCP. No logs, nothing. While traffic via
UDP is working just totally fine.
When i look via command "netstat -ntp" is see, that the Recv-Q get
bigger and bigger. e.g.:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program
name tcp 4566 0 172.17.217.12:5060 xxx.xxx.xxx.xxx:57252 ESTABLISHED
31347/kamailio
After Kamailio restart, all is working fine again for a day. We have
maybe 10-20 devices online via TCP and low call volume (1-2 call per
minute). The only settings for tcp we have is "tcp_delayed_ack=no"
How to could we debug this situation? Again, no error, no warings in
the log. Just nothing.
Kristijan
Hello,
I am trying to set up a WebRTC2SIP Gateway by using Kamailio and rtpengine.
So far, everything is working fine, I'm able to register an extension and
make a call, but for some reason, when i'm trying to call a WebRTC
extension from any SIP Extension Kamailio is sending INVITE, WebRTC
extension is sending back 200 OK, and then Kamailio is trying to send an
ACK through UDP protocol, and not through wss, as it's supposed to do. This
is how invite is looking:
INVITE sip:nl7oe4ss@vjbh7r4im6j7.invalid;transport=wss SIP/2.0
Record-Route: <sip:my-company.net
;transport=udp;ftag=as1789445c;lr=on;nat=yes>
Via: SIP/2.0/WSS 123.123.123.123:10443
;branch=z9hG4bKe655.29d7c135a302f3eb803902d4f5a8da7e.0
Via: SIP/2.0/UDP 192.168.50.237:5060
;received=192.168.50.237;branch=z9hG4bK7d2e534e;rport=5060
Max-Forwards: 70
From: "WebRTC" <sip:11@my-company.net>;tag=as1789445c
To: <sip:15@192.168.50.210:5060>
Contact: <sip:11@192.168.50.237:5060>
Call-ID: 7fc800de060197fa2315c93763873092(a)my-company.net
CSeq: 102 INVITE
User-Agent: Proxy
Date: Wed, 03 Apr 2019 17:11:41 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO,
PUBLISH, MESSAGE
Supported: replaces, timer
Alert-Info:
Content-Type: application/sdp
Content-Length: 596
Server: SIP Proxy
and then WebRTC app is replying with 200 OK:
SIP/2.0 200 OK
Record-Route: <sip:my-company.net
;transport=udp;ftag=as1789445c;lr=on;nat=yes>
Via: SIP/2.0/WSS 123.123.123.123:10443
;branch=z9hG4bKe655.29d7c135a302f3eb803902d4f5a8da7e.0
Via: SIP/2.0/UDP 192.168.50.237:5060
;received=192.168.50.237;branch=z9hG4bK7d2e534e;rport=5060
To: <sip:15@192.168.50.210:5060>;tag=dk4fa8ftt6
From: "WebRTC" <sip:11@my-company.net>;tag=as1789445c
Call-ID: 7fc800de060197fa2315c93763873092(a)my-company.net
CSeq: 102 INVITE
Contact: <sip:nl7oe4ss@vjbh7r4im6j7.invalid;transport=wss>
Allow: ACK,CANCEL,INVITE,MESSAGE,BYE,OPTIONS,INFO,NOTIFY,REFER
Supported: outbound
User-Agent: Proxy-WEBRTC
Content-Type: application/sdp
Content-Length: 901
and finally, Kamailio is trying to send this ack through UDP protocol:
ACK sip:nl7oe4ss@22.22.22.22:57421;transport=wss SIP/2.0
Via: SIP/2.0/UDP 192.168.50.237:5060;branch=z9hG4bK56363ddf;rport
Route: <sip:my-company.net;transport=udp;ftag=as1789445c;lr=on;nat=yes>
Max-Forwards: 70
From: "WebRTC" <sip:11@my-company.net>;tag=as1789445c
To: <sip:15@192.168.50.210:5060>;tag=dk4fa8ftt6
Contact: <sip:11@192.168.50.237:5060>
Call-ID: 7fc800de060197fa2315c93763873092(a)my-company.net
CSeq: 102 ACK
User-Agent: Proxy
Content-Length: 0
If i'm trying to force it through TLS, i'm receiving error:
get_send_socket2(): protocol/port mismatch (forced tls:123.123.123.123:10443,
to udp:22.22.22.22:23317)
Can someone point me in the right direction, please?
Thank you.
Dear friends,
I am working on a program on Kamailio and rtpengine proxy. I am wondering whether can I set Kamailio and rtpengine daemon on different physical machines. For example, I set Kamailio on a machine with IP address:10.109.247.80, and launch rtpengine daemon on another machine with interface parameter as 10.109.247.90 and ng port 7723. I set parameter in Kamailio.cfg with modparam(“rtpengine”, “rtpengine_sock”, “udp:10.109.247.90:7723”).
Unfortunately I got debug message like this:
ERROR: rtpengine [rtpengine.c:1710]: send_rtpp_command(): can't send command to a RTP proxy
ERROR: rtpengine [rtpengine.c:1746]: send_rtpp_command(): proxy <udp:10.109.247.90:7723> does not respond, disable it
ERROR: rtpengine [rtpengine.c:1616]: rtpp_test(): proxy did not respond to ping
And, I also tried to set Kamailio and rtpengine daemon in a same machine,and use modparam(“rtpengine”, “rtpengine_sock”, “udp:localhost:7723”). And Kamailio can work functionally under this situation. rtpengine daemon can receive ping message from Kamailio and rtpengine daemon can work as suspected. So for the later case, is it supposed that Kamailio be in the same machine with same localhost address? Otherwise, what’s the reason for my ERROR?
------------------------------------
北京邮电大学网络技术研究院
网络与交换技术国家重点实验室
田军
+86 18810315790
mozillafire(a)bupt.edu.cn
------------------------------------