Why Asterisk gives wrong ip address inside of SDP?

Why asterisk gives its own NAT ip to sip clients?
Asterisk is running on 192.168.150.90. It is located under the NAT featured router. WAN ip of the router is 10.0.0.120.
Sip clients resides in 10.0.0.0 network. When one of sip clients tries to call another one so everthing is ok in signalling part, but there is not any voice in both side. I have captured pcap log file in asterisk host and sip client side. I have realized that asterisk gives 192.168.150.90 in SDP part. It must give 10.0.0.120. How can i fix it?
My configuration file is:
/etc/asterisk/sip_general_additional.conf
vmexten=*97
context=from-sip-external
callerid=Unknown
notifyringing=yes
notifyhold=yes
tos_sip=cs3
tos_audio=ef
tos_video=af41
alwaysauthreject=yes
useragent=FPBX-13.0.25(13.6.0)
disallow=all
allow=alaw
allow=h264
allow=mpeg4
rtpend=20000
callevents=no
rtpstart=10000
bindport=5061
jbenable=no
rtpholdtimeout=300
notifyhold=yes
notifyringing=yes
registerattempts=0
registertimeout=20
srvlookup=no
rtptimeout=30
rtpkeepalive=0
videosupport=yes
minexpiry=60
maxexpiry=300
maxcallbitrate=384
allowguest=yes
g726nonstandard=no
canreinvite=no
checkmwi=10
defaultexpiry=120
nat=force_rport,comedia
externip=10.0.0.120
ALLOW_SIP_ANON=no
localnet=10.0.0.0/24

Your localnet line is incorrect yours reads 10.0.0.0/24 which would infer the 10 network is inside the nat so the SDP would come from the 192 up address you need to change the localnet to match the internal network of the asterisk server

There are some IP settings in Freepbx. I want to understand their meainings.
What is the meaning of these features ?
1-Setting-Asterisk SIP Setting:
External Address?
Local Networks?

2-Setting-Asterisk SIP Setting-Chans_SIP Settings
NAT Settings: yes ? No?
Override External IP:?