[SR-Users] Kamailio RtpProxy MHomed

Daniel-Constantin Mierla miconda at gmail.com
Fri Jul 18 00:18:27 CEST 2014


On 17/07/14 23:10, Moacir Ferreira wrote:
> I have created an environment with the same config and I find the same 
> problem. While still does not work for video, I have changed (flip) 
> the public/internal IP addresses on rtpproxy and I can get half call 
> leg working properly, includding video.
>
> However, I am testing video calls. So I got another question on top of 
> the original post: Can we use rtpproxy also for video or it only 
> supports voice rtp proxy?

Yes, it works for both audio and video at the same time. As an example, 
see my ipv4-ipv6 tutorial where I used it in bridge mode and tested with 
video using Jitsi:

- http://kb.asipto.com/kamailio:kamailio-mixed-ipv4-ipv6

Cheers,
Daniel

>
> Cheers,
> Mo
>
> ------------------------------------------------------------------------
> Date: Thu, 17 Jul 2014 13:56:53 +0200
> From: miconda at gmail.com
> To: sr-users at lists.sip-router.org
> Subject: Re: [SR-Users] Kamailio RtpProxy MHomed
>
> Hello,
>
> have you looked at sip trace and checked what are the IP addresses in 
> the SDP? Maybe you need to swap the flags i and e.
>
> You can eventually provide here the incoming invite as well as 
> outgoing invite, saying what you would expect to be in the outgoing 
> one, so we can give further hints.
>
> Cheers,
> Daniel
>
> On 16/07/14 15:08, Pascal Fautré wrote:
>
>     Hi,
>
>     I tried to use Kamailio / RTPProxy in mhomed setup without any luck.
>     I had no problem to configure it with only 1 interface, without
>     mhomed, everything worked perfectly.
>
>     The RTP streams where not established correctly even if I managed
>     to have to proper IP in the SIP INVITE (C & O).
>
>     Versions:
>     version: kamailio 4.1.4 (x86_64/linux)
>     flags: STATS: Off, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS,
>     DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP,
>     PKG_MALLOC, DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT,
>     USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST,
>     HAVE_RESOLV_RES
>     ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN
>     16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 4MB
>     poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>     id: unknown
>     compiled on 04:23:19 Jun 13 2014 with gcc 4.7.2
>
>     RTPProxy -v:
>     Basic version: 20040107
>     Extension 20050322: Support for multiple RTP streams and MOH
>     Extension 20060704: Support for extra parameter in the V command
>     Extension 20071116: Support for RTP re-packetization
>     Extension 20071218: Support for forking (copying) RTP stream
>     Extension 20080403: Support for RTP statistics querying
>     Extension 20081102: Support for setting codecs in the
>     update/lookup command
>     Extension 20081224: Support for session timeout notifications
>
>
>     Here is my RTPProxy config (/etc/default/rtpproxy) :
>     CONTROL_SOCK=udp:127.0.0.1:7722
>     EXTRA_OPTS=“-l /PU.BL.IC.IP///PRI.VA.TE.IP/ -m 11000 -M 12000 -d
>     DBUG:LOG_LOCAL3
>
>
>     Here are snippets of my kamailio.cfg:
>
>     port=5060
>     mhomed=1
>
>     # RTPProxy control
>     route[NATMANAGE] {
>     #!ifdef WITH_NAT
>       if (is_request()) {
>               if(has_totag()) {
>                       if(check_route_param("nat=yes")) {
>                               setbflag(FLB_NATB);
>                       }
>               }
>       }
>       if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
>               return;
>
>       xlog("NATMANAGE M=$rm OU=$ou  RURI=$ru RD=$rd F=$fu T=$tu
>     NH=$nh(d) IP=$si ID=$ci\n");
>
>       if(dst_ip == PUBLIC_IP) {
>               if(is_ipv4($nh(d)) && is_in_subnet($nh(d), PRIVATE_NET)) {
>                       xlog("NATMANAGE coei\n");
>                       rtpproxy_manage("coei", PRIVATE_IP);
>               } else {
>                       xlog("NATMANAGE coee\n");
>                       rtpproxy_manage("coee", PUBLIC_IP);
>               }
>       } else {
>               if(is_ipv4($nh(d)) && is_in_subnet($nh(d), PRIVATE_NET)) {
>                       xlog("NATMANAGE coii\n");
>                       rtpproxy_manage("coii", PRIVATE_IP);
>               } else {
>                       xlog("NATMANAGE coie\n");
>                       rtpproxy_manage("coie", PUBLIC_IP);
>               }
>       }
>
>       if (is_request()) {
>               if (!has_totag()) {
>                       if(t_is_branch_route()) {
>                               add_rr_param(";nat=yes");
>                       }
>               }
>       }
>       if (is_reply()) {
>               if(isbflagset(FLB_NATB)) {
>                       if(is_first_hop())
>                               set_contact_alias();
>               }
>       }
>     #!endif
>       return;
>     }
>
>
>     Calls were correctly going to the desired rtpproxy_manage options.
>     Now I’m not quite sure I’m using the correct ones.
>     I had to specify the PUBLIC_IP or PRIVATE_IP in the
>     rtpproxy_manage calls in order to have the correct IP address in
>     the C and O headers of the SIP INVITE. Without that, the public IP
>     would be sent as C and O params to phones on the private subnet.
>     In fact not a single call direction would give correct RTP streams.
>
>     Any idea where I missed the turn?
>
>
>     Cheers
>
>
>
>     _______________________________________________
>     SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>     sr-users at lists.sip-router.org  <mailto:sr-users at lists.sip-router.org>
>     http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
>
> -- 
> Daniel-Constantin Mierla -http://www.asipto.com
> http://twitter.com/#!/miconda  <http://twitter.com/#%21/miconda>  -http://www.linkedin.com/in/miconda
>
> _______________________________________________ SIP Express Router 
> (SER) and Kamailio (OpenSER) - sr-users mailing list 
> sr-users at lists.sip-router.org 
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20140718/43231b53/attachment.html>


More information about the sr-users mailing list