Hey Klaus,
On 04.11.2011 10:57, Sammy Govind wrote:I have cc-ed the list.
SORRY for PM but this is not getting through to the users List due to size.
<mailto:sr-users@lists.sip-router.org>>
---------- Forwarded message ----------
From: *Sammy Govind* <govoiper@gmail.com <mailto:govoiper@gmail.com>>
Date: Fri, Nov 4, 2011 at 1:55 PM
Subject: Re: [SR-Users] Kamailio as SBC / LB Media-Servers farm
To: "SIP Router - Kamailio (OpenSER) and SIP Express Router (SER) -
Users Mailing List" <sr-users@lists.sip-router.org*rtpproxy -l 109.XX.XXX.212/192.168.2.29 <http://192.168.2.29> -s
Klaus: mhomed did work indeed - no need to force_send_socket() now :) Thanks
I'm progressing abit.
RTP-Proxy was run in bridged mode like this.
udp:localhost:22222 -F -d DBUG*
See description of i,e flag:
http://kamailio.org/docs/modules/3.2.x/modules/rtpproxy.html#id2535618
Thus in your setup 109.... is the "internal" interface and 192.... is the "external" interface. That's mixed. Thus I advice you to switch the order of IP addresses so that internal is 192... and external is 109...
This is essential to use the i,e flags correctly.
I'm getting RTPstats published on Kamailio/RTPproxy syslog.RTPproxy<--->Client. /[See Wirshark Flow-Diagram taken
I am using Echo() application in asterisk. So I've observed that my
audio went to asterisk and asterisk did indeed send audio back to the
RTPproxy assigned ports BUT the RTPproxy isn't forwarding the Audio back
to the client or may-be the audio is lost somewhere in between
on-Kamailio/RTPproxy Server]/
In your trace you see, that RTP does not use the internal IP address, but only the external IP address. Thus I suspect that the RTP packets from Asterisk to the public rtpproxy interface do not even arrive at rtpproxy.This is bullshit. People seem to not understand IP at all. rtpproxy is forwarding in user mode - it receives on a UDP socket and sends on a UDP socket. Thus, kernel based forwarding is not involved when using rtpproxy. You can disable IP forwarding again.
The # DTMF signal sent from Client phone reached asterisk safely and
terminated the Echo() application.
I did the ip_forwarding thingie too.-- somebody mentioned to do this if
using RTPproxy in bridged mode.
The thing is quite easy. Swap the IP addresses when starting rtpproxy and then configure Kamailio to call rtpproxy with the proper i,e flags (as described in my previous email).
#echo "1" >> /proc/sys/net/ipv4/ip_forward
#sysctl -p
Here are the corresponding Logs from Kamailio and rtpproxy.
For example:
if (has_body("application/sdp")) {
if ($si == "192.168.2.75") {
# message from internal to external
rtpproxy_manage("ie");
} else {
# message from external to internal
rtpproxy_manage("ei");
}
}
Put above code block in the main route block and also in a reply route which will be activated (or in the default reply route). Put some xlog statements around the rtpproxy calls to verify the proper command is called.
regards
Klaus