HP OpenVMS Systems Documentation
Compaq TCP/IP Services for OpenVMS
A serial connection is made between two systems using modems and telephone lines or other serial lines. TCP/IP Services supports serial connections using the PPP (Point-to-Point Protocol) and SLIP (Serial Line IP) protocols. SLIP includes CSLIP (compressed SLIP). You can use any standard OpenVMS terminal device as a PPP or SLIP line. (PPP is available for OpenVMS Alpha systems only.)
This chapter reviews key concepts and describes:
If your OpenVMS system is part of a large network, you will probably use both PPP and SLIP for your serial connections. As an Internet standard, PPP is often preferred because it ensures interoperability between systems from a wide variety of vendors. PPP provides a way for your OpenVMS Alpha system to establish a dynamic IP network connection over a serial line without an additional router or additional server hardware.
SLIP has been in use for a longer period of time and is available for
most terminal servers and in most PC implementations of TCP/IP. Because
SLIP and PPP do not communicate with each other, hosts wanting to
communicate must use the same protocol. For example, if your terminal
server supports only SLIP, remote hosts that connect through this
server must also use SLIP.
3.1.1 PPP and SLIP
One of the largest applications for IP over serial lines is dialup access. With this type of configuration, the OpenVMS host answers calls and establishes a connection initiated by a user on a client host. The client host can be another OpenVMS system, a UNIX system, or a PC. Or users on the host can originate the dialup connection to a remote host or terminal server running the same protocol.
Dedicated serial lines running PPP or SLIP can also be used to connect
separate LANs into a single WAN. In such a configuration, the host at
each end of the serial connection is always the same; no other hosts
are allowed to connect to either serial device.
3.1.2 Assigning an IP Address to Your PPP or SLIP Interface
Every network interface must have its own unique IP address. Interfaces cannot share IP addresses.
If you configure PPP interfaces for multiple remote hosts, the remote hosts can obtain their individual IP addresses from your host when they connect. Similarly, you can configure a PPP interface on your system without knowing your own IP address and obtain it when you connect to a remote system.
Before establishing SLIP communication with a remote host, however, you must obtain the IP address for the host's serial interface and assign IP addresses for each interface you configure on the local host.
When using SLIP, consider placing each serial line in a separate subnetwork. You accomplish this by assigning the same subnet mask for the interfaces at either end of the link.
SLIP sends a datagram across the serial line as a series of bytes. It uses the following characters to determine when a series of bytes should be grouped together:
|Character||Function||Hex Value||Decimal Values|
|END||Marks the end of the datagram. When the receiving SLIP encounters the END character, it knows that it has a complete datagram.||C0||192|
|ESC||Indicates the end of the SLIP control characters.||DB||219|
The SLIP starts by sending an END character. If END is encountered within the datagram as data, the SLIP inserts an escape character, sending the two-character sequence DB DC instead. If the ESC character appears within the datagram as data, it is replaced with the two-character sequence DB DD. The datagram ends with the END character after the last byte in the packet is transmitted.
There is neither a standard SLIP specification nor a defined maximum packet size for the SLIP. The TCP/IP Services implementation of SLIP accepts 1006-byte datagrams and does not send more than 1006 bytes in a datagram.
Compressed SLIP provides header compression that is beneficial for
small packets and low-speed serial links. Header compression improves
packet throughput. You can enable the CSLIP by means of the /COMPRESS
qualifier when you enter a SET INTERFACE command. See Table 3-3 for
3.1.4 Point-to-Point Protocol
PPP uses a frame format that includes a protocol field. The protocol
field identifies the protocol (for example, IP, DECnet, or OSI) to be
used for communication between the two hosts. The PPP defines the
network frame in a 5-byte header and 3-byte trailer. A PPP frame starts
and ends with the control byte 7E hex (126 decimal). The address and
control bytes are constant. The 2-byte protocol field indicates the
contents of the PPP frame.
3.2 Setting Up a PPP Interface (Alpha Only)
Specifying PP without the interface number is equivalent to specifying PP0.
If you enter a SHOW INTERFACE command, the address does not appear until a PPP connection is actually established.
Table 3-1 shows the command qualifiers used for configuring PPP interfaces.
|/COMPRESS=[ON|OFF|AUTOMATIC]||Optional. The default is ON. Use to negotiate header compression.|
|/DESTINATION=[ host_name| IP_address]||
Optional. The default is no destination host. If you do not specify the
client host's address, the PPP obtains the correct address from the
If the host is used as a dialup provider, use this command to specify a unique IP address for a client. In this case, you must also specify your host address with the /HOST qualifier.
|/HOST=[ host_name | IP_address]||Required when setting up a host as a dialup provider; otherwise optional. Host name or IP address using the interface. If your host is multihomed, specify the unique IP address if the two IP addresses map to the same host name.|
|/NETWORK_MASK= IP_address||Optional. The subnet mask of the local PPP interface in dotted-decimal notation.|
|/SERIAL_DEVICE= device||Required for hard-wired or dedicated modem connections. Identifies the OpenVMS device name assigned to the PPP interface, for example, TTA1.|
In the client/server model for PPP connections, a host can function as a server, or dialup provider, to respond to incoming PPP connection requests. A host can also function as a client dialing in to a dialup provider.
For information about establishing a PPP client connection from a UNIX system, refer to the UNIX documentation. For a connection from a PC, refer to the PC's dialup networking instructions. You will need to configure your modem correctly as outlined in the Section 126.96.36.199.
Setting up an OpenVMS Alpha host as a PPP dialup provider or client involves a series of tasks. These tasks are listed in Table 3-2 in the order you should complete them, and are explained in Sections 188.8.131.52 through 184.108.40.206.
|1||Install the correct terminal driver.||Yes||Yes|
|2||Configure your modem.||Yes||Yes|
|3||Set up an asynchronous port for modem connections.||Yes||Yes|
|4||Configure an interface for a serial PPP connection.||Yes||Optional|
|5||Enable IP forwarding and dynamic routing, as appropriate.||Yes||No|
|6||Initiate a PPP connection. NETMBX and OPER privileges required.||No||Yes|
Confirm that the virtual terminal driver SYS$LOADABLE_IMAGES:SYS$TTDRIVER.EXE is installed on your host. If it is not installed, run the System Management utility (SYSMAN), connect the device, and load the driver, as shown in the following example:
$ RUN SYS$SYSTEM:SYSMAN SYSMAN> IO CONNECT VTA0 /NOADAPTER /DRIVER=SYS$TTDRIVER SYSMAN> EXIT
After you run SYSMAN, confirm that the VTA0 device was created. For more information about SYSMAN and its parameters, see the OpenVMS System Management Utilities Reference Manual: M-Z.
For OpenVMS Alpha Version 7.1, you must also install the ASNDRIVER remedial kit to prevent the system from crashing. To obtain the driver and associated corrections, access a remedial kit and accompanying cover letter from:
To configure the modem, follow these steps:
X = setting on (although different settings might work)
X** = setting on (required)
DTR normal X** DTR always on Verbal result codes X Numeric results codes Suppress result codes X** Display result codes Echo offline commands X No echo offline commands Auto answer on ring X** Suppress auto answer Normal carrier detect X** Carrier detect override Display all results codes X Result codes orig. mode only Disable AT command set Enable AT command set X Disconnect with +++ No disconnect with +++ X Load NVRAM defaults X Load &FO settings
DTR normal X DTR always on Verbal result codes X Numeric results codes Suppress result codes Display result codes X Echo offline commands X No echo offline commands Auto answer on ring Suppress auto answer X Normal carrier detect X Carrier detect override Display all results codes X Result codes orig. mode only Disable AT command set Enable AT command set X** Disconnect with +++ X No disconnect with +++ Load NVRAM defaults X Load &FO settings
Use the DCL command SET TERMINAL and applicable qualifiers to set up an asynchronous port for use with the modem.
$ SET TERMINAL TTA0: /ALTYPEAHD /AUTOBAUD /DIALUP /DISCONNECT /EIGHTBIT - _$ /MODEM /NOHANGUP /NOHOSTSYNC /NOPASTHRU /NOREADSYNCH /NOTTSYNCH - _$ /PERMANENT /TYPE_AHEAD
|/ALTYPEAHD||Creates a permanent, alternate type-ahead buffer. (The system parameter TTY_ALTYPADH determines the size of the type-ahead buffer.) Helpful when transferring larger files. This qualifier is required.|
|/AUTOBAUD||Detects the incoming baud rate.|
|/DIALUP||Specifies that the terminal is a dialup terminal. This qualifier is required.|
|/DISCONNECT||Ensures that the process is disconnected if the line detects a hangup.|
|/EIGHTBIT||Sets the terminal to use the 8-bit ASCII format. This qualifier is required.|
|/MODEM||Specifies the use of a modem. This qualifier is required.|
|/NOHANGUP||Does not hang up the modem when the client logs off. This is the default. This qualifier is required.|
|/NOHOSTSYNC||Does not allow the use of Ctrl/S or Ctrl/Q functions from the terminal to stop or resume transmission when the input buffer is full or empty. This is the default.|
|/PASTHRU||The terminal passes format-type data, such as carriage returns and tabs, to an application program as binary data. This is the default.|
|/NOREADSYNCH||Does not allow the use of Ctrl/S or Ctrl/Q functions to synchronize data transmitted from the terminal. This is the default.|
|/NOTTSYNCH||Does not allow transmission to be stopped or resumed by entering Ctrl/S or Ctrl/Q, respectively.|
|/PERMANENT||Saves the settings.|
|/TYPE_AHEAD||Enables remote modems. Must be set. The terminal accepts unsolicited input to the limit of the type-ahead buffer. This is the default.|
TCPIP> SET INTERFACE PPn /SERIAL_DEVICE=TTn: /HOST=IP_address - _TCPIP> /NETWORK_MASK=IP_address /DESTINATION=IP_address /COMPRESS=AUTO
TCPIP> SET INTERFACE PPn /SERIAL_DEVICE=TTn: /HOST=IP_address
If the connecting client host has only a loopback and tunnel interface defined:
TCPIP> SET PROTOCOL IP/FORWARD
To enable IP forwarding in the configuration database, enter the following command:
TCPIP> SET CONFIGURATION PROTOCOL IP/FORWARD
Alternatively, use the sysconfig utility. First, define the TCP/IP Services foreign commands:
Enter the following SYSCONFIG commands:
$ SYSCONFIG -r inet ipforwarding=1 $ SYSCONFIG -r inet ipgateway=1 $ SYSCONFIG -q inet
To send notifications automatically on all connected LANs when new hosts or networks become reachable, use dynamic routing with the /SUPPLY option. For example, every time a PPP link is set up to a new subnetwork, RIP (Routing Information Protocol) advertises a corresponding route.
For example, enter the following commands:
TCPIP> START ROUTING /SUPPLY TCPIP> SET CONFIGURATION START ROUTING /SUPPLY
If your PPP and Ethernet interfaces are in the same network, a route is
created automatically for the client hosts and an ARP proxy is
220.127.116.11 Initiating a PPP Connection
You use the OpenVMS PPP utility (PPPD) and associated commands to establish and manage a temporary PPP connection from an OpenVMS Alpha client host to an OpenVMS dialup provider or terminal server. Note that NETMBX and OPER privileges are required to establish a successful connection and to display OPCOM messages.
To invoke PPPD, enter the DCL command PPPD. The PPPD commands are summarized in the following table. For detailed information about PPPD commands and qualifiers, enter the HELP command.
|CONNECT||Establishes a network connection through the current physical port or a specified remote port.|
|DIAL_OUT||Allows direct access to a device in order to dial out over a modem or link to an external device.|
|DISCONNECT||Terminates the network connection and returns control to the terminal driver.|
|EXIT||Leaves the utility and returns you to the DCL command prompt ($).|
|HELP||Displays help text for PPPD commands.|
|SET||Determines the device and line characteristics for the specified terminal.|
|SHOW||Displays the device and line characteristics of the specified terminal.|
To initiate a PPP connection from an OpenVMS Alpha client to an OpenVMS dialup provider or terminal server, follow these steps.
$ PPPD PPPD> DIAL_OUT TTA0 Type control-~ to send a break control-\ to disconnect control-@ to switch to a Point-to-Point connection. atdt 8671234
$ PPPD PPPD> CONNECT
LOCAL> CONNECT PPP Local -561- Starting SLIP or PPP datalink session %PPPD-I-CONNECTTERM, converting connection on device _TTA0: to a Point-to-Point connection
%%%%%%%%%%% OPCOM 23-APR-1998 15:44:32.10 %%%%%%%%%%% Message from user XYZnet on JONES %TCPIP-S-PPPDISCONN, Disconnected PPP Interface PP1 on TTA0