Hi guys!<br><br>I try to use OpenSER with NATed-users and now I have some problem.<br>No I&#39;ll try to explain it.<br><br>I have the following network scheme:<br><br>mySIP-phone_behind_NAT --&gt; NAT --&gt; OpenSER --&gt; OtherProxy --&gt; other_SIP_phone
<br><br>mySIP-phone_behind_NAT have some knowledges about external NAT_ip so it successfully<br>registered on OpenSER using nathelper module and location table have new record looks like:<br><br>user@mydomain<br>Contact: 
user@NAT_ip:5060<br>Received: NAT_ip:NAT_port<br><br>Then mySIP-phone_behind_NAT send new INVITE with Contact=user@NAT_ip:5060<br>OpenSER fixup this Contact using <a name="110c9bba1dd6463d_AEN219"><code>fix_nated_contact() 
</code></a>and send INVITE to OtherProxy<br>with Contact=user@NAT_ip:NAT_port;nat=yes<br><br>Then 200OK and ACK successfully traversed via OpenSER and dialog esteblished.<br><br>Then other_SIP_phone sends BYE request using R-URI learned from previous
<br>INVITE Contact-header=ser@NAT_ip:NAT_port;nat=yes<br>OpenSER rewrite this R-URI to user@NAT_ip:NAT_port and send it using t_relay(). The packet goes to NAT_ip:NAT_port<br>but mySIP-phone_behind_NAT sends &quot;404 Not found&quot; because it does not know anything about 
user@NAT_ip:NAT_port --<br>it expected user@NAT_ip:5060 as sended in first INVITE.<br><br>So, my question is:&nbsp; is this my misconfiguration or incorrect logic understanding ?<br><span></span><br>
I have some ideas how to fix this problem, for eaxample:<br>when I got INVITE from mySIP-phone_behind_NAT I must rewrite Contact to user@mydomain<br>(assuming that requests to mydomain goes to OpenSER always). Then if OpenSER got BYE from other_SIP_phone
<br>it will lookup() and restore Contact and Received info.&nbsp; But I have
problem again: If I rewrite R-URI to Contact and t_relay() it -- packet
will be discarded by NAT because it does not anything about port 5060.
If I rewrite R-URI using Received info I will get problem discribed
early.
<br><br>Feature request &quot;Allow AVP in t_relay()&quot; (published in Tracker) will solve this problem <br><br>Any suggestion?<br><br clear="all"><br>-- <br>CU,<br>Victor Gamov