Re: Cu-Seeme and Appletalk?

Geoff Rehn (
Fri, 28 Apr 1995 08:48:44 +0800

Apologies for the length of this posting.
However, the question of CUSM over LocalTalk has arisen before.

I have written a paper recently for the ACEC95 conference (Australian
Computers in Education Conference) to be held here in Perth in July. The
title of the paper is 'Playing with TCP/IP: having fun on the Internet!"

I have a section in there on using LocalTalk and TCP/IP.
I include that section below.
No diagrams of course.

The Macintosh and TCP/IP over LocalTalk
It is surprisingly simple to get TCP/IP running over a simple network of
Macintoshs that are connected by LocalTalk. This network could be as small
as two Macs connected via a serial printer cable connected to the printer
ports or a larger Local Area Network (LAN) connected with say Farralon's
Phonenet cabling or the older AppleTalk/LocalTalk cabling. I recommend
using  proper LocalTalk cabling, although the printer cable will enable
some connectivity to take place.

To implement TCP/IP on the Mac, you will need a copy of MacTCP, version 1.1.1 or later. As I write, the current version is 2.0.6 and is distributed with System 7.5. However, it needs to be stated that MacTCP is not in the public domain.

Before proceeding with getting TCP/IP up and running, ensure that your LocalTalk network is working and that you can in fact use Apple File Sharing across the network and "log on" to Macs on the network.

To get TCP/IP working, you will need to do several things: 1. Add an identical "hosts" file to the System Folder on each Mac on the network. 2. Configure MacTCP on each machine to reflect that machine's IP number, as given in the hosts file.

The hosts file: As our network is not connected to the Internet, we will not have access to a DNS (Domain Name Server) to provide our machines with IP numbers and corresponding canonical names. It will be the function of the hosts file in each system folder to provide this service.

A sample hosts file follows, for a network with three Macintoshs (fig. 1). In this simple text file, a "proxy" or "dummy" IP number is allocated for each machine on the network, as well as a unique name for each. For each machine, the unique IP number will be placed in the MacTCP Control Panel.

; Hosts ; ; A comment starts with ";" or by a line beginning with a " ". ; ; This file is parsed by the MacTCP domain name resolver and the resource records ; are loaded into the resolver's cache. ; ; Each line in this file has the form: <domain-name> <rr> [<comment>] ; ; where ; ; <domain-name> is an absolute domain name (see rfc1034 pg 11). ; ; <rr> = [<ttl>] [<class>] <type> <rdata> ; ; OR ; ; <rr> = [<class>] [<ttl>] <type> <rdata> ; ; ; ; NOTES: ; ; $INCLUDE is not implemented ; class is always IN ; ttl is in seconds ; type can be A, CNAME or NS. ; ; -------- ; A A A

Fig. 1 Sample hosts file for Macintosh

Configuring MacTCP: Open up the MacTCP Control Panel. Click on "more". Select "Manual" addressing, as each machine will have its own "static" address. I am not sure that it is necessary to in fact enter any other details here but you may wish to emulate what I have (fig. 2). Click OK and then enter in the IP number for that machine. Your very simple TCP/IP network should now in fact be ready.

Fig. 2 Configuring MacTCP for LocalTalk

Testing the network. To test that your network will support the TCP/IP protocol suite, I strongly recommend MacTCP Watcher, written by that most prolific developer of network software for the Mac, Peter Lewis, from Western Australia.

When you first launch MacTCP Watcher, it will search the network and report that it is unable to find the Domain Name Server. My knowledge of developing TCP/IP networks is not strong enough for me to be able to say if it is possible to set up one of the Macs to act as a DNS. I had thought it possible but I haven't managed to get it to work. In any event, we will still be able to use TCP/IP and various network tools on our small internet network. To initialise MacTCP on the various machines, you may need to launch MacTCP Watcher on each.

You should be able to PING one of the machines in the network. Select "ping" and enter the IP number to test; MacTCP Watcher should report that the packets have been received; if you get a "ICMP Timeout" message, your network is not yet up and running (fig. 3)

Fig. 3 Using MacTCP Watcher

Ping is one of the basic tests of Internet connectivity; to find if a machine or host on the Internet is "up", you can ping it. Another basic test is TCP. You can test the TCP connectivity with MacTCP Watcher; let's hope your TCP tests pass so you can use your network.

As a sideline, you might like to open the "Show connections" window under File, and see the various connections take place. More on this later, as we use other services such as ftp and pop.

Using the network. Well, we have our prototype TCP/IP network running. What can we know do with it? Using various public domain and shareware tools, we can explore some of the Internet services and set up our own FTP , POP (Post Office Protocol) and even World Wide Web (HTTP - HyperText Transfer Protocol) server. We can "audioconference" across the network using Maven. With extra hardware, such as a digitising card and video camera, we can even desktop videoconference across the network, using CU-SeeMe from Cornell University.

FTP: FTP (File Transfer Protocol) requires access to a host that supports FTP. In the unix world, an ftp daemon runs in the background, allowing users who have an account on that unix host to login and transfer files to and from the host. More powerful still is the concept of anonymous FTP, whereby anyone is allowed to login to that host and download files.

To achieve the above in the Macintosh environment, we again appeal to Peter Lewis and will make use of his amazing ftpd, a daemon for the Macintosh that enables one to set up one's Mac as an FTP server, even allowing anonymous FTP to take place. Set up one of the Macs as a FTP server following the installation instructions given with ftpd.

To access the ftp server, which uses the server software ftpd, you will need appropriate ftp client software. Fetch! is highly venerated in the Macintosh Internet community and you will be able to logon to your ftp host using Fetch! and download and upload files, as in full Internet access (fig. 4).

Fig. 4 Using Fetch! to connect to a host

POP: It is possible to setup on your little LocalTalk TCP/IP network a POPmail server that will enable all nodes on the network to send and receive mail to each other. This is fun! The University of Minnesota (the developers of gopher) have two public domain packages that enable this: there is PopMail which is an email package and MailStop which enables you to set up one machine as a post office, to which you can send mail and from which others can retrieve mail. However, the above uses the POP 2 rather than the POP 3 protocol that is the standard on the Internet. Nevertheless, should such a network be setup, the users can have a gentle introduction to email with the ability to have an "intra office" mail system. I have not in any way explored the possibilities of gatewaying this POP2 mail to the Internet itself but I believe it is possible.

WWW and HTTP: Using MacHTTP, it is possible to setup a Mac as a World Wide Web server and one can do this on the above local area network. Thus, skills in maintaining and developing a WWW server can be gained prior to (or indeed concurrently with) having a server available on the Internet itself.

Cu-SeeMe desktop videoconferencing: Over a LocalTalk network, the user is not constrained by the need for low bandwidth usage such as that provided by dialup SLIP, PPP or ARA (AppleTalk Remote Access). It is possible to run CU-SeeMe over the network, even though CU-SeeMe uses the UDP protocol, rather than TCP/IP.

Using the rather revolutionary Connectix QuickCam camera that connects into one of the serial ports, you will be able to desktop videoconference for a little more than $200. Now, this is real fun, whereby real time video and audio is transmitted across the TCP/IP network and can be received by all nodes on the network. Using the newest version of CU-SeeMe, you will be able to do real time text based Talk as well as send "slides" across the network. You will also learn how to use CU-SeeMe to maximum benefit, as will be necessary if the occasion arises in the future for CU-SeeMe conferencing over dialup, whereby some skills in efficient use of bandwidth are essential (fig. 5).

Fig. 5 CU-SeeMe session over LocalTalk

Geoff Rehn
Academic Services Unit  Murdoch University
voice: 09 360 6308  fax: 09 310 4929