[OpenSIPS-Users] RTPProxy Problem

Ignacio Gonzalez mylaneza at gmail.com
Thu Nov 15 00:49:41 CET 2012


I found where the other port is taken from. I use Java, JMF to create the
RTP part of the UA, I create two RTPManagers, one to send and one to
receive, and I use two different ports, one is for sending and one for
receiving, and rtpproxy send me packets to the sending port, I don't know
if i have to use only one RTPManager to send and receive rtppackets using
the port I send in the SDP message. This has been always a doubt for me.

m=audio 11670 RTP/AVP 0
a=rtpmap:0 PCMU/8000
a=sendrecv

this SDP message is the one i send in the INVITE

so i listen to RTP packets in the 11760 udp port

and create a "rtp sender" using another random port chosen by JMF, this
random port is where packets are sent from rtpproxy.

Thanks for your help.


2012/11/14 Ignacio Gonzalez <mylaneza at gmail.com>

> Here is my complete scenario:
>
> OPENSIPS is in a private network inside of a virtual machine 192.168.1.220
> and is using port 5062 on udp and tcp
> RTPProxy is in a private network inside of the same virtual machine
> 192.168.1220 and this is the command line I'm using to run rtpproxy:
>
> ./rtpproxy -l 192.168.1.220 -s udp:192.168.1.220:12400 -n tcp:
> 192.168.1.220:12333 -u user -m 35000 -M 35200
>
> The host machine is 192.168.1.200
>
> My router create the binding rules for  public_ip:35000 ->
> 192.168.1.220:35000    to public_ip:35200 -> 192.168.1.220:35200
>
> I'm making a call between to UAs outside of the LAN 192.168.1.0, both
> clients are outside of the LAN.
>
>
> I tried to set the flags "i" and "e" but still not working, I also tried
> setting the autobridged parameter for the rtpproxy module.
>
> Thanks for helping.
>
> P.D. I want to see the debug of rtpproxy but I don't know how to do that,
> can any one help me with this?
>
>
>
>
>
>
>
>
> 2012/11/14 Răzvan Crainea <razvan at opensips.org>
>
>>  Hi, Ignacio!
>>
>> So you are trying to use RTPProxy in bridge mode (between a private and a
>> public network). This means that for INVITE you should have a public IP,
>> and for 200OK a private IP (or the other way around, depending on your
>> scenario). You have three possible solutions to achieve this:
>>
>> 1. For INVITE, call rtpproxy_offer("flags", "PUBLIC_IP") and for 200OK,
>> rtpproxy_answer("flags", "PRIVATE_IP") (or reverse the IPs in case of a
>> different scenario). I am not sure this works, as RTPProxy will have no
>> idea about where exactly is your UAC/UAS - therefore it might use wrong
>> sockets to send data (for example, it might use a PRIVATE_IP socket to send
>> RTP to a public ip).
>> 2. Enable the autobridge mode, by setting the 'rtpproxy_autobrige'
>> parameter [1]. I've never used this, so I can't confirm whether it works
>> properly or not.
>> 3. Call the rtpproxy_offer/answer functions with the 'E' or 'I' flags[2].
>> This is the most reliable method I've used I can confirm it works.
>>
>> [1] http://www.opensips.org/html/docs/modules/1.8.x/rtpproxy#id250154
>> [2] http://www.opensips.org/html/docs/modules/1.8.x/rtpproxy#id292744
>>
>> Regards,
>>
>> Razvan Crainea
>> OpenSIPS Core Developerhttp://www.opensips-solutions.com
>>
>> On 11/14/2012 05:14 PM, Ignacio Gonzalez wrote:
>>
>> Ok i will check the flags, I set the domain parameter of rtpproxy_offer
>> to PUBLIC_IP, i create the rules in my router to bind the ports 35000 to
>> 35200 of the public_ip to the ports 35000 to 35200 in the PRIVATE_IP of
>> rtpproxy 192.168.1.220, I'm not sure if this is correct.
>>
>> If i don't put the domain parameter in the rtpproxy_offer the SDP message
>> contains the private ip of the RTPPROXY (192.168.1.220) and my clients are
>> outside this nat.
>>
>> Thanks
>>
>>
>> 2012/11/14 Răzvan Crainea <razvan at opensips.org>
>>
>>>  Hi, Ignacio!
>>>
>>> The ports you have listed in the SDP snippet belong to a single rtp
>>> stream - Callee-RTPProxy-Caller. You should also check the ports in the
>>> 200OK.
>>> The "nortpproxy_str" parameter you are specifying is used by RTPProxy to
>>> determine if the SDP has to be changed, or somebody else already changed in
>>> the path.
>>> I noticed that you call rtpproxy_offer() function with two parameters:
>>> 1. "ro" - if the SDP has a private IP, you shouldn't use the "r" flag.
>>> This flag is used to specify that RTPProxy should accept packages only from
>>> that IP, whereas in your case he will receive the packets from a public IP.
>>> 2. "domain" - you shouldn't use this parameter unless you really know
>>> what you are doing. This overwrites the domain specified by RTPProxy, which
>>> is not always such a good idea.
>>>
>>> I hope these remarks will help you fix your problem.
>>>
>>> Regards,
>>>
>>> Razvan Crainea
>>> OpenSIPS Core Developerhttp://www.opensips-solutions.com
>>>
>>>  On 11/14/2012 01:11 AM, Ignacio Gonzalez wrote:
>>>
>>> I change the attribute using adding this to the opensips configuration
>>> file
>>>
>>> modparam("rtpproxy", "nortpproxy_str", "a=sdpmangled:yes\r\n")
>>>
>>>
>>>
>>> a=nortpproxy:yes
>>>
>>>
>>> But there is no audio, i check the traffic using wireshark and i see
>>> that a lot of packets are sent to another port not the one that i send in
>>> the first message, example:
>>>
>>> First SDP
>>>
>>> v=0
>>> o=- 465641 0 IN IP4 10.168.123.201
>>> s=-
>>> c=IN IP4 10.168.123.201
>>> t=0 0
>>> m=audio 11670 RTP/AVP 0
>>> a=rtpmap:0 PCMU/8000
>>> a=sendrecv
>>>
>>>
>>>
>>> Changed by opensips and rtpproxy to look like
>>>
>>>
>>> v=0
>>> o=- 465641 0 IN IP4 IP_PUBLIC
>>> s=-
>>> c=IN IP4 IP_PUBLIC
>>> t=0 0
>>> m=audio 35000 RTP/AVP 0
>>> a=rtpmap:0 PCMU/8000
>>> a=sendrecv
>>>
>>>
>>> And packets are being recived on the udp:10.168.123.201:45708
>>>
>>>
>>> Thanks for your help
>>>
>>>
>>>
>>> 2012/11/13 Ignacio Gonzalez <mylaneza at gmail.com>
>>>
>>>> Hello, I change the command line to run rtpproxy and change my
>>>> configuration file:
>>>>
>>>> ./rtpproxy -l timewarnercable.dyndns.org -s udp:192.168.1.220:12333 -n
>>>> tcp:192.168.1.220:12333 -u syrium -m 35000 -M 35200
>>>>
>>>> rtpproxy_offer("ro" , "timewarnercable.dyndns.org");
>>>>
>>>> And now the SDP message looks like this:
>>>>
>>>> v=0
>>>> o=- 0 0 IN IP4 PUBLICIP
>>>> s=-
>>>> c=IN IP4 PUBLICIP
>>>> t=0 0
>>>> m=audio 35134 RTP/AVP 0
>>>> a=rtpmap:0 PCMU/8000
>>>> a=sendrecv
>>>> a=nortpproxy:yes
>>>>
>>>> But there is no audio, and I don't know what is the meaning of the
>>>> a=nortpproxy:yes
>>>>
>>>>
>>>> Thanks for your help.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 2012/11/12 Ignacio Gonzalez <mylaneza at gmail.com>
>>>>
>>>>> I use the same port but tcp because in the post the answer is that. I
>>>>> Attach the debug file
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 2012/11/12 spady <spady77 at gmail.com>
>>>>>
>>>>>> Please, post entire opensips log ( set debug to 6 ).
>>>>>>
>>>>>> Why are you using same port for sock and notify_sock ??? Have you
>>>>>> tried with
>>>>>> different ports?
>>>>>>
>>>>>> Bye
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://opensips-open-sip-server.1449251.n2.nabble.com/RTPProxy-Problem-tp7582930p7582974.html
>>>>>>  Sent from the OpenSIPS - Users mailing list archive at Nabble.com.
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users at lists.opensips.org
>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>> _______________________________________________
>>> Users mailing listUsers at lists.opensips.orghttp://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>
>>
>> _______________________________________________
>> Users mailing listUsers at lists.opensips.orghttp://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20121114/138cec81/attachment-0001.htm>


More information about the Users mailing list