It seems I am undesrtand whereis problem can be found.
Original tutorial of Kamailio+Asterisk realtime integration (by Asipto) containse settings for cheking if the "nat=yes" presents, but in Asterisk 11 I am using nat=force_rport,comedia.

# 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;
 
        rtpproxy_manage();
 
    if (is_request()) {
        if (!has_totag()) {
            add_rr_param(";nat=yes");
        }
    }
    if (is_reply()) {
        if(isbflagset(FLB_NATB)) {
            fix_nated_contact();
        }
    }
#!endif
    return;
}


BTW, we don't need NAT for asterisks peers, if we use Asterisk behinde Kanailio LAN interface (2.2.2.2).

  ToHost       : 2.2.2.2
  Addr->IP     : 2.2.2.2:5060

If I cahnge to nat=no in the NATMANAGE - RTP debug still showing from 1.1.1.1 (public) kamailio IP.
Rtpproxy started in the bridge mode.

set_destination: Parsing <sip:2.2.2.2;r2=on;lr=on;nat=no> for address/port to send to
set_destination: set destination to 2.2.2.2:5060
Reliably Transmitting (no NAT) to 2.2.2.2:5060:
BYE sip:1-101@PUBLIC.CLIENT.PEER.IP:17303;ob SIP/2.0
Via: SIP/2.0/UDP 2.2.2.101:5080;branch=z9hG4bK1597848e
Route: <sip:2.2.2.2;r2=on;lr=on;nat=no>,<sip:1.1.1.1;r2=on;lr=on;nat=no>

Sent RTP packet to      1.1.1.1:63232 (type 00, seq 003837, ts 016800, len 000160)
Got  RTP packet from    2.2.2.2:42346 (type 00, seq 000986, ts 016960, len 000160)
Sent RTP packet to      1.1.1.1:63232 (type 00, seq 003838, ts 016960, len 000160)
Got  RTP packet from    2.2.2.2:42346 (type 00, seq 000987, ts 017120, len 000160)
Sent RTP packet to      1.1.1.1:63232 (type 00, seq 003839, ts 017120, len 000160)

But no voicing)


2013/8/6 SamyGo <govoiper@gmail.com>
Dear Alexandr,

You can connect Kamailio to RTPproxy via socket as well, use modparam like this:

modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:12221")

Then if your rtprpoxy is started in bridged mode you should use the "i" and "e" flags while you call the rtpproxy-manage() function in the kamailio.cfg file.

The placement of both the flags sets the SDP c= param , so if you use "ie" combination of flag then that is not equal to "ei" combination of the flag.

I also suggest that you turn on sip debug on the call receiving asterisk and observe the SDP for an incoming call from Kamailio. that will help you figure out the situation in SDP.

Best Regards,
Sammy





On Tue, Aug 6, 2013 at 2:02 AM, Alexandr Usov <blessendor@gmail.com> wrote:
Thank you for response!
A little difficult for me to find the same logic in my case with tutorial of ipv4/ipv6 bridgin...

When I started
/usr/sbin/rtpproxy -u kamailio -l 1.1.1.1/2.2.2.2 -s udp:127.0.0.1 12221

There is no sound.

Is this a major to connect via unix sock?:

modparam("rtpproxy", "rtpproxy_sock", "unix:/var/run/rtpproxy/rtpproxy.sock")





2013/8/6 Daniel-Constantin Mierla <miconda@gmail.com>
Hello,

you have to use rtpproxy in bridge mode, to route packets between the two local network interfaces. There are many examples out there, one shows even how to bridge between ipv4 and ipv4 networks -- you can use it as reference:

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

Cheers,
Daniel

On 8/5/13 7:12 PM, Alexandr Usov wrote:


I have Kamailio on OpenSUSE with static real Public IP (WAN), for ex. 1.1.1.1. I have LAN IP 2.2.2.2. Asterisk as KVM virtual machine with LAN IP 2.2.2.101 and default GW not the SuSe (2.2.2.2), but 2.2.2.1 pfsense LAN with PUB IP 1.1.1.2) I am configured Registration of UA on Kamailio DB, and on Asterisk side create a static peers with Kamailio LAN ip (host=2.2.2.2).

RTP Proxy question.

/usr/sbin/rtpproxy -u daemon -l 1.1.1.1 -s udp:127.0.0.1 12221

.... kamailio.cfg ...

# 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;
 
        rtpproxy_manage();
 
    if (is_request()) {
        if (!has_totag()) {
            add_rr_param(";nat=yes");
        }
    }
    if (is_reply()) {
        if(isbflagset(FLB_NATB)) {
            fix_nated_contact();
        }
    }
#!endif
    return;
}


Testing call:

Whe User 1-100 calling User 1-101, on Asterisk side I see:

    -- Called SIP/1-100@sip1.somedomain.com.ua
    -- SIP/sip1.somedomain.com.ua-000004cf is ringing
    -- SIP/sip1.somedomain.com.ua-000004cf answered SIP/1-101-000004ce
       > 0x15bc370 -- Probation passed - setting RTP source address to 1.1.1.1:50868
       > 0x7f2b6044bd10 -- Probation passed - setting RTP source address to 1.1.1.1:35082
    
Got  RTP packet from    1.1.1.1:50868 (type 00, seq 027109, ts 000160, len 000160)
Sent RTP packet to      1.1.1.1:35082 (type 00, seq 037469, ts 000160, len 000160)
Got  RTP packet from    1.1.1.1:50868 (type 00, seq 027110, ts 000320, len 000160)
Sent RTP packet to      1.1.1.1:35082 (type 00, seq 037470, ts 000320, len 000160)
Got  RTP packet from    1.1.1.1:50868 (type 00, seq 027111, ts 000480, len 000160)
Sent RTP packet to      1.1.1.1:35082 (type 00, seq 037471, ts 000480, len 000160)
Got  RTP packet from    1.1.1.1:50868 (type 00, seq 027112, ts 000640, len 000160)
Sent RTP packet to      1.1.1.1:35082 (type 00, seq 037472, ts 000640, len 000160)


Voice transfers OK.

But why not Kamailio LAN ip I receiving on the Asterisk side with the same LAN?

And Kamailio log grep:

skynet:~ # tail -f /var/log/messages | grep rtpproxy
2013-08-05T19:18:17.508760+03:00 skynet kamailio[25462]: 3(25481) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:17.508875+03:00 skynet kamailio[25462]: 3(25481) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 63566 1.1.1.1
2013-08-05T19:18:17.530765+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:17.530876+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 41958 1.1.1.1
2013-08-05T19:18:18.625815+03:00 skynet kamailio[25462]: 4(25482) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:18.627131+03:00 skynet kamailio[25462]: 4(25482) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 39876 1.1.1.1
2013-08-05T19:18:18.632649+03:00 skynet kamailio[25462]: a=nortpproxy:yes
2013-08-05T19:18:18.648075+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:18.649615+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 43500 1.1.1.1
2013-08-05T19:18:18.653948+03:00 skynet kamailio[25462]: a=nortpproxy:yes
2013-08-05T19:18:18.688603+03:00 skynet kamailio[25462]: 4(25482) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:18.689762+03:00 skynet kamailio[25462]: 4(25482) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 63566 1.1.1.1
2013-08-05T19:18:18.701062+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy_funcs.c:148]: check_content_type(): type <application/sdp> found valid
2013-08-05T19:18:18.701405+03:00 skynet kamailio[25462]: 6(25484) DEBUG: rtpproxy [rtpproxy.c:2624]: force_rtp_proxy(): proxy reply: 43500 1.1.1.1
2013-08-05T19:18:18.705506+03:00 skynet kamailio[25462]: a=nortpproxy:yes

My goal is using Asterisk boxes behind Kamailio with the same LAN or even OpeVPN Lan2Lan, with Public IP on Kamailio WAN for users registration and RTP routing. So is strange to my, why RTPproxy not rewrite source of RTP traffic from PUBLIC Kamailio IP to LAN Kamailio IP when user A calls B via Asterisk?




_______________________________________________
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

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

_______________________________________________
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



_______________________________________________
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



_______________________________________________
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