Identify / change your MagicJack proxy to fix call quality issues

MagicJack sells like hotcakes across the country. This is great for the parent company, but it can present challenges for consumers buying the device, especially if you live in one of their crowded markets (that is, for me in Atlanta). I have been working on various tips and tricks to optimize MagicJack and fix some common problems, and this one solves the problem mentioned above. After experiencing some pops and cracks in my calls, I started wondering if maybe the MagicJack server was a bit overloaded and if so, was there a way to change the server? After reviewing all the options in the program, I realized that there was no way to specify a different server from within the MagicJack application, but having a good understanding of networking I was sure I could find some tricks.

After experimenting, I found that if a MagicJack server was unavailable it would automatically route to the next available server, so in my case if the Atlanta server was down for some reason it would be automatically routed to the next closest server. or Memphis, TN. To make MagicJack think Atlanta was down, I created a fake route on my computer that pointed to a non-existent server, and once MagicJack determined that it couldn’t connect to Atlanta, as expected, I was sent to Memphis. I jumped with excitement as I realized that the quality was now PERFECT. There were no more pops or cracks, and none of my recipients complained of static. This tip to optimize MagicJack and fix some common problems is the one I needed to throw away my home phone bill. Just a word of warning, these next steps are pretty technical, so be careful or ask a technical friend for help.

Find your proxy to fix common MagicJack problems

To effectively optimize MagicJack and troubleshoot call quality issues, you must first identify the proxy server you are using. The steps below describe how to identify the proxy and vms servers MagicJack is currently using to complete calls:

Step 1) Download the pmdump application from http://www.ntsecurity.nu/toolbox/pmdump/ – pmdump allows you to dump the memory of a particular process; this is how we will get the proxy server

Step 2) Launch MagicJack

Step 3) Identify the MagicJack Process ID (PID)

a) Open a command prompt (start-> run-> cmd).

b) Run pmdump -list

c) Look for “magicjack.exe” in the output. Write down the number associated with it (usually 3-4 digits).

Step 4) Make at least one call

Step 5) Using command prompt and PID as described above, run: pmdump [pid] magicjack.txt

Step 6) Open magicjack.txt using a text editor and search for the string: s = ENSResip

For example, if you connect to the Atlanta proxy, you should see:

o = – 390440284 390440284 EN IP4 216.234.78.8

s = ENSResip

c = EN IP4 216.234.78.20

Note the IP addresses for proxy and vms servers (216.234.78.8 for proxy and 216.234.78.20 for vms).

Then you have found your proxy, now is the time to change it.

Windows has a great built-in feature for setting “paths” for servers. As I mentioned earlier in the article, the next trick to optimizing MagicJack and fixing call quality issues is to make MagicJack think the Atlanta server is down, so it will default to the next available server. With the “route” command, you can set the Atlanta proxy and vms servers to a non-existent IP address on your local network (if your computer is 192.168.1.2, you can use anything in that range, hence 192.168.1.39) . To do this, run the following command from the command prompt:

add route [ip of proxy] mask 255.255.255.255 192.168.1.39 -p

add route [ip of vms] mask 255.255.255.255 192.168.1.39 -p

The above command will tell your computer that the MagicJack proxy server is at 192.168.1.39, which is the wrong address, so MagicJack will try the next available and hopefully less busy server. The -p option tells your computer to keep the path persistent or to remember it after rebooting. If you want to use a specific proxy server (that is, you decide the Austin, Texas server is the best), you basically repeat the above process, but block ALL proxy servers except the one you want to use.