dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
Hello,
rtpproxy doing bridging requires two network interfaces to work with.
You can try one of the following: - let freeswitch advertise the public ip for media and skip rtpproxy completely - use the second parameter of rtpproxy_manage() to set the advertised ip address for media and don't configure rtpproxy in bridge mode
Cheers, Daniel
On 16/02/15 17:30, Giovanni Maruzzelli wrote:
dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
I haven't done something like that myself but i think if you use RTPEngine with "media-address" set correctly in offer and answer functions, you can easily achieve this. Simply check if request/reply is coming from FS or the end-user and adjust the media appropriately without even invoking auto-bridge etc.
Thank you.
On Mon, Feb 16, 2015 at 5:30 PM, Giovanni Maruzzelli gmaruzz@gmail.com wrote:
dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
-- Sincerely,
Giovanni Maruzzelli Cell : +39-347-2665618
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
BTW, if nothing works, you can always use "network:msg" event route to find / replace any part of the SIP request and response, including media IP in SDP. ;-)
http://kamailio.org/docs/modules/4.2.x/modules/corex.html#async.evr.network_...
Thank you.
On Mon, Feb 16, 2015 at 6:39 PM, Muhammad Shahzad shaheryarkh@gmail.com wrote:
I haven't done something like that myself but i think if you use RTPEngine with "media-address" set correctly in offer and answer functions, you can easily achieve this. Simply check if request/reply is coming from FS or the end-user and adjust the media appropriately without even invoking auto-bridge etc.
Thank you.
On Mon, Feb 16, 2015 at 5:30 PM, Giovanni Maruzzelli gmaruzz@gmail.com wrote:
dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
-- Sincerely,
Giovanni Maruzzelli Cell : +39-347-2665618
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
On 16/02/15 12:39 PM, Muhammad Shahzad wrote:
I haven't done something like that myself but i think if you use RTPEngine with "media-address" set correctly in offer and answer functions, you can easily achieve this. Simply check if request/reply is coming from FS or the end-user and adjust the media appropriately without even invoking auto-bridge etc.
Or perhaps with multiple interface specifications, binding to the same local address but with different advertised addresses, as suggested in the OP.
Cheers
Hi,
There pathch with -A can be found or it is allready implemented into specific rtpengine version? 2015 vas. 16 19:50 "Richard Fuchs" rfuchs@sipwise.com rašė:
On 16/02/15 12:39 PM, Muhammad Shahzad wrote:
I haven't done something like that myself but i think if you use RTPEngine with "media-address" set correctly in offer and answer functions, you can easily achieve this. Simply check if request/reply is coming from FS or the end-user and adjust the media appropriately without even invoking auto-bridge etc.
Or perhaps with multiple interface specifications, binding to the same local address but with different advertised addresses, as suggested in the OP.
Cheers
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Could you provide us a little example? For examlple i have kamailio with three interfaces: two interfaces (vlan's look at two different providers) and third interface looks at sip clients. Thank's in advance! 2015 vas. 16 20:04 "Richard Fuchs" rfuchs@sipwise.com rašė:
On 16/02/15 01:00 PM, Virmantas Variakojis wrote:
Hi,
There pathch with -A can be found or it is allready implemented into specific rtpengine version?
Latest master from git. The command line syntax is a bit different from rtpproxy, but the basic idea is the same.
Cheers
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
On 16/02/15 01:12 PM, Virmantas Variakojis wrote:
Could you provide us a little example? For examlple i have kamailio with three interfaces: two interfaces (vlan's look at two different providers) and third interface looks at sip clients.
You would define two interfaces with different names, for example --interface=public/10.0.1.15!54.86.X.X for outside media and --interface=local/10.0.1.15 for local media. You would then use two direction=... options in the offer to determine where A side and B side are located, respectively. You can also call the interfaces "external" and "internal" and use these flags instead, which mirrors rtpproxy's behaviour.
Cheers
You could simply let the RTP traffic to flow directly between FS and endpoints (no need for rtpproxy). All you need to do is: - forward the appropriate RTP ports to FS; - fix the private IP in SDP by replacing it with the public IP for the inbound rtp streams (to FS).
-ovidiu
On Mon, Feb 16, 2015 at 11:30 AM, Giovanni Maruzzelli gmaruzz@gmail.com wrote:
dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
-- Sincerely,
Giovanni Maruzzelli Cell : +39-347-2665618
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Could you show the revelant codes in rtpproxy and kamailio.cfg? I am unable to get the audio pass through from extranet to intranet as private IP address is used after rtpproxy.
I use Kamailio 4.2 and rtpproxy in Debian wheezy. Both are installed from repository.
On Tue, Feb 17, 2015 at 8:27 AM, Ovidiu Sas osas@voipembedded.com wrote:
You could simply let the RTP traffic to flow directly between FS and endpoints (no need for rtpproxy). All you need to do is:
- forward the appropriate RTP ports to FS;
- fix the private IP in SDP by replacing it with the public IP for
the inbound rtp streams (to FS).
-ovidiu
On Mon, Feb 16, 2015 at 11:30 AM, Giovanni Maruzzelli gmaruzz@gmail.com wrote:
dear Kamailians,
I have Kamailio+rtpproxy in front of FreeSWITCH.
Kamailio and FreeSWITCH are on the same private network. Public Internet IP address ports are redirected to Kamailio and rtpproxy (same situation as in Amazon EC2). Clients comes from Internet, and make calls to Internet, SIP signaling passing through FreeSWITCH (eg: A leg incoming INVITE, FreeSWITCH originate an outbound B leg INVITE, and then bridge the legs).
Using rtpproxy with -A "advertise" patch from Daniel, this topology works fine in a "traditional" telco way: rtp goes from caller to rtpproxy to callee, and viceversa.
Now I want to maintain FreeSWITCH in the middle of rtp flow all the time, in a pure b2bua way, so it can control and analyze the media streams.
So, I need rtpproxy to act paying attention to direction, as in caller->rtpproxy->freeswitch->rtpproxy->callee (and viceversa).
Normally I would use Kamailio multihomed and rtpproxy in bridging mode. But I cannot have a NIC on the public address.
How I can use the "ie" "ei" feature of rtpproxy in an Amazon-EC2 like environment? (eg: no public address attached to machine, but ports redirection from public address).
I read this trick from Hugh Waite:
"I have used rtpproxy (with the advertised address patch) in Amazon to bridge media between internet facing and private subnets in a VPC. I found that I couldn’t use different advertised addresses depending on which direction the signalling was going on a single private IP address. I worked around this by allocating a second private ip address to the instance and used that in the ‘bridge’. -A 54.86.X.X/10.0.1.15 –l 10.0.1.10/10.0.1.15"
Can you explain how to use this trick, or another way (without additional addresses is gladly accepted!) to reach the same result (rtp always passing through FreeSWITCH) ?
Thank you all in advance,
-giovanni
-- Sincerely,
Giovanni Maruzzelli Cell : +39-347-2665618
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- VoIP Embedded, Inc. http://www.voipembedded.com
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
On Feb 16, 2015, at 7:27 PM, Ovidiu Sas osas@voipembedded.com wrote:
You could simply let the RTP traffic to flow directly between FS and endpoints (no need for rtpproxy). All you need to do is:
- forward the appropriate RTP ports to FS;
- fix the private IP in SDP by replacing it with the public IP for
the inbound rtp streams (to FS).
FS will do this for you if you set the ext-rtp-ip on the profile.
—FC