What is VNC?
VNC stands for Virtual Network Computing, and it is a desktop sharing system with a graphic user interface which allows you to connect and control a remote computer over a network or the Internet. Thanks to the RFB (Remote Frame Buffer) protocol it’s using, VNC applications send the keyboard and mouse events to a remote computer on the network (or the Internet) who’s screen is being shared, and it relays back the updates.
RFB (Remote FrameBuffer) is a simple protocol and since operates at the framebuffer level, it can be used on all operating systems with a GUI including Windows, Macintosh (Mac OS X) and Linux. Although RFB started as a very simple protocol used by VNC and its derivatives, it has been improved so as to support file sharing, advanced compression and security techniques in its development cycle.
Why VNC is used and How
With VNC you can display the screen of a remote computer on your own computer in a window or in full screen mode, and using your own keyboard and mouse on this screen, you can control that remote computer as if you are sitting in front of it. All actions taken on the view of the remote desktop on your computer are performed actually on the remote computer itself.
You can connect to and take control of a Mac or a PC using VNC, whether you are connecting from a Mac or a PC. Because of the use of the RFB protocol, the client computer and the server do not necessarily be running the same operating system.
- The VNC Server VNC server is the host computer which would remotely be controlled by a client computer running a VNC client application to connect to it.
- VNC Client is the computer running the VNC Client app, to connect to the VNC server and take over the control.
Setting up VNC on Mac OS X
Setting up Mac OS X 10.4 (Tiger) or Mac OS X 10.5 (Leopard) as a VNC Server
Mac OS X 10.4 and 10.5 come right out-of-the-box with VNC server components built-in, so all you need to do is to activate them.
- Open System Preferences from the Apple menu
- Go to ‘Sharing’ under Internet & Network category
- Activate the checkbox of Screen Sharing
- Go to Advanced Settings in Tiger, Computer Settings in Leopard, set the access privilege and the password for those who will connect to the machine remotely using VNC. (JollyFastVNC or Mac OS X Leopard’s ScreenSharing do not require this step although setting a password is highly recommended)
- Close System Preferences and you’re done.
Setting up a VNC Client on Mac OS X 10.4 (Tiger)
In order to connect to a remote computer from Mac OS X 10.4 using VNC, you need to install a VNC client on Tiger. Although there are commercial products such as RealVNC, a few freeware applications are also out there:
RealVNC Viewer Enterprise Edition (commercial) featuring 2048-bit RSA server authentication and 128-bit AES session encyrption, RealVNC is a commercial enterprise-class VNC solution (server suite edition also available).
Setting up VNC Client on Mac OS X 10.5 (Leopard)
The Finder way
In this method, you will be using the ScreenSharing app which comes along with Mac OS X 10.5’s core services. ScreenSharing is a VNC client built-in on Leopard.
- Select “Connect to server…” from the Go menu in Finder
- In the ‘server address’ field in the opening pop-up window, type “vnc://” and then the IP address of the VNC server you want to connect to (for example: vnc://192.168.1.24)
- Click the ‘Connect’ button
- If it works, you have the option of connecting as a registered user or asking permission from the remote computer.
- If you choose to connect as a registered user, you need to enter the username and the password of an account set up on the remote computer.
- If you choose to ask for permission to connect, an invitation request will be sent to the VNC server and someone at that computer must grant you permission in order to proceed.
The iChat way
In Leopard iChat has built-in ScreenSharing. Although using VNC with iChat is not the best method, it is one of the simplest ways.
- Open iChat and enter your MobileMe account credentials, or alternatively you should be able to use ‘Bonjour’ if the remote computer is on the same network as yours.
- Select your buddy from the buddy list.
- You will see an icon in the shape of two small squares one overlapping the other with a small offset at the bottom of the iChat window. This is the ScreenSharing button.
- Select “Share my screen with “, or “Ask to share screen… “.
- iChat takes care of the rest. In order to end the screen sharing session, just press [Command (Apple)]+[Esc] on either computer.
Note: This method requires also someone to be present in front of the remote computer.
Suggestions and Warnings
- If you are the one who sets up the VNC server, for minimal security you should set a password for VNC connection to your computer from “computer settings” in the Sharing pane of System Preferences.
- If you have more serious concerns about security, it’s a better practice to configure VNC to accept only local connections, and then establish an SSH tunnel from the client computer. This way, all VNC packets between the client and the server will have been encrypted.
- Since VNC in itself is not quite secure because of the protocol it uses, it is highly recommended that you disable it, reverting the steps described above i.e. going through the above described steps in reverse order, when you’re done using it.