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 <[email protected]> > 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 <[email protected]> > >> 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 <[email protected]> >> >>> 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 <[email protected]> >>> >>>> 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 <[email protected]> >>>> >>>>> I use the same port but tcp because in the post the answer is that. I >>>>> Attach the debug file >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> 2012/11/12 spady <[email protected]> >>>>> >>>>>> 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 >>>>>> [email protected] >>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users >>>>>> >>>>> >>>>> >>>> >>> >>> >>> _______________________________________________ >>> Users mailing >>> [email protected]http://lists.opensips.org/cgi-bin/mailman/listinfo/users >>> >>> >>> >>> _______________________________________________ >>> Users mailing list >>> [email protected] >>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users >>> >>> >> >> >> _______________________________________________ >> Users mailing >> [email protected]http://lists.opensips.org/cgi-bin/mailman/listinfo/users >> >> >> >> _______________________________________________ >> Users mailing list >> [email protected] >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users >> >> >
_______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
