Review of Remote Desktop Connection - VNC
VNC stands for Virtual Network Computing. It is a set of software products that allow one computer to control (or just view) another. The two computers (the one being controlled and the one controlling) do not have to be the same type - so one could be running Windows and the other Linux. VNC works by allowing you to view the what is displayed on the the monitor of the remote pc and passes keyboard and mouse along to the remote pc.
VNC comes in three versions:
- Personal Edition
- Enterprise Edition
This review focuses on the free edition. The Personal and Enterprise versions support enhanced security.
VNC has been reviewed under a number of number of common criteria. Each of these criteria are also applied to the other remote control solutions that have been reviewed. The criteria are:
- Operating Systems Supported
- Security Considerations
- Where To Get It From
VNC (client or server) can be installed on any of the following operating systems:
- Max OS X (Enterprise edition of VNC only)
It is even possible to download the source code for the free product (but not for the personal or enterprise versions).
Installation is very straight forward. You need to download the correct version for your operating system (i.e. Windows, Linux, Solaris or HP-UX). It then (on Windows) has a standard installer program, which walks you through the steps required - which for most will be a series of clicking "Next >". It is important that the options to register and to start the VNC Server are ticked, but these are both ticked by default.
Once the installation has completed you will be shown the VNC server properties box. The important thing is to ensure that you require some form of authentication - you do not want anyone to be able to connect to your pc without even providing a password. The free version supports simple password authentication.
Note: The server component of VNC no longer works for the free version of VNC on Windows Vista and later (it still works fine with earlier versions of Windows). So if you wish to control a PC running Windows Vista or Windows 7 then you will need to purchase the Personal Edition.
On the client side, you can use either the VNC viewer or a web browser.
The VNC viewer is preferable - at the very least you get the option to Control-Alt-Delete on a dropdown menu with the viewer, which you do not get with the browser option. The viewer also supports a greater colour depth and has better overall performance.
The VNC Server (which allows a pc to be controlled) and the VNC viewer (which allows you to control a pc) are separate products, but both are installed by default when you install VNC. When you download VNC from their website, you can select to download just the viewer.
To use a web browser, point your browser at http://pc-name:5800. Where "pc-name" is the DNS name of the pc to be controlled (or its IP address). The first time you do this it will download an applet, and it is this applet which runs the viewer.
What capabilities does VNC allow?
Maximum number of connections: 1 session, multiple connections. Multiple sessions under Unix, because you can specify which display you are connecting to.
The default configuration of VNC is that when one person connects it automatically disconnects any other connections. This can be changed to allow multiple connections. Even with multiple connections, they are all connected to the same session - so they cannot be used independently. However, this does provide a convenient way of allowing several remote PCs to view a single desktop.
The console is the desktop used when someone logs in locally to the computer.
Does VNC allow you to control the console: Yes.
On Windows hosts, you can only connect to the console. This means that only one person can use the PC at a time. It also means that someone sitting at the computer can see what you are doing.
On Unix/Linux hosts, you can connect to the console or to an independent second desktop. Indeed it is possible for two separate users to connect to the same PC but with different desktops. Both would then be connected simultaneously and could work without interfering with the other. This is achieved by connecting to a different range of port numbers.
The default configuration for VNC is to allow someone connecting via VNC to work on the pc. The configuration can be changed to disable keyboard and mouse events, which allows VNC to be used in a view only mode.
Does VNC allow you to transfer files between the local and remote PCs? No
Security should be a prime consideration when using any remote control software, especially when using over the internet or from a remote pc other than your own.
A firewall will block VNC and prevent it from working, unless the necessary port is opened. The default configuration of VNC is to use port 5900 and port 5800 for HTTP. You will need to open one or both of these ports on the firewall and forward them to the pc running VNC Server.
Technically it is ports 5900+display-number and 5800+display-number. For Windows this defaults to 5900 and 5800 but can be configured. For Unix based operating systems, the display number indicates which virtual desktop to connect to, so there are a range of ports numbers that can be used.
The free version of VNC does not incorporate any encryption. The personal and enterprise editions do incorporate encryption.
The free version of VNC supports a single password only. There is no username/password combination. This is supported with the commercial offerings - the personal edition supports username and password, the enterprise version supports windows authentication.
If you were to use VNC across a VPN connection, then you could rely upon the VPN connection for windows authentication and for encryption.
The VNC software (client and server) can be downloaded free from www.realvnc.com.
Personal and enterprise versions are also available from the same link which provide greater capabilities, but which are not free.
VNC is a great tool for cross platform control of PCs.
The information on this page, and the hosting review pages, is believed to be correct. If you find any errors or omissions please report these via e-mail to: firstname.lastname@example.org.