NetXpress

Internet Access BBS Door


Administrator's Manual


Copyright © 1996 Merlin Systems Inc. All rights reserved. This software product and this manual are copyrighted and all rights are reserved by Merlin Systems Inc. No part of the contents of this manual may be reproduced or transmitted in any form or by any means without the written permission of the publisher.

Merlin Systems Inc. does not assume any liability arising out of the application or use of any products described herein. Merlin Systems Inc. further reserves the right to make changes in any products described herein without notice. This document is subject to change without notice.

NetXpress Internet Access BBS Door, NetXpress Server and NetXpress Mail & News Gateway are copyrighted by Merlin Systems Inc.

All other mentioned products are copyrighted by their respective authors.

Merlin Systems Inc.
P.O. Box 3043, Station C
Ottawa, Ontario
K1Y 4J3 Canada

Fax/BBS: (613) 741-7583

info@merlinsys.com
support@merlinsys.com
sales@merlinsys.com
http://www.merlinsys.com

FidoNet: 1:163/509


Contents


Preface


WELCOME TO THE WORLD OF THE INTERNET

The future is upon us. That mythical information superhighway is now in clear reach.

Many estimates are floating around about the Internet's population and its increase in size. It is considered safe to say that it currently has around 50 million people and that it is doubling every couple of years. In fact lately, the population acceleration has frightened and overwhelmed many Internet old timers. All figures denote that the Internet has obtained 'critical mass' to be present for a very long time to come.

No longer the realm of universities and big business, the Internet has begun to bring cyberspace to the masses.

The Internet with its thousands of protocols, can be managed from well conceived software that takes care of all of the unruly elements of Internet connectivity. There will always be a learning curve due to terminology, but we hope that our software will provide one of the easiest in-roads on to the Internet.


CONVENTIONS

In this book, the following conventions are used:


TECHNICAL SUPPORT

There are a number of places to receive technical support.

Fax: 1-613-741-7583

BBS: 1-613-741-7583

E-mail: support@merlinsys.com

Web: http://www.merlinsys.com

FidoNet: Support 1:163/509

Installation


INSTALLATION

If you received a diskette, insert the diskette in one of your disk drives. Then enter INSTALL and press the <Enter> key.

Example: If you placed the disk in drive A:, you would type:

a:
INSTALL


  NetXpress Door Directory: C:\NETXBBS 

F10 - Ok Esc - Cancel

The NetXpress Door Directory is where you would like to install the software.

Press the F10 key to continue.

If you received a compressed file containing the software programs, simply uncompress the file(s) into an empty directory.

Example:

md \netxbbs
cd \netxbbs
pkunzip NETXBBS

After the INSTALL program finishes, you must go into the NXCFG program and alter the default settings, especially your network addresses.

Configuration


SYNTAX

The syntax for the Setup program is as follows:

NXCFG [configfile]

Where [configfile] is the location and name of the configuration file.

If you omit the [configfile] parameter, NXCFG will try to open the configuration file NXBBS.CFG in the current directory.


USING TEXT WINDOWS AND YOUR MOUSE

The NXCFG program uses a text window approach to displaying information for you. The top window is always the current one and only those fields within it are active.

NXCFG also allows you to use a mouse or a pointing device to perform functions. All mouse-assessable functions can also be accessed through a keyboard command. To access a certain field or command by using the mouse, simply move the mouse cursor to the area occupied by the field or command and click on the left mouse button. Clicking on the right mouse button will usually get on-line help.


GENERAL CONFIGURATION


   System Directory  d:\dev\netsrv\bbs
   System Help HTML  file:///help.htm
     Work Directory  C:\TEMP

          Date Type  MMDDYYYY 
     Date Delimiter  /
F1 - Help Esc - Cancel F10 - Ok

System Directory:
The directory that includes the executable program and the configuration file.

System Help HTML:
This is an URL of general help available at the menu.

Work Directory:
A tempoary directory that is used to store temporary files. This may be a RAM disk or a local drive. All files written to this directory will be deleted by NXBBS.

Date Type:
The format of the displayed date. This is only used in the FTP client and in IRC for the log file.

You have four options:

Date Delimiter:
The character that is displayed in-between the date fields.

TCP/IP

This window allows you to configure your TCP/IP connection parameters. These values are used with the Packet Driver software to connect the NetXpress BBS Door to the Internet.

Most, if not all, of these values will come from your service provider

This section does not provide any way to configure your Packet Driver. You must have it loaded and configured before running the NetXpress BBS Client software. The Packet Driver software may handle either Ethernet or SLIP classes. Please see the Appendix section on Packet Drivers for more information.

For dial-up access, you will need to either have your modem connect and login in to your service provider before you load in your SLIP/PPP packet driver.


 BOOTP
     Enable
     Server
    Timeout

  Gateways
    204.191.36.1



  Addresses
           IP  204.191.36.201
     Net Mask  255.255.255.0
    Host Name  node1
  Domain Name  merlinsys.com
  
  Name Servers
    204.191.36.5
    204.191.36.4



  Transmission Parameters
      Max. Segment Size  512          Name Lookup Timeout  30
    TCP Connect Timeout  60            Inactivity Timeout  
F1 - Help Slip Ethernet Esc - Cancel F10 - Ok

BOOTP Enable:
If enabled, NetXpress will use the BOOTP protocol and connect up to the specified server to query the information in the two other windows. This means that your IP address is a temporary address, and that you may not give it out since it will always change.

If disabled, then you must fill out the rest of the information in the next two windows, but you do not need to fill out any of the information in the BOOTP window.

BOOTP Server:
The IP address of a BOOTP server to contact upon startup to query your address information. You must not place a domain address in this field.

BOOTP Timeout:
The timeout in seconds for a connection to the BOOTP server to fail.

IP Address:
Your IP address.

Net Mask:
If you have more than one IP address for your network, then you must set the network mask for your local network.

If not (which is usually the case), then just leave this entry blank or enter the default value of '255.255.254.0'.

This value may never be '255.255.255.255'.

Host Name:
Some applications will wish to know your PC's name, a short textual name. This will be the machine's name and not your domain name. This name may contain only numeric digits and letters, and should be less than 9 characters.

Domain Name:
Your system's domain address. The domain and hostnames will be concatenated into one domain address for this machine.

Example:

node1.merlinsys.com

Where:

node1 is the hostname
merlinsys.com is the domain name

Gateway Address:
The address of a local gateway. This value is always supplied by your network service provider and is usually the IP address of the machine that NetXpress will connect up to.

Name Servers:
The IP addresses of name servers (in order of importance). These name server will resolve domain addresses into IP addresses.

Maximum Segment Size:
This is the maximum segment size that NetXpress BBS Door can receive over the packet driver. The default value is 1400 for Ethernet.

The maximum value should not exceed 4096.

TCP Connect Timeout:
This allows you to specify a specific amount of seconds that the NetXpress BBS Door will attempt to connect to a remote computer, wait for data from a remote computer, and wait to accomplish other miscellaneous networking tasks.

The default is 30 seconds, but may be set longer if you have an especially slow connection.

Name Lookup Timeout:
The time needed to resolve a domain name into an IP address. Some name servers are very slow (very busy) and thus this value needs to be increased.

Inactivity Timeout:
The number of seconds of inactivity with a session before it timesout. This value usually will be set to 0 or left blank.


WORLD-WIDE-WEB


      Home Page  file:///homepage.htm 
 Local Base Dir  c:\nxbbs  
      Mail HTML  mail.htm 
  New User HTML  newuser.htm 
F1 - Help Esc - Cancel F10 - Ok

Home Page:
The default HTML file used as the home page. This file is displayed whenever the user does not specify an URL in the menu or whenever the menu is disabled.

Local Base Directory:
The directory that all WWW local file access will be relative from.

Mail HTML:
The HTML file used to gather information for a message. If empty, the message function will be disabled.

New User HTML:
The HTML file displayed to first-time users of the NetXpress BBS Client.


GOPHER , IRC & WHOIS

All three functions need the two pieces of information, the default server and the default port.

Default Server:
The address of the default server. This server is used whenever the user does not specify a server to contact.

Defaults:

Gopher: boombox.micro.umn.edu

IRC: irc.bu.edu

WhoIs: rs.internic.net

You should never have to change the WhoIs default Server, but you should change the IRC server to one that is closer to you. For more information on IRC servers, look in the I.R.C. FAQ.

Default Port:
The port of the default server. This server is used whenever the user does not specify a port. You should never have to change these values.

Defaults:

Gopher: 70
IRC: 6667
WhoIs: 43


TELNET


  Terminal Emulation  vt100 
F1 - Help Esc - Cancel F10 - Help

Terminal Emulation:
The default terminal emulation used in Telnet. This should always be vt100, since ANSI is not usually recognized by Telnet servers.


Mail Configuration


  Default SMTP Host  mail.uunet.net
  Address Delimeter  .
     UT Time Offset  -300
  Default POP3 Host  mail.uunet.net
     UUCP Spool Dir  \spool
        News Server  news.uunet.net
F1 - Help Esc - Cancel F10 - Ok

Default SMTP Host:
The address of a default SMTP mail host. If blank, then the mail function will be disabled.

Example:
mail.magmacom.com

Address Delimiter:
The character that replaces the space within user's name when their names get converted into an Internet address. This is only used in the FTP client and in IRC for the log file.

UT Time Offset:
The offset in minutes from Universal Time/Greenwich Meadian Time.

Example:

Default POP3 Host:
This is the address of a POP3 server that all user's who have access to the mailbox functions will get as their default POP3 server. The user may wish to change their own value if they have an account on another POP3 server.

UUCP Spool Directory:
The location of your UUCP Spool directory. NXBBS will look inside this directory and its subdirectories for incoming UUCP messages addressed to the user.

If you do not use UUCP, then leave this blank.

News Server:
The NNTP server to contact when requesting news.


DIAL-UP DOOR CONFIGURATION

Internal BOOTP Server
When enabled, NXDIP will process all BOOTP requests and reply with its own IP address.

You might wish to disable this feature if you have a BOOTP server on your network and wish to use it instead.

Static IP Addresses:
By matching user names to specific IP addresses, you can create static IP addresses for particular BBS accounts.


SECURITY LEVELS

The security levels settings control whether a user has access to certain functions. If the users has a greater or equal security level than required, then they are allowed to perform that function.

If they do not have sufficient security access, then they will be displayed the HTML in the 'No Security HTML' field. If this field is empty, then a 'Not enough security' message is displayed.

Internet Access BBS Door


SYNTAX

nxbbs [/G <configfile>] [/I <ip.ad.dre.ss>] [/B <drop-file>] [/Q <comport irq>] [/A <comport address>] [/C <comport>] [/U <baud>] [/ForceFOSSIL] [/H] [/?] [menu commands]

/G <configuration_file>
Path and a filename to the configuration file to be used. If not specified, then NXBBS.CFG in the current directory will be used.

/I <ip.add.re.ss>
The IP address to use instead of the one in the configuration file. The IP address may also be defined in an environmental variable named IP. The command line switch takes precedence over the environmental variable.

/B <drop-file>
Supported drop-files are:

The <drop-file> can also be 'LOCAL' followed, optionally, by a colon and a user name. Example: /B "LOCAL:Joe Smith"

You may state more than one drop-file by placing multiple /B commands

Menu Commands
Anything you can type in at the main menu can be included here. Commands can be partial or they can contain all needed information.


FUNCTIONS

The following is a list and descriptions of all the function in the NetXpress BBS Client:

World-Wide-Web
The World-Wide-Web protocols allows for the exchange of information in a extremely flexible and unstructured manner. The WWW server is just a file request server, the WWW client has most of the intelligence and makes decisions about how to obtain certain information.

The important difference between the older Gopher protocol and the Web protocols are that the Web display formats are unstructured and can look like anything, while Gopher has a rigid menu structure. Also Web browsers possess knowledge of many more methods of accessing data than gopher clients do. The number of access methods available to Web browsers is bound to increase in the future.

File Transfer Protocol
The File Transfer Protocol (FTP) allows users to peruse the file system of another system on the Internet. One important fact concerning FTP, is that it tries to look like a file system and thus contains no file descriptions, although there are methods of displaying descriptive text to the user.

Telnet
Telnet allows people on the Internet to remotely login to another computers on the Internet. It is like using a terminal program with a modem over phone lines. Except that all communication is handled through the TCP/IP protocol over the Internet.

Gopher
The Internet Gopher protocol offers users the ability to browse through the Internet in a structured menued environment looking at user-friendly menu descriptions instead of service names, hosts and ports. The beauty of Gopher is that a menu entry may point anywhere on the Internet, and thus hoping from one Gopher to another is virtually seamless to the user. It also allows users to retrieve documents without the need to do it themselves interactively.

Internet Relay Chat
IRC stands for "Internet Relay Chat". It was originally written by Jarkko Oikarinen (jto@tolsun.oulu.fi) in 1988. Since starting in Finland, it has been used in over 60 countries around the world. IRC is a multi-user chat system, where people convene on channels (a virtual place, usually with a topic of conversation) to talk in groups, or privately.

WhoIs
WhoIs is used to look up names of users and corporations in a main database. The default action is to do a very broad search, looking for matches to your target in many fields: handle, name, nicknames, hostname, net address, etc., and finding all record types. WhoIs then shows the results in one of two ways: as a full, detailed display for a single match (with possible subdisplay), or as one- or two-line summaries for multiple matches.

Finger
Finger is a common Unix facility to examine the user login information on a system. Information retrieved can either be a text file or information about that user on that system.

Ping
Ping checks is valuable to check to see if a system is running and how long messages take to reach it and come back to your system.

Simple Mail Transfer Protocol
SMTP stands for Simple Mail Transfer Protocol and is defined in RFC821 and has been updated in other various RFCs. It is the standard way of transferring private mail between hosts directly connected to the Internet. The SMTP function will actually send the message right away on to the Internet via the SMTP Host defined below. The message will not be stored anywhere on the local system or on your BBS. The SMTP function cannot access incoming messages, you will need to use an Internet gateway for your BBS.

Remote Login
Remote Login is very similar to Telnet, except that it automatically logs in the user.

ph
ph is also known as qi and CSO. It is a phonebook protocol that allows searches to be made on various fields. Gopher uses CSO internally, thus we have made it available as a separate function. CSO will probably be used the least out of all of the functions.

Remote Execution (Rexec)
Rexec is used to execute programs on another computer. The software must reside on that computer and your login ID must have rights to it.

Raw Telnet
This is just Telnet without any Telnet control codes. This is a straight TCP/IP connection.

Bookmarks
A list of the user's permanent bookmarks of favorite places.

Session History
A list of the user's session history.


INTERNAL URLS

You can include special internal URLs (Universal Resource Locators) in your HTML documents that allow you to retrieve input from the user and then perform a certain function with that input. The following is a list of available URL codes and their associated FORM names:

internal:///telnet
ADDRESS PORT USER PASSWORD TERMINAL
Terminal defaults to ANSI. The User and Password values are only displayed to the user and are not actually used in the Telnet routines.

internal:///rawtcp
ADDRESS PORT USER PASSWORD
The User and Password values are only displayed to the user and are not actually used in the Raw Telnet routines.

internal:///rlogin
ADDRESS PORT USER PASSWORD TERMINAL
Terminal defaults to ANSI.

internal:///rexec
ADDRESS PORT USER PASSWORD COMMAND

internal:///finger
ADDRESS PORT USER
Port defaults to 79.

internal:///whois
ADDRESS PORT USER
Port defaults to 43. Address defaults to rs.internic.net

internal:///ping
ADDRESS NUMBER
Number defaults to 1.

internal:///ftp
ADDRESS USER PASSWORD PORT PATH
User defaults to anonymous and Password defaults to the user's email address. Port defaults to 21.

internal:///cso
ADDRESS PORT
Port defaults to 105.

internal:///gopher
ADDRESS PORT PATH TYPE
Address and Port default to the values from the configuration file. Type defaults to '1' (menu). Path defaults to "" (nothing).

internal:///http
URL

internal:///irc
USER PASSWORD ADDRESS PORT PATH
Address and Port default to the defaults from the configuration file. Password is rarely used. The PATH variable states the channel to automatically join.

internal:///smtp_send
USER SUBJECT TEXT NEWSGROUP
If the USER variable is not empty, then the message will be sent to the default SMTP server for delivery. If the NEWSGROUP variable is not empty, then the message will be delivered to the default NNTP server for posting.

internal:///config
IRCNAME POP3SERVER POP3USERNAME POP3PASSWORD
This URL actually causes the information sent back to be saved. Every time the user goes into IRC, their IRC userid is saved.

internal:///bookmarks
Brings up the user' bookmarks.

internal:///history
Brings up the user's current session visited documents/places.

internal:///help
Brings up the Help HTML.

internal:///inbox
Brings up the user's inbox.

internal:///outboxbox
Brings up the user's outbox.

internal:///pop3_get
Retrieves the user's mail from their POP3 server.

internal:///mailbox
Brings up the Mail main HTML document. From this document the user can select to fetch new mail or compose a new message.

internal:///mail
Brings up the 'Message Editor' HTML document.

internal:///uucp_get
Fetches new mail stored on your UUCP spool directory.


FORM VARIABLES

Variables are only used in the "VALUE" parameter of a INPUT FORM object.

Example:

<INPUT NAME="test" VALUE="#destination#">

#destination#
Represents the message destination

#subject#
The current message's subject

#msgtext#
The current message's body text

#gopher_server#
Default gopher server

#gopher_port#
Default gopher port

#whois_server#
Default whois server

#whois_port#
Default whois port

#irc_server#
Default IRC server

#irc_port#
Default IRC port

#homepage#
Default Web home page

#sendmail_html#
Send a Message HTML

#help_html#
General Help HTML

#user_irc_name#
User's IRC name

#user_address#
User's Internet address

#host_address#
This host's domain name

#new_user_html#
New user's HTML

#mailbox_html#
The HTML document that brings up the Mail menu.

#pop3_username#
The user's POP3 name

#pop3password#
The user's POP3 password

#pop3server#
The user's POP3 server

#newsgroup#
The current message's newsgroup field

Dial-up IP Door


SYNTAX

nxdip <configuration_file> [/B <drop-file>] [/I <ip_address>] [/C <comport>] [/Q <comport irq>] [/A <comport address>] [/P] [/T <minutes>] [/ForceFOSSIL] [@PPP]

<configuration_file>
Path and a filename to the configuration file to be used. If not specified, then NXBBS.CFG in the current directory will be used.

/I <ip.add.re.ss>
The IP address to use instead of the one in the configuration file. The IP address may also be defined in an environmental variable named IP. The command line switch takes precedence over the environmental variable.

Example:

SET IP=142.55.23.123

/B <drop-file>
Supported drop-files are:

/P
Doesn't hangup the modem when the door exits

/T <minutes>
Sets the maximum number of minutes that the user can be online

/F
Forces the use of non-standard FOSSIL drivers

@PPP
Sets NXDIP to use PPP instead of SLIP/CSLIP


OPERATION

This program is called as a door from the BBS and handles all SLIP, Compressed SLIP and PPP encoding and decoding of the communications link. It bridges the gap between the IP packets coming over the modem's lines to the packet driver.

The user must have configured their IP address correctly on their end and it must be an address that is 'owned' by you. They can optionally use BOOTP to request their IP address since the SLIP door has an internal BOOTP server that will respond to their BOOTP request. If they use PPP, the PPP connection will set their IP Address automatically.

Compressed IP Headers in SLIP are automatically switched on if any incoming packets are compressed. In PPP, they are negotiated at the begining.

The software terminates when:

A packet driver must be load prior to the execution of NXDIP.


USER CONFIGURATION

The user must have configured their IP address correctly on their end. Their IP address must be one that is 'owned' by you. If they set their IP address to 0.0.0.0, then the internal BOOTP server in NXDIP will take care of their IP Address request and return this node's IP Address. PPP automatically sets the user's IP address at the begining negotiations.

The user's netmask may be anything at all since they are using a dial-up connection. Usually , they can just set it to '255.255.255.0.

Appendix


HTML

HyperText Markup Language is the standard document on the Web. It is out of this manual's scope to detail it's syntax. You may use any of the available HTML editors to create local web pages. Please note, that your user's will only see a text representation of the document, so inline images and image mappings will not be relevant.


ERROR MESSAGES

Could not allocate socket!
Not enough memory was available to allocate the Internet socket (4k).

No packet driver found!
No packet driver software was found in the interrupt range of 0x60-0x80.

NXBBS.KEY not found!
Your serialized KEY file could not be found in the system directory.

NXBBS.KEY is corrupt!
Your serialized KEY file is damaged and should be replaced by contacting the source of purchase.


DISPLAY FILES FORMAT

Both the WELCOME and the MENU display files use the same PCBoard color macro format. This allows one file to be used by users with ANSI and users without ANSI. The color macros are formatted as:

@Xbf

Where b is the background color and f is the foreground color. Both f and b are hex digits that represent the color required.

Hex Digit

Foreground Color

Background Color

0

Black

Black

1

Blue

Blue

2

Green

Green

3

Cyan

Cyan

4

Red

Red

5

Magenta

Magenta

6

Brown

Brown

7

Light Gray

Light Gray

8

Dark Gray

Blinking Black

9

Light Blue

Blinking Blue

A

Light Green

Blinking Green

B

Light Cyan

Blinking Cyan

C

Light Red

Blinking Red

D

Light Magenta

Blinking Magenta

E

Yellow

Blinking Brown

F

White

Blinking Light Gray

Other than the color macros, you an also use @CLS@ to erase the screen, and @MORE@ to pause and display 'Press any key to continue'.

You may also use two distinct display files; one for users with ANSI and one for users without ANSI. A display file with a file extension of .ANS will be used by users with ANSI. A display file with a file extension of .ASC will be used by users without ANSI.


ACKNOWLEDGMENTS

Special thanks to all of our beta testers for their time. We would also like to offer our gratitude to the following people:

Ed Bercovitz, Michael Boettger, Brad Dameron, Peter Ellis, Erick Engelke, Ian Gerada, Anna Kalasznikow and Tony Rocha.