Debugging Remote Connections
<< Click to Display Table of Contents >> Navigation: Utilities Menu > Server Setups > Debugging Remote Connections |
Using CMD's Remote Access features through the Remote Database Server software and/or the CMD web-enabled apps requires certain settings to be made in your router and on the host computer. If you have tried to set up either the Remote Database Server or the Web Server but have been unsuccessful in getting a remote connection to work, here is a check-list you can use for debugging the issue. This is the same check-list we would use if we were there at your site setting it up ourselves.
Note that CMD's remote and web connections are entirely at the mercy of the connections and properties of your router and host computer. CMD will work properly if all the component parts of your system are working as they should.
We suggest that you do this in four phases: make sure the host computer's CMD program is functioning properly, confirm your router settings, then try to connect on a local network client computer, and then finally try a remote connection. Here's what we would check in the following order:
1.If using the Remote Database Server software, first check to see if it starts up correctly on the host computer. Make sure the data file in question is installed as a Remote File. To confirm this, start up CMD, and look in the lower left corner of CMD's main dialog on the Status Bar. It will say either Local File or Remote File. If your issue is with the Remote Database Server, it must say Remote File.
The Web Server can work with either a Local or Remote File. If your trouble is with a remote access connection and the data file you wish to use is a Local File, you will need to use the Include Other File option on the CMD Configuration Menu and connect to the data file as a Remote connection. It is useless to go further in this list until this has been done.
2.Windows Firewall/Anti-Virus. If you have a working Remote File on your CMD host computer, you should set up Exceptions in both programs for the remote database server and the web server. Sometimes you are prompted to add exceptions as they are being installed and first used, but sometimes they are not.
You will need to go to both the Windows Firewall and any Anti-Virus programs you have running and double-check to see if the servers are being allowed in. Exceptions is the term often used, though Windows 7 just has a link on the Windows Firewall page that says "Allow a Program or Feature Through Windows Firewall. Each Anti-Virus program will label their Exceptions differently, but try to find where they are specified on their Settings or Setup page to add the servers. Generally, to set up an Exception you will be given a place to Add or Find the program that is to be granted as an Exception. Use the Browse mechanism they provide and navigate to the C:\CMD-SFM\Servers folder, and select CMDServer.Exe and/or CMDWebServer.EXE.
One these things are in place, you are ready to move on to your router setup to confirm or make the settings there.
Confirm your Router settings
Because of the wide variety of routers on the market, we cannot give you video training or show you screen grabs to help you here. All we can do is explain what you need to set in your router. You will need to do these things in your router setup:
1.Set a "reservation" for the host computer so that it will have a consistent IP address within the local network. This is critical! If your router does not allow for a reservation (the term your router uses for this might vary), then you will need to set your host computer manually to have a specific IP address within your local network. Because of the wide variety of Windows versions out there, we cannot show you screen grabs of this either.
If you are not able to easily find out how to do this on your router, Google might be able to help. Enter something like...
How To Setup DHCP Reservations
Here's one link that may help. It talks about some hardware components that have nothing to do with your CMD setup, but it does give a pretty good tutorial on setting up a reservation:
This page even provided a link on how to create a static IP address on a networked computer in case your router doesn't have the provision to do it from there:
http://www.howtogeek.com/howto/19249/how-to-assign-a-static-ip-address-in-xp-vista-or-windows-7/
2.Next you'll need to do a "port forward" in your router setup. A port forward tells the router to "listen" for attempts to contact CMD through one of two "portals" into your router that you define. The port forward will send such inquiries directly to either the remote database server or the web server, which then connects to your CMD data.
The port forwards are: 12010 for the remote database server, and 80 for the web server. If you have both, you'll need to set both. Forward both of these ports to the IP address of the host computer (now do you see why you must have a static IP address for the host within your network?). When asked which protocol to use, select Both (both IP or TPC, and UDP).
3.Some routers allow you to enter/specify the information for a Dynamic DNS server (DDNS for short). If you subscribe to Dyn.com or a similar service, enter that information if your router provides for it.
4.Finally, check to see if there is any internal firewall in your router. If there is, turn it off temporarily so that you can test the connection. Once it's tested, you can reinstate it. If it blocks access, you will need to set up an Exception for the router's firewall.
If you've got the host configured properly, and the anti-virus and firewall programs have the servers listed as Exceptions, then you should next try to connect via a local client if you have the remote database server. Use the CMD Tools program for this. Use the tool on the right half of the dialog to try to hook in. Use the local IP address established for the host computer in the router settings mentioned above. There is a video training segment available on that dialog to tell you how to use it if you are unsure.
Basically, you enter the local IP address of the host and click the Poll button. If a data file appears, then you can connect to it by clicking on the check box and then clicking the Add button under the list box. You can then start up CMD and it will start up connected to the data file you saw on the list.
If Startup Recovery is unable to connect, confirm that the client computer is on the local network that has the host computer. If it is on the network, then go back to the host computer and first try to disable the Firewall and Anti-Virus software and try again. If it connects now, then restart the Firewall and test it again. If it's blocked again, then you haven't got it configured properly to let the server through. Go back and check the exceptions then try again. Once that's working, then turn on Anti-Virus. If it's blocked again, then disable the Anti-Virus on the host computer.
In rare cases, you might also have to check the Firewall and Anti-virus programs on the client computer, but generally the problems come with the host computer.
Assuming you were able to successfully connect a client on the local network, it's now time to try for a remote connection.
Web Server
To test the web server connection:
Make sure you've done the Web Server Startup functions correctly. If it's not up and running with the correct INI file, then nothing would happen anyway!
Try using an iPhone/Droid/iPad and type in the IP address or domain name for your office network into the address bar of the device's browser. You can also type it in on a remote computer using their browser. The IP address is NOT the internal network IP address, it's the static one your ISP gives you. If they do not provide a static IP address, you'll need to subscribe to a service like Dyn.com to get a dynamic DNS service (we use their service at a cost of about $25 a year). That will give you a domain name that will resolve to your local network.
If all is set up correctly, you should see the CMD Phone App appear on your browser's screen.
If you have confirmed that you can connect to CMD from a local client using the internal IP address, you should be able to connect a remote client over the internet in a similar way, except in this instance you'll need the static IP address your ISP provides you, or a domain name (see the note above in the Web Server section about Dyn.com).
Use the CMD Startup Recovery Program, and use the tool on the right-hand side of the dialog to attempt to connect to the host computer's CMD data. There's a training video available on that dialog if you need coaching on how to use it.
If all the above suggestions have been tried and you still cannot make a remote connection, then try to ping the IP address (if you have a static IP address from the outside or the current IP address specified in your Dyn.com account). If you can ping and get a response, then you should be able to get a connection. If not, there is likely something still amiss in your router setup. If you have exhausted all of these check-list items, contact us for further suggestions.