Issue:
Typically an extension can hear but the caller cannot hear the person who answered the remote extension. The remote extensions is outside the internet behind a NAT or in another subnet.
Solution:
I've not found a silver bullet for all cases. Here's what we did to get our external extensions on a different different NAT to transfer within our VPN tunnel.
1. Check your firewalls and VPN tunnels.
2. Check the /var/log/asterisk/messages log for log entries.
3. Check the logs on the IP phone.
4a. Set the external phones to NAT = yes in the extension configuration for trixbox and on our Cisco 7912 phones that were remote.
4b. Set the nat = yes in the phone configuration files respectively.
5. See the the SIP response is going out the network to the internet instead of staying in the local network.
Ours was partly. If so, this might work:
Edit sip.conf indirectly by editing the sip_general_custom.conf file.
(The file sip.conf and sip_general_additional.conf both say not to edit them. The next pseudo obvious place is: sip_general_custom.conf.)
If you trixbox server's internal IP is 192.168.1.16, then add:
bindaddr=192.168.1.16.
For config file info, see:
http://freepbx.org/configuration_files
The localnet setting is probably the cause since the other nat is obviously not local. It is in the sip_nat.conf file:
nat=yes
externip=11.102.16.95
localnet=192.168.1.0/255.255.255.0
localnet=192.168.44.0/255.255.255.0
Adding the second localnet tells trixbox, that there are two local networks. This and the AudioMode parameter on the phone were the missing keys for us.
5. Check the AudioMode setting in the phone's web configuration page.
(e.g. http://192.168.1.109/AudioConfiguration)
0x00000011 is default for 7912, but often gives one way audio if NAT'd, try switching to: 0x00000010.
previous page
|