<br>Hi Andreas.<br><br>Thanks for your answer. I that case, as you say, how should I setup the configuration?<br><br>After doing lookup(&quot;location&quot;), how could I check nat-flag?<br><br>Thanks a lot.<br><i><font color="#000000">
<span style="font-style: italic;"><br></span>Sergio Armando Gutiérrez Betancur</font></i><br>
<i><font size="2"><font color="#000000">S</font></font></i><i><font color="#000000">ubdirección </font></i><i><font color="#000000"><font size="2">A</font></font></i><i><font color="#000000">plicaciones </font></i><i>de 
</i><i><font size="2"><font color="#000000">S</font></font></i><i><font color="#000000">ervicios </font></i><i><font color="#000000"><font size="2">C</font></font></i><i><font color="#000000">onvergentes</font></i><i><font color="#000000">
<font size="2">&nbsp; <br>EPM TUNE </font></font></i><br>
<i>Tel: 054 3802956</i><br>
<i>Email: <a href="mailto:sergio.gutierrez@une.com.co">sergio.gutierrez@une.com.co</a></i><br><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td><i><br></i>
</td>
</tr>
</tbody></table><br><br><div><span class="gmail_quote">On 8/8/07, <b class="gmail_sendername">Andreas Granig</b> &lt;<a href="mailto:agranig@sipwise.com">agranig@sipwise.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br><br>Maybe the request of this reply hasn&#39;t been passed to mediaproxy? If the<br>callee is registered from behind NAT, you know that already in the<br>request because the nat-flag should have been set during registration.
<br>So after lookup(&quot;location&quot;) the nat-flag should be set, and if so, you<br>have to use_media_proxy() also for the request.<br><br>Andreas<br><br>Sergio Gutierrez wrote:<br>&gt; Hello all.<br>&gt;<br>&gt; We are facing some problems in our deployment of OpenSER, related to NAT
<br>&gt; Traversal solution using MediaProxy.<br>&gt;<br>&gt; In our scenario, using the the sample configuration NAT detection works<br>&gt; right for REGISTER method, and for INVITE&#39;s sent from clients behind<br>&gt; NAT, but, incoming calls originated from transparent clients, directed
<br>&gt; to clients behind NAT do not work, and do not pass through MediaProxy.<br>&gt; Services based on re-INVITES do not work either.<br>&gt;<br>&gt; To solve that issue, we tried to intercept the 200 OK answer coming from
<br>&gt; NAT client, so that we could call use_media_proxy(), but, we get the<br>&gt; error: &quot;Empty Response from media_proxy()&quot;<br>&gt;<br>&gt; Our configuration is more or less like this:<br>&gt;<br>&gt; # In the beginning of the main route
<br>&gt;<br>&gt; if(client_nat_test(&quot;7&quot;))<br>&gt; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;setflag(2);<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;fix_contact();<br>&gt; };<br>&gt;<br>&gt; .....<br>&gt;<br>&gt; if(is_method(&quot;INVITE&quot;))<br>&gt; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; if(isflagset(2))
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; use_media_proxy();<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; };<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; t_on_reply(&quot;1&quot;);<br>&gt;<br>&gt; }<br>&gt;<br>&gt; ....<br>&gt;<br>&gt; on_reply_route[1]<br>&gt; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (status =~ &quot;(18[0-3])|(2[0-9][0-9])|(1[0-9][0-9])&quot;)
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (client_nat_test(&quot;3&quot;))<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fix_contact();<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; use_media_proxy();<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt; }<br>&gt;<br>&gt;<br>&gt; That is a very brief configuration fragment, but it is more or less the<br>&gt; schema of configuration we are using. So far, our solution to be able to<br>&gt; have the whole services working is marking all the calls so that they
<br>&gt; pass through the mediaproxy, but we are not sure if that is a good<br>&gt; solution.<br>&gt;<br>&gt; Thanks in advance for every hint or suggestion.<br>&gt;<br>&gt; Kind regards<br>&gt;<br>&gt; /Sergio Armando Gutiérrez Betancur/
<br>&gt; /S//ubdirección //A//plicaciones //de //S//ervicios //C//onvergentes//<br>&gt; UNE - EPM Telecomunicaciones<br>&gt; / /Tel: 054 3802956/<br>&gt; /Email: <a href="mailto:saguti@gmail.com">saguti@gmail.com</a> &lt;mailto:
<a href="mailto:saguti@gmail.com">saguti@gmail.com</a>&gt;/<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; ------------------------------------------------------------------------<br>&gt;<br>&gt; _______________________________________________
<br>&gt; Users mailing list<br>&gt; <a href="mailto:Users@openser.org">Users@openser.org</a><br>&gt; <a href="http://openser.org/cgi-bin/mailman/listinfo/users">http://openser.org/cgi-bin/mailman/listinfo/users</a><br></blockquote>
</div><br>