Banyan VINES resurrection

From DisNCord Community Wiki
Jump to navigation Jump to search

Banyan VINES was a network operating system developed by Banyan Systems for computers running on top of AT&T's UNIX System V. It was used mainly in large corporate networks, with support for wide-area networking, using static and transient dial-up links. Some networks had hundreds of servers, if not more.

The underlying protocol was VINES IP, a protocol similar to Xerox's XNS. TCP/IP was also supported for client workstations in later versions.

Most servers were under support contracts and the software allowed for a fully-remote-managed network. They used this a lot since the underlying UNIX is restricted from system administrators. Banyan could access it to help you, if you paid them for every hour on a support call. The software was protected with a parallel port dongle known as a server key - these were used to ensure that each server had a unique serial number, as the serial number was used to generate each server's VINES IP address. The server key also contained a list of the additional software options installed on the server - options could be copied to the key from a separate option key. Most major versions of VINES also required an option key containing the new version's option bit. Sever keys had limited lifetimes, and it's unlikely that any have survived are still readable.

At the heart of VINES was StreetTalk, a directory service. All StreetTalk objects possessed a three part StreetTalk name, in the format Item@Group@Organisations. There were essentially four different classes of StreetTalk objects - Users, Services, Lists and Nicknames. Lists contained one or more StreetTalk names, and could include other Lists. Nicknames were aliases, and could be in a different group or organisation to the target item.

Each group had a list entitled AdminList@Group@Org which contained the administrators for that group. There was also a special organisation named Servers - each server would have it's own group named ServerName@Servers, with AdminList@Servername@Servers containing the adminstrators of that server.

Early versions of VINES were released only for Banyan's own 680x0 based server platforms, the BNS (Banyan Network Server) and the DTS (Desktop Server). There were later ports for PC hardware, and Banyan also produced an Intel based server named the CNS.

Installing Server

Installation media has been recovered for VINES 5.00, 5.54, 7.00 and 8.50. VINES 5.00 and 5.54 came as a stack of floppies, whilst 7.00 and 8.50 consisted of five floppies and a CD-ROM ISO.

Any version can be installed without the need for a server key. CD based versions require a SCSI CD-ROM drive. There were drivers released for Compaq and HP based ATAPI drives, but these seem to be tied to specific server hardware. IDE hard drives are supported, but need to be no more than 504MB in capacity.

The system can be installed under VirtualBox, but requires version 7.0.0, currently in beta. If installing a CD version you need to enable a BusLogic adapter, and configure it to use the I/O address of 330h for it's ISA emulation address. The default NIC also needs changing from PC net to one of the legacy models such as the NE2000 or WD8003E. (More to follow once VirtualBox 7.0.0 ships).

For all versions boot up of the Install 1 floppy and follow the prompts. The system may check for an server key or option key during installation, but will still proceed. (VINES 6.00 requires a dongle - the CD-ROM is currently lost).

Once installed you will need to simulate the server key by performing the following steps, as follows:

The server will start booting and perform at disk check. Once "Done with disk checking" is displayed, press CTRL-C and type in the root password (passwords for 5.00 and 5.54 are listed below), and gain a root prompt.

Firstly you need to set a serial number. Banyan's serial numbers for servers were seven decimal digits long, with the middle digit either a 0 or 1. Ensure that the serial number is unique across servers

echo 2130145 > /disk1/banyan/comm/serial

Next the server key reader binary, /disk1/banyan/install/mwidget needs to be replaced with a shell script. Make a backup copy of the original. The shell script should contain the following - the file .skini is checked by the server service during bootup. Don't forget to make the script executable

#!/bin/sh

echo 0 > /disk1/banyan/install/.skini

exit 0

Finally, create the file /disk1/banyan/ss/syopts.db, which contains a list of installed options. The text to the right of the colon can be omitted - it's shown here to denote what each option represents. Not all options are needed, but some are mandatory. This list is incomplete as it removes additional variants of some of the SNA services, some Banyan internal options which require additional software, and the option to convert the server to an ENS server. A full list can be obtained by running 'strings' on the original mwidget binary.

ss:Server Operating System
bfs:File Service
bps:Print Service
st:StreetTalk
sem:Semaphore Service
nb:Netbios Emulation Service
VS:VINES Authenticator & Network Guardian
stda:StreetTalk Directory Assistance Service
ripl:Remote IPL service
AFP:AppleTalk Filing Protocol Service
ATA:AppleTalk Agent Service
VPA:VINES Proxy Agent
ONM:Network Management (Old)
SNM:Network Management (New)
VCS:Configuration Service
evs:VINES Event Management Service
WAN:WAN Service
bms:Intelligent Messaging Service (PA100)
sna1:3270/SNA Service - 32 lu's (SNA100)
vt:Asynch Terminal Emulation (HA100)
Kermit:Kermit File Transfer for HA100 (HA102)
NM:Remote Network Management (NM130)
bsc:3270/BSC emulation-32 devices (BSC100)
x.25:X.25 Communications (PDN100)
hdlc:Server-to-Server WAN - HDLC (IM101)
dialin:Asynchronous Dialin Support (NA100)
s_s_lan:Server-to-Server LAN (IM100)
lu62:SNA LU6.2/PU2.1 Service
pcprint:Network PC-based Printing (PCP100) 
tcpip_route:TCP/IP Routing (TCP100)
s_s_tcpip:TCP/IP Server-to-Server (TCP200)
fsunix:VINES Application Toolkit (VDT100)
v386:Intel 80386 platform
rev3.0:Revision 3.00 of VINES
x.29:X.29 Virtual Terminal Option (HA201)
smtp:VINES SMTP mail gateway
mac_mail:Macintosh Mail Gateway
bridge:IBM SLR Token Ring Bridge
asna0:Advanced 3270 Service - 32 lu's (SNA200)
gsna0:Graphics 3270 Service - 32 lu's (SNA300)
v486:Intel 80486 platform
edd:Enterprise Data Distribution Service (edd100)
va-1:VINES Assistant (VA100)
rev5.0:Revision 5.00 of VINES
rev4.0:Revision 4.00 of VINES
mps1:Multi-processor 4.00 VINES (MPS100)
x.29dialin:X.29 Dial-in Option (NA200)
sna6:Server-to-Server WAN - SNA (SNA600)
msformac:Intelligent Messaging Service for Macintosh
atps:AppleTalk Protocol Support
s_s_isdnb:ISDN BRI Server-to-Server (000047)
ds1_cept:T1/E1 Server-to-Server (000054)
ebr:Enterprise Backup and Restore
ebs:Enterprise Backup and Restore Service
rev6.0:Revision 6.00 of VINES
hcs:VINES History Collector Service (snmp100)
snmp:VINES SNMP Master Agent (snmp100)
eddsat:Enterprise Data Distribution Satellite (edd101)
eddupdat:Enterprise Data Distribution Update Service
ebrjbs:Enterprise Backup and Restore Jukebox Small (ebr102)
ebrjbm:Enterprise Backup and Restore Jukebox Medium (ebr103)
ebrjbl:Enterprise Backup and Restore Jukebox Large (ebr104)
rev7.0:Revision 7.00 of VINES

Exit the shell and the server should start to come up again. Say no to the two questions on restoring from a backup on installing additional options. You will now be presented with a lists of supported network cards. Under VINES 7.00 and 8.50 it's possible to instal additional network drivers from a floppy, but not until after the server is up and running.

The server will prompt for a server name. It will then try to look on the network for another server, and to validate that the server name is unique. If another server is discovered on the network, the account details of an administrator of that server can be used to add this server to StreetTalk. Otherwise set the server up as the first server on the network.

Eventually after a delay of some minutes the server monitor should come up. If it doesn't there's probably an error in sysopts.db.

Installing Clients

Clients exited for MS-DOS, Windows 95, Windows 98, Windows NT 3.51/4.0, OS/2 1.x and 2.x and above, and Windows 2000.

The DOS client has been uploaded to archive.org as three self-extracting .EXE files. DOSMST.EXE contains the client files common to all NICs, whilst DOSDSK1.EXE and DOSDSK2.EXE contain the driver files for every supported NIC, together with the NDIS drivers which should work with any NIC with a DOS NDIS driver. Copy the common files and selected driver files into a directory. Then run PCCONFIG to configure the client settings. Once configured running BAN.EXE should start the client and connect to a server. If the server is running a different version of VINES to that of the client it should invoke the NEWREV process to upgrade or downgrade the client files.

From VINES 5.00 onwards installation of the OS/2 client programs on the server was optional - there needed to be such a server on the network for an OS/2 client to connect. OS/2 2.x support was added under VINES 5.50, but was available as an optional patch for earlier VINES revisions. Unfortunately the OS/2 client itself is lost at the moment.

Windows 95 (and later 98). A server on the network needs to be patched with the Windows 95 client files. There was also a separate client for Windows 98 released in Banyan's final days - as of yet it hasn't been recovered.

Windows NT 3.51/4.00. Various clients were issued - none require any additional server patches.

Windows 2000. A client was issued in late 1999, after Banyan had declared that they were pulling out of the market. As of yet it hasn't been recovered.

There was also an extension for Mac System 7.0 and above that added some extra functionality, although a Mac could login to VINES without it. There was also client for Banyan's E-mail system.

There were various third-party Windows clients for Banyan's E-mail system. In addition Banyan acquired BeyondMail and offered versions 2 and 3 of that to customers.

Security

root passwords for a few version leaked:

Version Password Notes
8.XX <unkown>
7.XX 7thHeaven not sure of case
6.XX disisdaONE!
5.5X YamIhere
5.00 Rain4Est
4.11 upyourREV
4.10 StorminNormin Norman Schwartskorf - Gulf War
4.00 vivelaVINES
3.10 logrhythm spelled incorrectly on purpose
3.01 nobozos
3.00 pandorasbox
3.00 Beta makethenumbers
2.10 havingfun
1.31 springfever

Other known passwords:

  • Low Level format: goforit
  • Previous Low Level format: format

SDK

Banyan had an SDK, known as the VINES Application Toolkiet, for developing server and PC based applications. VINES 6.00 introduced the ability to write device drivers, and also switched to using GCC. Currently no versions of the SDK have been recovered.

What's new per version

The early history of VINES is lost, with very little surviving. Here's a brief, but incomplete, history of changes.

VINES 4.00 introduced major changes to StreetTalk - changes to the way it updated meant that the the special group Servers@Servers was no longer required. 4.00 was also the last version to be released for 680x0 and 286 based servers.

VINES 4.10 added support for Windows 3.0 and OS/2 1.x clients.

VINES 4.11 was a new cut of 4.10 to add support for additional server based hardware.

VINES 5.00 added support for Apple Macs and file access rights on a per file basis. This was a fork of 4.10 so didn't support the new server hardware of 4.11.

VINES 5.50 added 4.11's hardware support to the other features of 5.00.

VINES 5.52, 5.53 and 5.54 added additional server hardware support.

VINES 6.00 added loadable device drivers and root access. Loadable drivers for storage devices could be loaded into the kernel at installation time.

VINES 6.20, 6.30 and 6.40 were maintenance releases of 6.00.

VINES 7.00 added support for larger filesystems (previously they were limited to 2GB), long filename support, and StreetTalk shadowing. The root filesystem was also enlarged. VINES 7.00 also introduced paper-based server keys and option codes, although dongles could still be used.

VINES 7.10 was a maintenance release for 7.00.

VINES 8.00 added very little other than support for MPS 1.4. SMP had been supported since at least VINES 4.00 on certified hardware, but needed special media. VINES 8.00 was unique in that it didn't have its own option bit, and could be installed on any VINES 7.00 server.

VINES 8.50 was the Y2K compliant version of 8.00.

VINES 8.60 was the final release of VINES, containing all of the maintenance patches issued for VINES 8.60.

There was also a product named ENS for Netware that allowed Netware servers to use StreetTalk. Initially these used their own special ENS servers, which were cut down VINES servers. ENS 1.00 was effectively VINES 5.20, and ENS 1.1 was VINES 5.30. Later ENS could use a standard VINES Server instead.

There were also versions of VINES released for some versions of commercial UNIX - SCO Unix, Solaris, HP-UX and AIX. Some of these were issued under ENS branding.

Finally there was a port of VINES for Windows NT entitled StreetTalk for NT.