No Voice when calling from External to Internal and vice versa

I installed Freepbx 12.0.43 distro. The freepbx box is behind a fortigate firewall and i setup a Virtual IP. Within the LAN, calls are fine but when calling to a SIP extension outside of the network and vice versa, the extension can receive the call, but no audio both ways.

I found the document on how to trouble audio problems, but can’t make it work.
All of the UDP ports below are port forward/allowed.
5060
4569
5004-5037
5039-5082
10000-20000

What am i doing wrong here?

Edward

http://docs-legacy.fortinet.com/fos50hlp/50/index.html#page/FortiOS%205.0%20Help/SIP.191.086.html

and more generally

http://docs-legacy.fortinet.com/fos50hlp/50/index.html#page/FortiOS%205.0%20Help/intro_5.html

Fortigates SIP helper is probably fighting Asterisk’s quite capable NAT’ing, rarely are PNAT boxes VOIP “helper” functions actually helpful, start off by disabling them. When in doubt turn on SIP debugging to see where SIP and the ensuing SDP sessions are being sent to and expected to come back from.

Thanks for your help. It’s working fine now. I enabled the SIP ALG feature in Fortigate, applied it to a security policy and audio is now working.

Edward