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.
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
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
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
------------------------------------
Hi guys!
We have four a scripts that sends dlg.list command to kamailio through
xmlrpc. They are not executed simultaneously. Sometimes, we are getting
the following errors:
fm_search_defrag(): fm_search_defrag(0x7f212c25a000, 5273984); Free
fragment not found!2017-05-26T13:54:20.438736-03:00 drwsip02
/usr/local/sbin/kamailio[19833]: ERROR: <core> [mem/f_malloc.c:498]:
fm_malloc(): fm_malloc(0x7f212c25a000, 5273984) called from core:
tcp_main.c: tcpconn_new(957), module: core; Free fragment not
found!2017-05-26T13:54:20.439101-03:00 drwsip02
/usr/local/sbin/kamailio[19833]: ERROR: <core> [tcp_main.c:959]:
tcpconn_new(): mem. allocation failure2017-05-26T13:54:20.439344-03:00
drwsip02 /usr/local/sbin/kamailio[19833]: ERROR: <core> [tcp_main.c:3985]:
handle_new_connect(): tcpconn_new failed, closing socket
I all ready increased this two variables:
tcp_conn_wq_max=30000000
tcp_rd_buf_size=5273226
How can I see how much memory xmlrpc is using?
Any advice will be appreciated.
Thanks in advance!
Diego
Hey all,
I was wondering if the kamctl stats output could be updated to provide a bit more parseable JSON? For instance:
# kamctl stats shmem | jq .
{
"jsonrpc": "2.0",
"result": [
"shmem:fragments = 18",
"shmem:free_size = 467187808",
"shmem:max_used_size = 69694104",
"shmem:real_used_size = 69683104",
"shmem:total_size = 536870912",
"shmem:used_size = 41048984"
],
"id": 4300
}
I would hope would be more like this:
{
"jsonrpc":"2.0",
"result":[
{
"shmem":[
{
"fragments":18,
"free_size":467187808,
"max_used_size":69694104,
"real_used_size":69683104,
"total_size":536870912,
"used_size":41048984
}
]
}
],
"id":4300
}
I apologize in advanced because I don’t have the skillset to contribute such a feature.
Thanks!
~Noah
Hi All,
In March there was a discus about this issue.
We tested the new 5.2 dev and 5.0.4 version of Kamailio and we experience
that If we restart Kamailio during the call the cdr won't be stored in
table acc_cdrs but the data will be inserted to table acc and data will be
deleted from table dialog and dialog_vars.
Did I omit the fix for it?
Thanks for your help.
Best regards,
Szabolcs
Hey all,
I'm looking to put Kamailio behind a TCP load balancer that is SIP-unaware.
My application is deployed in AWS and I'm tying to place Kamailio behind an
ELB.
For the most part, everything is fine. For my specific implementation I'm
disabling UDP as a signaling transport and using only TLS. This enables me
to not have to worry about a SIP-aware LB at the edge because replies to an
incoming request will be sent over the existing established TCP socket
(avoiding any crazy routing requirements).
However - this poses an issue with source addresses. Does Kamailio support
anything like the proxy protocol (
http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt) for getting TCP
stream information from a load balancer? Do I need to go back to exposing
it directly to the world so that I can get source addresses?
Thanks,
Colin
Hi List,
two questions regarding Kamailio Websockets:
1. How do I send INVITE request TO the listening Websocket?
I usually used for UDP/TCP/TLS these format, but somehow this is not working for Websocket because it gets in an endless loop:
if ($rU=~"^(\+|00|0)?[1-9][0-9]{4,20}$") {
$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip) + ";user=phone;transport=udp";
force_send_socket(udp:MY_EXTERN_IP:MY_EXTERN_PORT);
rtpengine_offer("internal trust-address RTP AVP");
route(RELAY);
exit;
}
2. Why do I get these errors every time my Websocket Client is registering, but it still works and DB is inserted with registered location:
ERROR: <core> [parser/parse_fline.c:257]: parse_first_line(): parse_first_line: bad message (offset: 22)
ERROR: <core> [parser/msg_parser.c:690]: parse_msg(): ERROR: parse_msg: message=<HTTP/1.1 101 Switching Protocols#015#012Sia: SIP/2.0/TCP 10.250.5.17:51283#015#012Sec-WebSocket-Protocol: sip#015#012Upgrade: websocket#015#012Connection: upgrade#015#012Sec-WebSocket-Accept: 6uLXlD/aBrzu/j3PYP3DWO7rvLE=#015#012Server: kamailio (4.3.5 (x86_64/linux))#015#012Content-Length: 0#015#012#015#012>
I am using Kamailio 4.3.5 + CentOS 7.2. I appreciate every help I can get.
Best Regards
Dimitry Nagorny
Trainee
Hi,
Quick (and simple) question:
Can someone provide a working RTPengine request, to enable Transcoding?
I know, this is possible, but I thought before looking into deep, how this
should be configured for the rtpengine_offer() command, could someone
provide an example?
Thanks,
Carsten