I have openser configured with asterisk as following:<br>If a sip REGISTER packet arrives,<br> fix_nated_register()<br> save("location")<br> exit;<br><br>If a sip packet arrives at openser with a source ip != asterisk ip,
<br> t_relay(to asterisk)<br>If a sip packet arrives from asterisk,<br> lookup("location");<br> force_rport()<br>
fix_nated_contact()<br> t_relay();<br><br>The asterisk dial plan says the following:<br>if inbound traffic arrives from openser's ip address, Dial(SIP/dstuser@dstdomain).<br><br>phones a and b are on separate networks behind a firewall, openser and asterisk are on public ip addresses.
<br><br>The sip traffc seems to work just fine. I.e. all the handshakes seem to be happening as they should.<br>However, rtp traffic does not. <br><br><br>Whether audio traffic will transmit or not is a crap shoot.<br>Sometimes, if a calls b, b hears a but not vice versa, while if b calls a, audio is two way.
<br>In this case, one audio stream is going through asterisk, the other is being directed to go point to point.<br>Sometimes, a calls b and b hears a, and a hears b for a second but a second INVITE comes to phone B that causes it to redirect rtp to be point to point.
<br>Sometimes there is no audio.<br>Sometimes, everything works fine.<br><br>At one point, rtp from a was going to asterisk, but asterisk was not sending the rtp on to b, and b was trying to send traffic point to point.<br>
<br><br> <br>