Using VNC

VNC stands for Virtual Network Computing. It is remote control software which allows you to view and interact with one computer (the "server") using a simple program (the "viewer") on another computer anywhere on the Internet. The two computers don't even have to be the same type, so for example you can use VNC to view an office Linux machine on your Windows PC at home.

VNC comes to us from http://www.realvnc.com. Documentation is available at that site. You might like to start by reading a basic introduction to VNC and how it can be used.

VNC is already installed on our Unix servers. Each Windows or Mac user must install the software on their machine.

Documentation is provided at the web sites and with the applications. Here's the short form of the instructions. Which you'll need will depend on what role you are using (server or viewer) and whether you are on Unix, Windows or a Macintosh.


What's Going On?
        or
What's a Server and Viewer and What Does It Have To Do With Me?

A VNC server is software running on a machine which copies a window (i.e. on a Mac or Windows, your entire screen) to a set of viewers somewhere on the net. A viewer is software running on the machine at your desk that displays the window of what is happening on the server. Every viewer, whether it is a Unix, Windows or Macintosh sees the same window -- on the server. If you are on a Windows machine and SSH to a Unix machine and start a server on the Unix machine, the server is not displaying a window from your Windows machine. In this example the server is only running Unix applications and application can only use Unix data.

Even if many people type in their viewer, ,the application they are really using is on the server. This means if the server is a Windows machine and you on a Macintosh select Word from the menu, you only have access to the files on that Windows machine. You should not expect to see your Macintosh files.

Most of the time, you will only use the VNC viewer. Exactly how this behaves depends on what machine you have at your desk. Viewers come in two modes:


Starting a Standard VNC Viewer

This is the easiest part of the process. The model is a telephone conference call. The conference is set up (a server is started on a Unix machine) and you simply connect to the server.

You must know the name and display number of the server as well as the password. The answer to the prompt will often be 'mars.sph.umich.edu:1' or 'compute11.sph.umich.edu:1'. Note the ':1' -- it's important. No other number will work.

There are ways to control these two behaviors. Read how to share nicely.

Windows Viewer connect to a Unix Server

  1. Start -> Programs -> RealVNC -> Run VNC Viewer
  2. In the prompt window, enter the hostname of the Server. If the server is running on mars, this would be mars.sph.umich.edu:1 (the :1 is important).
  3. In the second prompt window, enter the password for the server

Macintosh Viewer connect to a Unix Server

  1. Run 'VNC Viewer PPC'
  2. In the prompt window, enter the hostname or IP address of the Server. If the server is running on mars, this would be mars.sph.umich.edu:1 (the :1 is important).
  3. In the second prompt window, enter the password for the server

Unix Viewer connect to a Unix Server

  1. Enter vncviewer
  2. In the prompt window, enter the hostname of the Server. If the server is running on mars, this would be mars.sph.umich.edu:1 (the :1 is important).
  3. In the second prompt window, enter the password for the server

Starting a VNC Listener Viewer to a Windows/Macintosh Server

This part is very easy for the viewer -- just start VNC up in 'listen mode'. You, the viewer, are not prompted for anything, as the server must contact you. This means you must tell the person running the server what your hostname (or IP address is), a real inconvenience to set up if there is more than one viewer involved. Here is one way you can figure out the name of your Windows or Macintosh computer.

Windows Viewer connect to a Windows/Macintosh Server

  1. Start -> Programs -> RealVNC -> VNC Viewer -> Run Listening VNC Viewer
  2. The server must connect to you

Macintosh Viewer connect to a Windows/Macintosh Server

  1. Run 'VNC Viewer PPC'. Somehow you must tell the viewer this is 'listen' mode.
  2. The server must connect to you

Unix Viewer connect to a Windows/Macintosh Server

  1. Enter vncviewer -listen
  2. The server must connect to you

Starting a VNC Server - The Easy Way

We have a pre-defined VNC SERVER that we can all use on mars. The process for STARTING the server is simply:

This will automatically start vncserver on mars running under your uniqname and with your AFS tokens. Of course this means you must have an account on mars. When you enter Control-C to stop the brinupvnc.sh command, a second command is run on mars to terminate the VNC server. Only ONE server may run, so we must share. If this becomes a problem, I can set up another one of these.

Everyone else connects to this server as usual - use your VNC viewer to connect to 'mars.sph.umich.edu:1'. As usual, the person who started the server will tell the viewers the password.

Initially you'll see only one xterm window. Use the left mouse to launch applications - including the current set of Office-like apps like OpenOffice, Kword etc. There are a variety of possibly useful applications which can be changed with little effort.

I've tailored this for what a Windows user will likely prefer:


Sharing Nicely

Viewer Icon

There might be a valid reason why VNC defaults to non-share mode (i.e. kick everyone off because you connect), but for our environment it is just plain dumb. Unfortunately, we cannot control this at installation time and even if you set 'share' in the options window, it is not remembered. This is very frustrating.

Not to worry, we have a work around. The key is to modify your Windows icon for the viewer and slightly change how the program is invoked. Sorry, Macintosh users, we have no documentation about how you might do this. The one-time steps are:

Viewer Icon Properties
  1. Right click on your desktop VNC Viewer (see icon to the left) and select 'Properties', then click on the Shortcut tab.

  2. To the end of the field labelled 'Target:' (after the ending quote, .exe"), you can add some useful options to the program:

  3. After adding fields to Target:, then select OK.

At this point your icon is set up to automatically bring up the VNC viewer in shared mode (you DID add this, didn't you?) and possibly viewonly mode (if you added this). The world rejoices.



How to Find Your Hostname

In theory you can ask your Windows or Macintosh, but this is often far harder than it should be. Many times your IP address changes each time you boot up your machine, so it is pretty common for non-Unix users to not know the name of their machine. Here's a quick and dirty hack to figure out your machine name: