MagicJack/Support Resources/How-To/Proxy Change

Occasionally it may be useful to change the server the MagicJack softphone connects to. For example, to eliminate whether problems are specific to a regional server, or to regain service if your regional server is down.

The MagicJack softphone has a feature to try a different server if it is unable to connect to its preferred server. Therefore, it is possible to change servers simply using standard network commands (route or iptables) to make the preferred server inaccessible. Or, force MagicJack to connect to a specific server by making all the other servers inaccessible.

Note: Many people wonder why this isn't as simple as using the "host file" to associate the preferred server name to a different IP address. Around October 2008 MagicJack changed the softphone to use IP addresses. Therefore, there is no name to resolve, and the "host file" is not consulted.

Prerequisite
You should have a good understanding of the material presented in the How-To: Find your proxy. That How-To gives background information about the servers MagicJack uses, and how to  identify the specific proxy (and vms) server you are using at any moment.

Change servers
As described in the Prerequisite section above, MagicJack has regional servers across the US. It will attempt to connect to the server associated with your area code. If it is unsuccessful, it will try a different regional server. This allows users to force MagicJack to use different servers just by making the server it normally connects to inaccessible. This can be done by using any of the following methods.

To use each method, you must first identify your proxy server as described in the Prerequisite section above.

Static Routes
Create a static route for your proxy IP address to a non-existent address. For example, if you normally connect to the Phoenix proxy, execute the following from a DOS (command) window:

route add 66.104.81.70 mask 255.255.255.255 192.168.1.2

This assumes that 192.168.1.2 is a non-existent IP address within your LAN.

NOTES:
 * You have to execute that route command each time you start Windows. You can simulate restarting Windows (clearing the route) by executing ipconfig /release followed by ipconfig /renew.
 * You can make a route permanent (persistent) by adding the -p option to the route command. For more information, type route without any options.
 * IMPORTANT: Be sure to keep track of the persistent routes you create with the -p option. If something goes wrong, you must be able to delete those routes using route delete {address}.
 * This doesn't work with Vista. It must be an address that exists within your LAN. It may be necessary to use the following ipchains/iptables method with Vista. Or, use IPSec (more info is needed here. See this specific post and the thread that surrounds it.).

ipchains/iptables
Use an iptables/ipchains rule to drop all traffic for an IP address:

/usr/sbin/iptables -I FORWARD -d 216.234.70.8 -j DROP

This is typically used with a router using firmware like Tomato or DD-WRT.

Router Firewall Rules
If your router also has a firewall, you can add a rule to block all traffic going to a specific IP address. Each router will have a different method of doing this. Usually, you'll go to the firewall rules and add a rule to deny traffic from any LAN address to the specific WAN IP address you want to block. Not all routers will support this, but most should.

The advantage of using this method is that it will apply to all computers on your network, and you'll only have to set it up once. If you move your MagicJack from one computer to another (or have more than one MagicJack), the server will remain blocked. It also will work with any operating system, current or future, since the router's doing the blocking, not the computer. Even if you reinstall your operating system, it will continue to block the server. When you want to get rid of the rule, you can log back into your router and delete it very easily.

An example of how to do this on a D-Link router is here, but keep in mind each router will be different: http://www.dslreports.com/forum/r19798124-Creating-router-firewall-rules-to-block-IP-addresses

Force a specific server
To force MagicJack to connect to a specific server, you need to block access (as described above) to all servers except the one you want to use.

To identify all available proxy servers, see identifying all available proxies. After you decide which regional server you want to use, make all the other servers inaccessible using the methods described in the previous section.

Note: Be aware that it may take a couple minutes for MagicJack to connect to that server as it tries all the others.