One of our users is able to place calls but has no audio.
Here’s the sip.conf entry + call log with verbose 3, SIP debugging, and RTP debugging turned on:
http://pastebin.com/6kNvrByW
I can see that RTP traffic is being sent to the wrong address - this even though “nat=yes” is set. None of our other users has this problem, so what could it be?
When I run “sip show peers,” the user’s public IP address is shown, so SIP, at least, is working.
nat=yes does not enable NAT processing for the case when Asterisk is inside NAT and the peer is outside. It is a deprecated shorthand that roughly corresponds to nat=force_port,comedia, which are workrounds for Asterisk outside and the peer inside.
There is a big section in the sample configuration file about out to tell Asterisk how to find its public address and how to know which peers require this.
Also, type=peer is more secure, and almost certainly better behaved, than type=friend.