Dear Bogdan &amp; All,<br><br><b>My network scenario</b>:<br><br>SIP: UA 1 (behind NAT) ---- Nic1 (public) Opensips/Rtpproxy --- Nic 2 (private) ---- SIP GW (private) --- UA 2 (behind NAT)<br>RTP: UA1 ------------------------------------------ RTPPROXY ---------------------------------------------------------------------UA2<br>
<br><b>My Usecase</b>:<br>UA1 dial UA2 (which is registered to SIP GW), Opensips do not have UA2 in DB. Opensips check usrloc and see UA2 is not in its DB, it force route to SIP GW, which is the same internal Lan with Opensips (Nic2). <br>
<br><b>Expected Result</b>:<br>- When Opensips go to Route 2 (not found user route), it invoke INVITE, NAT processing and go to on_reply_route[2], it expect ACK. But it confirmed in logs console that &quot;It&#39;s late for local ACK&quot;, &quot;no transaction found&quot;<br>
<br>Bellow is my attach configure and logs for more clear about description:<br><br>Thanks and Regards,<br>-LN<br><br><b>========Configuration==============</b><br>debug=4<br>log_stderror=yes<br>log_facility=LOG_LOCAL0<br>
<br>fork=yes<br>children=4<br>port=5060<br>listen=udp:OPENSIP_PUBLIC_IP:5060<br>listen=udp:OPENSIP_PRIVATE_IP:5060<br><br>####### Modules Section ########<br><br>route {<br>    log(1, &quot;----------------------------------------------------------------------------------\r\n&quot;);<br>
    log(1, &quot;HTK: ENTER MAIN LOOP\r\n&quot;);<br>    log(1, &quot;----------------------------------------------------------------------------------\r\n&quot;);<br>    #---------<br>    #Sanity Check<br>    #-------------<br>
    if (!mf_process_maxfwd_header(&quot;10&quot;)) {<br>        sl_send_reply(&quot;483&quot;,&quot;Too Many Hops&quot;);<br>        exit;<br>    };<br>    if ( msg:len &gt;= max_len ) {<br>        sl_send_reply(&quot;513&quot;, &quot;Message too big&quot;);<br>
        exit;<br>    }<br>   <br>    #--------------------------------------<br>    #Record-Route all messages<br>    #-- to make sure subsequent messages will go through our proxy<br>    #--------------------------------------<br>
    if (method!=&quot;REGISTER&quot;) {<br>        record_route();<br>    }<br>   <br>    #-------------------------------<br>    # Loose-Route<br>    #-------------------------------<br>#    if (loose_route()) {<br>#        append_hf(&quot;P-hint: HTK: rr-enforced\r\n&quot;);<br>
#        route(1);<br>#        exit;<br>#    }<br>   <br>   <br>#20090504-0232<br># Comment Loose_route(), add saud ay<br># <a href="http://www.voipembedded.com/resources/openser_cr.cfg">http://www.voipembedded.com/resources/openser_cr.cfg</a><br>
    if (has_totag()) {<br>        # sequential request withing a dialog should<br>        # take the path determined by record-routing<br>        if (loose_route()) {<br>            route(1);<br>        } else {<br>            if ( is_method(&quot;ACK&quot;) ) {<br>
                if ( t_check_trans() ) {<br>                    # non loose-route, but stateful ACK; must be an ACK after a 487 or e.g. 404 from upstream server<br>                    t_relay();<br>                    exit;<br>
                } else {<br>                    # ACK without matching transaction ... ignore and discard.\n&quot;);<br>                    xlog(&quot;L_WARN&quot;, &quot;[$mi] discarding ACK\n&quot;);<br>                    log(1, &quot;HTK: ------------Discarding ACK ---------------\r\n&quot;);<br>
                    exit;<br>                };<br>            };<br>            sl_send_reply(&quot;404&quot;,&quot;Not here&quot;);<br>        };<br>        exit;<br>    };<br><br>    #initial requests<br><br>    # CANCEL processing<br>
    if (is_method(&quot;CANCEL&quot;)) {<br>        if (t_check_trans())<br>            t_relay();<br>        exit;<br>    };<br><br>    t_check_trans();<br><br>#End     #20090504-0232<br>   <br>    #--------------------------------<br>
    # uri != myself<br>    #--------------------------------<br>    if (uri!=myself) {<br>        append_hf(&quot;P-hint: HTK: uri!=myself  ----- Outbound---------------------------------------\r\n&quot;);<br>        log(1, &quot;HTK: enter route 1 ----------------\r\n&quot;);<br>
        route(1);<br>        exit;<br>    }<br>    #--------------------------------<br>    # uri==myself<br>    #--------------------------------<br>    if (uri==myself) {<br>        log(1, &quot;HTK --- ENTER uri==myself ---------------------------------\r\n&quot;);<br>
        if (method==&quot;REGISTER&quot;) {<br>            if (nat_uac_test(&quot;19&quot;)) {<br>                setbflag(6);<br>                force_rport();<br>                fix_nated_register();<br>           <br>            }<br>
            sl_send_reply(&quot;100&quot;, &quot;HTK: Trying\r\n&quot;);<br>            #AUTHENTICATE<br>            if(!www_authorize(&quot;OPENSIP_PUBLIC_IP&quot;, &quot;subscriber&quot;)) {<br>                www_challenge(&quot;OPENSIP_PUBLIC_IP&quot;, &quot;0&quot;);<br>
                exit;<br>            }<br>            consume_credentials();<br>           <br>            save(&quot;location&quot;);<br>            exit;<br>       <br>        }<br><br>       <br>        lookup(&quot;aliases&quot;);<br>
        if (uri!=myself) {<br>            append_hf(&quot;P-hint: HTK: LOOKUP ALIASES --- outbound alias\r\n&quot;);<br>            route(1);<br>            exit;<br>        }<br>       <br>        if (!lookup(&quot;location&quot;)) {<br>
            log(1, &quot;HTK - User NOT FOUND - change to Route(2)---------------------------\r\n&quot;);<br>            route(2);<br>            exit;<br>        }<br><br>    } #End uri==myself<br>   <br>           <br>    if (method==&quot;INVITE&quot;) {<br>
        t_on_failure(&quot;1&quot;);<br>    } else if (method==&quot;BYE&quot; || method==&quot;CANCEL&quot;) {<br>        unforce_rtp_proxy();<br>    }<br>   <br>    #---------------------------------------------------------------------<br>
    # LOOSE_ROUTE - INVITE - FORCE_RTP_PROXY<br>    #-----------------------------------------------------------------------<br>    if (loose_route()) {<br>        if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>
            append_hf(&quot;P-hint: HTK - LOOSE ROUTE - Relay re-INVITE + FORCE_RTP_PROXY\r\n&quot;);<br>            force_rtp_proxy();<br>        }<br><br>        t_relay();<br>        exit;<br>    }<br>   <br>    #-----------------------------------------------------------------------<br>
    #NAT - fix_nated_contact()<br>    #------------------------------------------------------------------------<br>    if (nat_uac_test(&quot;19&quot;) &amp;&amp; !search(&quot;^Record-Route:&quot;)) {<br>        append_hf(&quot;P-hint: HTK: Fix nated contact\r\n&quot;);<br>
        force_rport();<br>        fix_nated_contact();<br>    }<br>   <br>    if (method==&quot;INVITE&quot;) {<br>        append_hf(&quot;P-hint: HTK: INVITE go to on_reply_route[1]\r\n&quot;);<br>        t_on_reply(&quot;1&quot;);<br>
    }<br>   <br>    if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>        append_hf(&quot;P-hint: INVITE||ACK + FORCE_RTP_PROXY\r\n&quot;);<br>        force_rtp_proxy();<br>    }<br>   <br>    if (!t_relay()) {<br>
        append_hf(&quot;P-hint: INVITE||ACK - UNFORCE_RTP_PROXY\r\n&quot;);<br>        if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>            unforce_rtp_proxy();<br>        }<br>        sl_reply_error();<br>
    }<br><br>    append_hf(&quot;P-hint: HTK: usrloc applied\r\n&quot;);<br>}<br><br>route[1] {<br>   <br>    append_hf(&quot;P-hint: Route[1] Processing\r\n&quot;);<br>    if (!t_relay()) {<br>        sl_reply_error();<br>
    }<br>}<br><br><br>onreply_route[1] {<br>    append_hf(&quot;P-hint: HTK: On_reply_route[1] processing\r\n&quot;);<br>    if (status=~&quot;(180)|(183)|2[0-9][0-9]&quot;) {<br>        if (nat_uac_test(&quot;1&quot;)) {<br>
            fix_nated_contact();<br>        }<br>        force_rtp_proxy();<br>    }<br>}<br><br>failure_route[1] {<br>    #unforce_rtp_proxy();<br>    exit;<br>}<br><br>route[2] {<br>    log(1, &quot;HTK - ENTER route(2)-------------------\r\n&quot;);<br>
<br>    if ($ru=~&quot;^sip:88059*&quot;) {<br>        log(1, &quot;P-hint: HTK - match 880593---------------------------------\r\n&quot;);<br>        rewritehostport(&quot;SIPGW_PRIVATE_IP:5060&quot;);<br>        log(1, &quot;P-hint: HTK - match 880593---------RewriteHostport------------------------\r\n&quot;);<br>
       <br>        #200905032301<br>        #append_branch();<br>    }<br>    #200905032306 - comment out force_send_socket<br>    force_send_socket(udp:OPENSIP_PRIVATE_IP:5060);   <br><br>    if (loose_route()) {<br>        if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>
            append_hf(&quot;P-hint: HTK - ROUTE2 ---- LOOSE ROUTE - Relay re-INVITE + FORCE_RTP_PROXY\r\n&quot;);<br>            force_rtp_proxy();<br>        }<br>        t_relay();<br>        exit;<br>    }<br><br>    #-----------------------------------------------------------------------<br>
    #NAT - fix_nated_contact()<br>    #------------------------------------------------------------------------<br>    if (nat_uac_test(&quot;19&quot;) &amp;&amp; !search(&quot;^Record-Route:&quot;)) {<br>        append_hf(&quot;P-hint: HTK: ROUTE 2 --- Fix nated contact ---------------\r\n&quot;);<br>
        force_rport();<br>        fix_nated_contact();<br>    }<br>   <br>    if (method==&quot;INVITE&quot;) {<br>        append_hf(&quot;P-hint: HTK: ROUTE2 ------------- INVITE go to on_reply_route[2] ---------------\r\n&quot;);<br>
        sl_send_reply(&quot;100&quot;, &quot;HTK: ROUTE2 Trying\r\n&quot;);<br>        t_on_reply(&quot;2&quot;);<br>    }<br>   <br>    if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>        append_hf(&quot;P-hint: ROUTE2 ------------ INVITE||ACK + FORCE_RTP_PROXY ---------------\r\n&quot;);<br>
        force_rtp_proxy();<br>    }<br>   <br>    if (!t_relay()) {<br>        append_hf(&quot;P-hint: INVITE||ACK - UNFORCE_RTP_PROXY\r\n&quot;);<br>        #if (method==&quot;INVITE&quot; || method==&quot;ACK&quot;) {<br>
        #    unforce_rtp_proxy();<br>        #}<br>        sl_reply_error();<br>    }<br><br>    log(1, &quot;HTK ---- OUT ROUTE 2------------------------------\r\n&quot;);<br>    exit;<br>}<br><br>onreply_route[2] {<br>    append_hf(&quot;P-hint: HTK: On_reply_route[2] processing\r\n&quot;);<br>
    #20090504-1313<br>    if (status=~&quot;(180)|(183)|2[0-9][0-9]&quot;) {<br>        if (nat_uac_test(&quot;1&quot;)) {<br>            fix_nated_contact();<br>        }<br>        force_rtp_proxy();<br>    }<br>   <br>
}<br><br>================ END CONFIGURATIOON<br><br>##################LOGs#####################<br>20090504_ack_01.txt<br>interface: eth0 (<a href="http://172.30.40.0/255.255.255.0">172.30.40.0/255.255.255.0</a>)<br>filter: (ip or ip6) and ( port 5060 )<br>
<br>U OPENSIP_PRIVATE_IP:5060 -&gt; SIPGW_PRIVATE_IP:5060<br>INVITE sip:880593@SIPGW_PRIVATE_IP:5060 SIP/2.0.<br>Record-Route: &lt;sip:OPENSIP_PRIVATE_IP;r2=on;lr=on;ftag=4835a45a&gt;.<br>Record-Route: &lt;sip:OPENSIP_PUBLIC_IP;r2=on;lr=on;ftag=4835a45a&gt;.<br>
Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>Max-Forwards: 69.<br>Contact: &lt;<a href="http://sip:2501000@118.68.253.68:18740">sip:2501000@118.68.253.68:18740</a>&gt;.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>Call-ID: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>CSeq: 1 INVITE.<br>Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO.<br>
Content-Type: application/sdp.<br>User-Agent: X-Lite release 1100l stamp 47546.<br>Content-Length: 671.<br>P-hint: HTK: ROUTE 2 --- Fix nated contact ---------------.<br>P-hint: HTK: ROUTE2 ------------- INVITE go to on_reply_route[2] ---------------.<br>
P-hint: ROUTE2 ------------ INVITE||ACK + FORCE_RTP_PROXY ---------------.<br>.<br>v=0.<br>o=- 0 2 IN IP4 192.168.1.33.<br>s=CounterPath X-Lite 3.0.<br>c=IN IP4 RTPPROXY_PUBLIC_IP.<br>t=0 0.<br>m=audio 46144 RTP/AVP 107 119 100 106 0 105 98 8 3 101.<br>
a=alt:1 1 : NrtWWMn2 071Xungd 192.168.1.33 23650.<br>a=fmtp:101 0-15.<br>a=rtpmap:107 BV32/16000.<br>a=rtpmap:119 BV32-FEC/16000.<br>a=rtpmap:100 SPEEX/16000.<br>a=rtpmap:106 SPEEX-FEC/16000.<br>a=rtpmap:105 SPEEX-FEC/8000.<br>
a=rtpmap:98 iLBC/8000.<br>a=rtpmap:101 telephone-event/8000.<br>a=sendrecv.<br>m=video 40440 RTP/AVP 115 34.<br>a=alt:1 1 : nV/r+DfM sMsjjQna 192<br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 100 Trying.<br>
From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>
Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Content-Length: 0.<br>.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>
SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>
Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>Content-Type: application/sdp.<br>
Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>Accept-Language: .<br>.<br>v=0.<br>
o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>a=fmtp:101 0-15.<br>
m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>
Content-Type: application/sdp.<br>Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>
Accept-Language: .<br>.<br>v=0.<br>o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>
a=fmtp:101 0-15.<br>m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>
Content-Type: application/sdp.<br>Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>
Accept-Language: .<br>.<br>v=0.<br>o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>
a=fmtp:101 0-15.<br>m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>
Content-Type: application/sdp.<br>Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>
Accept-Language: .<br>.<br>v=0.<br>o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>
a=fmtp:101 0-15.<br>m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>
Content-Type: application/sdp.<br>Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>
Accept-Language: .<br>.<br>v=0.<br>o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>
a=fmtp:101 0-15.<br>m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>U SIPGW_PRIVATE_IP:5060 -&gt; OPENSIP_PRIVATE_IP:5060<br>SIP/2.0 200 OK.<br>From: &quot;2501000&quot;&lt;sip:2501000@OPENSIP_PUBLIC_IP&gt;;tag=4835a45a.<br>
To: &quot;880593&quot;&lt;sip:880593@OPENSIP_PUBLIC_IP&gt;;tag=21241.<br>Call-Id: NTc4ZmJiYzFkM2MzZjI1YWE2MmY0OTA1ZDYxOTY1YmY..<br>Cseq: 1 INVITE.<br>Via: SIP/2.0/UDP OPENSIP_PRIVATE_IP;branch=z9hG4bK5184.3c89a5b.0.<br>Via: SIP/2.0/UDP 192.168.1.33:11968;received=118.68.253.68;branch=z9hG4bK-d8754z-b6322657453ffa34-1---d8754z-;rport=18740.<br>
Content-Type: application/sdp.<br>Content-Length: 324.<br>Date: Mon, 04 May 2009 06:11:08 GMT.<br>Contact: sip:SIPGW_PRIVATE_IP.<br>Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, PING.<br>User-Agent: SIPGWNAME (WinNT).<br>
Accept-Language: .<br>.<br>v=0.<br>o=SIPGWNAME 1 1 IN IP4 SIPGW_PRIVATE_IP.<br>s=SIPGWNAME - call.<br>c=IN IP4 SIPGW_PRIVATE_IP.<br>t=0 0.<br>m=audio 17000 RTP/AVP 0 101.<br>a=rtpmap:0 PCMU/8000.<br>a=maxptime:30.<br>a=rtpmap:101 telephone-event/8000.<br>
a=fmtp:101 0-15.<br>m=video 17002 RTP/AVP 34.<br>a=rtpmap:34 h263/90000.<br>a=fmtp:34 QCIF=1/MaxBR=655.<br>a=framerate:10.<br><br><br>