Configuring remote phones with any IP PBX system presents two distinct problems. First, you sometimes have to deal with Network Address Translation (NAT) issues that can cause one-way audio. Second, you cannot have two remote phones at a single location without having to implement a VPN between the two locations. Fortunately, 3CX has a solution with their 3CX SIP Proxy Manager that can solve both of these issues.
The SIP Proxy Manager can be used in the following situations:
- Resolve issues of NAT Traversal at both the remote and the PBX location
- Simplify Firewall configuration at both the remote and the PBX location
- Overcome difficulties with ISPs that block VoIP Traffic based on port numbers
- Allows VoIP-over-WiFi in some restricted locations, such as Hotel rooms
- “Fixes” Firewalls that cannot handle VoIP traffic correctly or which are very difficult or problematic to configure correctly, such as:
- Microsoft ISA Server
How Does It Work
During a normal SIP phone call, you have two parts of the equation working. The first part is the SIP messaging which works on port 5060 and then you have the audio stream on ports UDP 9000-9049. Because of how routers switch packets between the public IP address they came in on, into a private IP space behind the router, this can cause the routing to get “messed up” resulting in problems like one-way audio, phones ringing but can’t answer calls, and major problems trying to have two IP phones behind the same router (when the PBX is located elsewhere).
The 3CX SIP Proxy Manager gets around these issues by using a single port (TCP 5090) and uses 3CX’s Tunnel protocol which allows it to act as its own direct link between the phones on the network and the remote 3CX system.
Setting Up The Proxy Manager
For a permanent installation you should forward TCP Port 5090 to the machine running the 3CX Proxy Manager, this will help ensure that things are always going to work properly. Download the 3CX Proxy Manager from the 3CX Downloads page and install it.
- SIP Listener IP Address
Select the correct IP address that requests will come in on.
- SIP Listener Port
SIP Port for use with local devices
- Server Public IP Address
The Public IP address of the 3CX Phone System the Proxy Manager is connecting to.
- Server Tunnel Port
By default this is 5090 and needs to match the port used by 3CX.
- Server Tunnel Password
This is set to the default tunnel password and should only be changed if the tunnel password in 3CX has been changed.
Once you have set all of the fields properly, save your settings and the 3CX Tunnel Proxy will restart and connect. Next, we need to configure the phones.
Configuring Phones With The 3CX Proxy Manager
Configuring phones is just like configuring phones for a direct connection with a couple little things you need to pay attention to in order for things to work properly. For our example we will use a Yealink T-28 IP Phone.
Under the Account tab, select the account to use, make sure Account Active is set to On. The fields Label,Display Name, Register Name, and User Name are all usually set to the extension number. The Password field is the SIP password assigned in 3CX.
The SIP Server field needs to be set to the Internal IP Address of the 3CX System. This one is often confusing but it is used to tell the Proxy Manager how to connect to the 3CX Phone System. Leave the Port field set to 5060.
The Enable Outbound Proxy Server needs to be set to Enabled.
The Outbound Proxy Server field needs to have the IP address of the machine that is running the 3CX Proxy Manager.
Save your settings and the phone should now come up as registered and work properly.