Living without Windows!by Jos Visser
Part 6: Virtual Network Computing
As you'll have figured out by now, I regularly act as instructor in courses about various UNIX, Internet and Java topics. In the week of the 30th November I was scheduled to teach a Netscape server course for Shell Services International at an education center in Utrecht. This particular course is called the "Netscape Integrated Management Solution" and it covers the Netscape Administration Server, the Netscape Directory Server, the Netscape Certificate Server and the Netscape Proxy Server. The education center that facilitated the training runs mostly PC-based courses, so virtually the only hardware they have are Wintel PC's. As a consequence I was to teach this course using the mentioned Netscape servers running under Windows NT Server. Although this obviously does not make me vaey happy, I would have to accept this as a fact of life.
I had never taught this course before, and although I have extensive experience with Netscape servers I thought it wise to thoroughly prepare for this course. I therefore kept the Friday before the course "empty" in my schedule so I could go over the course material and try out any lab exercises that it contains. We doe have machines running Windows NT Server and we maintain copies of most Netscape server install images somewhere on our file server. The only one we did not have in NT/Intel format was the Netscape Certificate Server. I downloaded it on Thurday evening through my cable modem at a surpisingly slow 6Kb per second.
Apart from going over the course material I would have to install and configure the various Netscape servers on our test Windows NT Server "reliant.osp.nl". Fortunately, most of the management and administration of Netscape server product is achieved through a browser interface. So even though the servers would be running under Windows NT, I would be able to perform administrative tasks such as configuring and (re)starting the servers from a browser running on my laptop (Jadzia). However, not everything can be done through the browser. Specific administrative tasks can be done only by editing Netscape server configuration files that are stored in the Netscape program directories (on the NT machine). Fortunately, Linux offers a way of remotely mounting a directory that is shared from an NT server. This is achieved through the 'smbmount" command which, although not perfect, allows at least some access from Linux to NT.
Conclusion: almost every administration task can be executed from Jadzia. There are only two things that need to be executed from the NT console: installing the server software and starting the Netscape Administration Server. I definitely did not want to walk over to Reliant's console every time one of these actions was necessary. It was then that I remembered Virtual Network Computing.
Some time ago an acquantaince of mine (Christian Vandendorpe, see www.zorglub.com) had drawn my attention to a joint Oracle and Olivetti research effort. One of their products is Virtual Network Computing (VNC). VNC is a technology that allows the remote takeover of a console (screen, keyboard and mouse) from a wide range of client workstation types. The VNC server runs a background service that accepts connection requests from VNC clients. Once the connection is authenticated and authorised (for now through a simple password scheme) the VNC server sends updates to the screen to the VNC client and accepts keyboard and mouse input from the VNC client. In this respect, VNC is a lot like popular packages such as "PC Anywhere" and "ReachOut Remote".
An interesting aspect about VNC is the wide range of clients and servers they have available. There are servers for Windows/NT and UNIX (X-Windows), and clients for UNIX, Win32, Macintosh and even Java! The VNC Java viewer allows you to make a connection to a VNC server from any Java compatible browser!
I had played with VNC once before. One of my co-workers at a large project had downloaded VNC for UNIX and compiled it on HP-UX 11.0. Using this and the VNC viewer for Win32 we were able to run X-Windows programs on our Windows NT workstation dekstops without acquiring a license for a commercial Win32 X-Server from our local IT department. This saved us bureaucracy, money and significant headaches. VNC for UNIX is a bit difficult to compile, but with some stamina can be done by even the moderately gifted (like me :-).
In the situation at hand I would require the VNC server for Windows NT and a viewer for Linux. The NT VNC server can be downloaded as binary executables, and installation of the package is a breeze. I remembered from Christian's demonstrations that every VNC server includes the Java viewer, and that the VNC server even contains a small HTTP server that can be used to download and run the Java viewer from a browser! For now, I would go for the Java viewer running in my Netscape Communicator 4.5 browser
After installing the VNC server (with the compulsary reboot of course) I started it and then fired up my browser. I did not immediately know which port of the Reliant to connect to, but after only a short perusal of the ORL web site I reckoned that the VNC web server should be at port 5800. I pointed my browser at "http://reliant.osp.nl:5800" and there it was! Although the Java viewer is not exceptionally fast (it is actually quite slow), it would suffice for the relatively minor use I would make of it. Through the viewer I was able to install the Netscape server software and stop/start it through the NT Services control panel. The viewer worked so well that I did not even bother to "smbmount" the NT file systems in order to get to the Netscape server configuration files: I just fired up a command prompt window on NT and used the Win32 version of "vim" to edit them.
One of the problems I still had was that the VNC server had to be restarted manually after every NT system reboot. Presumably this can be automated either through VNC's own capabilities of through the OSP utility "RC.EXE" (which allows some sort of "autoexec.bat" for Windows/NT systems). Something I might want to look into later,......