If you're a techie, you no doubt have had to provide tech support to someone unfamiliar with computers. Sometimes that unfamiliarity can make it hard to communicate with the person needing help. How do you walk someone through something on the phone if they are not familiar with terms like task bar, browser or menu bar? And if you've ever had someone try to explain what they are seeing on the screen, you know where the phrase "a picture is worth a thousand words" came from.
An especially frustrating phone call recently convinced me that remote control software was needed to deal with a particular non-techie. But which product?
I am a frequent flyer when it comes to remotely controlling computers, but dealing with a total non-techie requires the software employed on their end to be transparent. That is, the person being assisted should not have to know or do anything to setup the remote control session.
I needed a solution whose only requirement was a computer connected to the Internet. Period. Software that requires even a single click by the person needing assistance was out of the question.
I opted to pay $100/year for GoToMyPC and what follows is an explaination of why.
First some terminology. I find the usual terms, local/remote, host/client, server/viewer, unsatisfying. Instead, I will refer to the computer I am sitting at as the "controller" and the computer operated by the person needing assistance as the "controllee".
Installing GoToMyPC on a controllee machine requires a techie. But once that's been done, the software is indeed transparent to the person operating that computer.
In my case the controllee computer was running Windows XP.
One nice feature of GoToMyPC (and some other products too) is that a user does not even have to be logged on at the controllee machine. That is, GoToMyPC can remotely connect and drive the controllee machine even if its at the screen displaying the available Windows users (below).
This is handy for me, because people I work with often use their computers while logged on as a limited/restricted user. If I need to logon as an Administrator, I can do so without interrupting the GoToMyPC session.
Back when Windows XP was the dominant version of Windows, I was a big fan of NetMeeting for remote access. But, one of the drawbacks of NetMeeting was that it was tied to a Windows user. If I needed to logoff that user on the controllee machine, then I lost the NetMeeting connection, which was a pain to re-establish: NetMeeting was the polar opposite of transparent.
Perhaps the biggest advantage of NetMeeting however was that it was part of the operating system and thus could be used without any up-front planning, a huge convenience when things cropped up unexpectedly. Join.me can do this too, and it's free, but it is not transparent. Citrix, the company behind GoToMyPC has other remote control products that can be used without being pre-installed but they are significantly more expensive than GoToMyPC and are also not transparent.
Another upside to NetMeeting was that it avoided firewall issues on the controllee side. The person at the controllee machine could run NetMeeting and connect into my computer. After this initial connection was established, either side could share their desktop. This is rare in the remote control field, most software is designed for either the controller or the controllee side of the house, NetMeeting allowed either user to perform either function.
Now, many products get around firewall issues, but they do so using a different scheme - they act as a middleman.
There are two very different approaches to establishing the computer-to-computer connection required by remote control software.
In the older scheme, one computer directly connects to another. Sounds simple, but it's not.
For one thing, it requires punching holes in the firewall(s) on the controllee side. This means setting up port forwarding on the router and insuring the controllee machine has a static IP address. It may also require poking a hole in the firewall on the controllee.
To anyone interested in Defensive Computing, a hole in the firewall is a potential security problem as it allows anyone on the Internet to initiate a connection to the controllee. To mitigate this danger, it's important to modify the normal TCP/IP port used by the software being employed. Not doing so, leaves a password as the only thing protecting the controllee from far-away bad guys.
In this scheme, the controller needs either a name or an IP address for the controllee computer.
IP addresses, for consumer Internet connections, will change over time. Websites such as ipchicken.com display the public IP address but this is not transparent and it requires that a person be at the controllee machine.
Getting a permanent name for a controllee computer (a process/service called Dynamic DNS) is transparent to the person needing help but it takes somewhat advanced technical work to set up initially. You need both an account with a company such dyndns.org, and, to modify the router fronting the controllee machine. It's possible to set this up on a computer directly connected to a modem but that would not be my preference.
Not only is setting up direct connection remote control beyond the ability of most non-techies, its also fragile. For example, if the controllee computer is a laptop and is taken to a new location, it's almost certain to fail. Likewise, it's back to square one if the controllee gets a new router.
Finally, it requires very good record keeping.
Real VNC, NetMeeting* and Microsoft's Remote Desktop are examples of software that directly connect the controller and controllee. Below is a screen shot of the VNC viewer software that runs on the controller machine. The "VNC Server" is the controllee machine. The 4853 in the server name is the alternate TCP/IP port being used. Real VNC normally uses port 5900.
The other connection scheme uses a middleman to broker the connection between the controller and controllee machines. GoToMyPC is a middleman.
One advantage to using a middleman is that it avoids all firewall issues on the controllee side. It also obviates the need for naming the controllee machine, this is done by the middleman service. And, the controllee machine is safer because it is no longer accepting unsolicited inbound connections.
Middleman services bypass firewalls by exploiting their basic nature. As a rule, firewalls block unsolicited incoming connections but allow any and all outgoing connections.
More advanced firewalls can also govern outgoing connections so that you could, for example, prevent Internet Explorer from accessing websites but allow Firefox through. Most firewalls however, do not try to govern outgoing requests.
So, middleman oriented remote control software, such as GoToMyPC and LogMeIn start out by making an outbound connection from the controllee computer to the middleman service. Phoning home, if you will. This outbound connection never terminates, unless, someone at the controllee computer manually shuts it down.
A controller computer then connects to the middleman service and is presented with a list of potential controllee machines that have phoned home and indicated they are alive and well and ready to be controlled. When a controller computer indicates that it wants to connect to a particular controllee, the middleman service provider does so using the connection that was initially started on the controllee machine.
This also explains why controllee machines using a middleman service do not need to accept unsolicited incoming connection requests.
Two issues with any middleman service are whether they are reliable and whether they are spying on you.
I have used GoToMyPC frequently and they have been reliable.
I doubt that we can ever truly know if a middleman service provider is spying on their customers. That said, both LogMeIn and GoToMyPC claim that they can not see what their customers are doing.
The LogMeIn Pro Security page says "All communications by LogMeIn products use industry-standard algorithms and protocols for encryption and authentication. Nobody will be able to see or access the data transmitted between your computers - not even us."
A Security & Reliability page on the GoToMyPC site says " ... your GoToMyPC activity is as secure as if you were sitting at your host computer ... GoToMyPC ensures that no one – including our employees – have access to your data stream."
You have to either trust the middleman service provider or use a direct computer to computer connection that encrypts all data being transferred. In the VNC viewer screenshot above, you can see that encryption is set to "Always maximum". This is a feature of the paid version of Real VNC. The free edition does not offer encryption.
WHY I LIKE GOTOMYPC
There are no gotchas.
This is perhaps the most impressive thing about the service. Almost all software has quirks, things that do not work they way they should or the way you might expect. Not GoToMyPC. You don't need a cheat sheet to use the service.
Microsoft's Remote Desktop, for example, has a quirk. I often have music playing on my laptop computer and, when using Remote Desktop, I can't adjust the volume. The Remote Desktop software sends the volume control button presses (the laptop has three dedicated volume buttons: up, down and mute) to the remote computer whose attached keyboard has no volume buttons. Thus, I have to switch back to the laptop OS to change the volume.
GoToMyPC works with or without a person at the controllee computer. Some remote control software requires a person on both ends, other software requires that no one be at the controllee machine.
The software that runs on the controller computer is a native Windows .exe (I have only used GoToMyPC with Windows). In contrast, LogMeIn runs inside a web browser which surrounds the remote control session with its own user interface. And, LogMeIn uses both Flash and Java. GoToMyPC has no software dependencies on the controller side.
One annoyance with NetMeeting was that it only let one person drive the controllee computer at a time. When there is a person at the controllee machine, GoToMyPC lets both people drive concurrently. This is not at all unique, but it's nice to have.
GoToMyPC supports file transfers between the controller and controllee computers. It also handles different screen resolutions on each end well.
Sound played on the controllee machine can be heard on the controller.
There are some performance options (above) for the connections. For example, if the controllee has a slow outbound connection to the Internet, you can scale down the number of colors being sent to the controller. The screen may look ugly to the controller, but the response time should increase.
When the controller has a single screen and the controllee computer has multiple screens, GoToMyPC handles things well. Not perfectly, but very well.
It is not necessary to pre-install software on a machine that will be a GoToMyPC controller. However, if you will be using a computer as a controller frequently, you can setup a shortcut to a controllee machine that eliminates a couple steps from the process of setting up the remote connection.
Even with the shortcut, a controller needs to enter a GoToMyPC password unique to the controllee machine. Since I deal with many GoToMyPC controllees, I have taken to renaming the Windows shortcut to include the password. Well, not exactly the password, but enough of it to remind me of what it is. If the password for my grandmothers computer was, for example, "xyz", then my shortcut name would be something like "grandma xxxxyz".
GoToMyPC handles software upgrades and mis-matches fairly well. While it warns of new software versions being available, it has not refused to make a connection because the GoToMyPC software on one end needed to be upgraded.
For advanced users, there are performance metrics that, as shown below, break out performance attributable to the controller vs. the controllee and for each, report on their CPU and Internet connection.
In addition to Windows, GoToMyPC also supports OS X as both controller and controllee.
According to Citrix, there is a GoToMyPC controller app for both iOS and Android. But, when I searched for it in the Google Play store on a 7 inch Android v4 tablet, it was nowhere to be found. It did show up, however, on a 10 inch Android v3 tablet.
The first time I tried it though, I ran into my first gotcha with the service. The Android controller app refused to connect because the controllee was configured to send only 256 colors. For whatever reason, it insists on having every available color.
GoToMyPC has lots of competition, including free offerings. But, sometimes, things are worth paying for. Citrix offers a free trial of GoToMyPC, but a credit card is required.
My only relationship with Citrix is as a customer.
*NetMeeting could work either way. Way back when, there were servers (called Internet Directories) that allowed NetMeeting users to meet and "conference". It was an early form of Chatroulette. I only used NetMeeting in direct connect mode, where I gave the controllee the IP address of my computer.