# DIGITAL TCP/IP Services for OpenVMS
Management

Previous | Contents

## 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. PPP defines the network frame in a 5-byte header and 3-byte trailer. The PPP frame starts and ends in 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

Use the following commands to configure the PPP interface:

- SET INTERFACE PPn --- takes effect immediately and stays in effect until the next UCX shutdown.
- SET CONFIGURATION INTERFACE PPn --- makes the change part of the permanent configuration. Takes effect upon the next UCX startup.

Table 3-1 shows the command qualifiers used for configuring PPP interfaces.

Table 3-1 Configuring PPP Interfaces
Qualifier | Description
--- | ---
/COMPRESS=[ON|OFF|AUTO] | Optional. Default=ON. Use to negotiate header compression.
/DESTINATION= host_name| IP_address | Optional. Default: No destination host. If you do not specify the remote host's address, PPP will obtain the correct address from the remote host. If the local host is used as a dialup provider, this command is used to specify an IP address for a remote client. In this case, you must also specify your local host address with the /HOST qualifier.
/HOST=[ host_name | IP_address] | Required when setting up a host as a dialup provider. Optional otherwise. Local host name or IP address using the interface. If your host is multihomed, specify an address. If not specified, PPP obtains the correct address from the remote host.
/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.

## 3.2.1 Managing the PPP Connection

Your OpenVMS Alpha system provides a PPP utility (PPPD) that lets you initiate and control a PPP connection from an OpenVMS Alpha host. After configuring a PPP interface, you can use the PPP utility to

- Establish temporary network connections between two hosts. This includes both dial-in capability from a remote host to an OpenVMS Alpha system and dial-out capability from an OpenVMS host to a remote system or server that supports PPP.
- Establish permanent, low-speed networking connections between local hosts, such as between a laptop computer and an Alpha workstation connected by a serial line.
- Set and display communication characteristics, such as address compression, flow control, and line speed.

Use the DCL command PPPD to invoke the PPP utility. The PPPD commands listed in Table 3-2, allow users to set and display device characteristics, connect and disconnect a PPP session, and establish a connection with a new system. For more detailed information about PPPD commands, see the TCP/IP Networking on OpenVMS manual in the OpenVMS documentation set.

Table 3-2 PPPD Command Summary
Command | Function
--- | ---
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.

## 3.2.2 Setting Up Your Host as a PPP Dialup Provider

You can configure your host to answer calls, assign IP addresses, and establish connections initiated by users on remote hosts or PCs. To set up your host as a PPP provider, configure your interface for PPP with the /HOST, /SERIAL_DEVICE, /NETWORK_MASK and /DESTINATION qualifiers to the SET INTERFACE command. For example:

1. Modify terminal settings as needed. For example,

       $ SET TERMINAL TTA2 /PERMANENT /DISCONNECT

2. Configure the modem using the AT command set. Be sure to follow directions that come with your modem, because AT commands may differ. Set the following characteristics:
   - DTR Normal
   - Quiet Mode
   - Auto Answer
   - Normal Carrier Detect
   - Data Set Ready
3. Issue the SET INTERFACE command:

       SET INTERFACE PPn /SERIAL_DEVICE=TTn /HOST=IP_address /DESTINATION=IP_address

   The IP address supplied with /DESTINATION is the address PPP assigns to the remote host making a connection request.
4. Enable IP forwarding on the PPP provider host and start dynamic routing. As appropriate, issue:

       UCX> SET PROTOCOL IP /FORWARD

       UCX> SET CONFIGURATION PROTOCOL IP /FORWARD

5. 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 remote subnetwork, RIP (Routing Information Protocol) advertises a corresponding route. As appropriate, issue:

       UCX> START ROUTING /SUPPLY

       UCX> SET CONFIGURATION START ROUTING /SUPPLY

   ## 3.2.3 Dialing Out as a Simple Client

   You can establish a PPP connection with a remote terminal server without specifying its IP address or configuring the serial interface on your local system. In such a case, the remote server will provide your host with an IP address after the connection is established.

   The following example shows how to use the PPP utility (PPPD) to dial out to a terminal server.

       $ PPPD DIAL_OUT TTA1

       Type control-~ to send a break
            control-\ to disconnect
            control-@ to switch to a Point-to-Point connection.

       atd 8671234

       #
       LOCAL> CONNECT PPP

       Local -561- Starting SLIP or PPP datalink session
       %PPPD-I-CONNECTTERM, converting connection on device _TTA1: to a
       Point-to-Point connection

   ## 3.2.4 Shutting Down PPP

   To terminate a PPP connection, follow these steps:

   1. Return the associated terminal port to general use. Issue:
      UCX> SET NOINTERFACE PPn
   2. If you added special route and proxy entries in conjunction with the PPP line, remove them.
   3. If you changed any terminal settings in preparation for PPP, restore them. Issue the DCL command SET TERMINAL.

   After the connection is terminated, and OPCOM message displays. For example:

       %%%%%%%%%%%  OPCOM   23-APR-1997 15:44:32.10  %%%%%%%%%%%
       Message from user XYZnet on JONES
       %UCX-S-PPPDISCONN, Disconnected  PPP Interface PP1 on TTA1

   # 3.3 Setting Up a SLIP Interface

   Configuring the network interface for SLIP is equivalent to configuring the interface for Ethernet connections. In this case, the network interface is the modem connection. Remember, before configuring a SLIP line, you must choose an IP address for the interface at each end of the line and establish a physical connection.

   Use the following commands to set up the SLIP interface:

   - SET INTERFACE SLn --- takes effect immediately and stays in effect until the next UCX shutdown.
   - SET CONFIGURATION INTERFACE SLn --- makes the change part of the permanent configuration. Takes effect upon the next UCX startup.

   Table 3-3 shows the command qualifiers used for configuring SLIP interfaces.

   Table 3-3 Command Qualifiers Used for Configuring SLIP
   Qualifier | Description
   --- | ---
   /[NO]AUTO_START | Optional. Default: /AUTO_START. Automatically creates the interface upon UCX startup.
   /COMPRESS= ON OFF AUTOMATIC | Optional. Default: No compression. Enables or disables TCP header compression (CSLIP). With /COMPRESS=AUTOMATIC, compression remains off unless the remote host begins to use it.
   /[NO]FLOWCONTROL | Optional. Default: No flow control. Enables the special handling of XON and XOFF characters to work properly with modems that are configured to interpret these characters locally. Specify /FLOWCONTROL only if the host at the other end of the line is another host running DIGITAL TCP/IP Services for OpenVMS. If you cannot use /FLOWCONTROL, configure your modem to pass all the XON and XOFF characters through transparently.
   /HOST=( host_name, IP_address) | Required. Host name or IP address of the local host. If your host is multihomed, you must specify an address in dotted-decimal notation.
   /NETWORK_MASK= subnet_address | Required. The subnet mask of the local SLIP interface in dotted-decimal notation.
   /SERIAL_DEVICE= device | Required for hard-wired or dedicated modem connections. Optional for dynamic connections. Identifies the OpenVMS device name assigned to the SLIP interface, for example, TTA1.

   For example, the following command configures SLIP interface SL5, using the local IP address assigned to host CROW, with a subnetwork mask of 255.255.255.0. The interface uses the terminal device TTA3:. /COMPRESS enables TCP header compression (CSLIP). /FLOWCONTROL enables special handling of XON and XOFF characters.

       UCX> SET INTERFACE SL5 /HOST=CROW /NETWORK_MASK=255.255.255.0 -
       _UCX> /SERIAL_DEVICE=TTA3 /COMPRESS=ON /FLOWCONTROL

   ## 3.3.1 Setting Up Hard-Wired SLIP Lines

   To configure SLIP with hard-wired lines, follow these steps:

   1. Establish a physical connection. Plug in a serial cable between the two host systems or ensure that they are both cabled to opposite ends of a leased line.
   2. Obtain IP address as needed.
   3. Configure the SLIP interface. Issue the SET INTERFACE command with the /HOST and /SERIAL_DEVICE qualifiers (required).

   ## 3.3.2 Setting Up SLIP Dialup Lines

   You can configure either a terminal server port or an OpenVMS system itself to answer dial-in calls.

   Follow these steps:

   1. Configure the appropriate settings for the terminal port to which you will connect. Begin a dialog of dialing (or answering) commands with your modem. The specific required commands depend on the type of modem you are using.
      For example, to prevent the modem from hanging up when you exit the DTE session to bring up the SLIP line, enter the following:

          $ SET TERMINAL TTA2 /PERMANENT /MODEM /NOHANGUP

      Or, to disable interactive logins on the line, enter

          $ SET TERMINAL TTA2 /PERMANENT /NOTYPEAHEAD

      Any SLIP data that arrives before you issue the SET INTERFACE command is ignored. Otherwise, it triggers the creation of a new interactive login process.
      To enable interactive logins after a user sends a Break, enter

          $ SET TERMINAL TTA2 /PERMANENT /NOAUTOBAUD /SECURE_SERVER

   2. Configure the modem. Issue the appropriate commands to dial the telephone and establish communication.
   3. Unless you are setting up a SLIP line between two hosts running DIGITAL TCP/IP Services for OpenVMS and plan to use the /FLOWCONTROL qualifier at both ends, disable modem recognition of XON and XOFF characters. (If SLIP packets have Ctrl/S and Ctrl/Q characters embedded in them as data, you must prevent the modem from trying to interpret them.)
      Either use hardware flow control or disable flow control entirely. The following examples disable all flow control.
      - With a DECmodem Version 3.2 in AT command mode, set:
        - AT%F0 --- No speed buffering flow control
        - AT%M0 --- Disable speed buffering (optional)
      - With a DECmodem Version 3.2 in DCML mode, set:
        - SET P2/SBU
        - SET P1/SBU
        - prompts appropriate_answers
      - With a U.S. Robotics SPORTSTER modem, set:
        - AT&B0 --- Variable, follows connection rate (optional)
        - AT&H0 --- Flow control disabled
        - AT&I0 --- Software flow control disabled
   4. Obtain IP addresses as needed.
   5. Dial in. Follow these steps:
      1. Issue the SET HOST /DTE command:

              $ SET HOST /DTE terminal_name

      2. Type the telephone number, for example:

              ATDT telephone_number

      3. The connected system displays its interactive (command mode) prompt. You are "talking" to the terminal server and can now make the connection.

   The following example shows a user named SLIP-USER, at a PC named ROBIN and with a 9600-baud modem, using terminal device TTA2 and connecting it to the port of a terminal server. In this example:

   - The terminal server is a DECserver 700 terminal server.
   - The user directs the modem to dial the telephone number 222-2222.
   - The password prompt of the terminal server is #.
   - The terminal server's current login password is hootowl.
   - The terminal server's prompt is Local>.
   - The user types Ctrl / \ (backslash) to escape from the terminal server to the SLIP host.
   - The user defines interface SL2 and identifies it as SLIP device TTA1: with IP address 1.2.3.4. Communication on this line will use CSLIP.

       $ SET HOST /DTE TTA2
       %REM-I-TOQUIT, connection established
       Press Ctrl/\ to quit, Ctrl/@ for command mode

       ATDT 2222222

       CONNECT 9600

       # hootowl (not echoed)

       Network Access SW V1.5 for DS700-16
       (c) Copyright 1994, Digital Equipment Corporation - All Rights Reserved
       Please type HELP if you need assistance

       Enter username> SLIP-USER

       Local> CONNECT SLIP
       Ctrl/\

       $ UCX SET INTERFACE SL2 /HOST=1.2.3.4 /NETWORK_MASK=255.255.255.0 -
       _UCX> /SERIAL_DEVICE=TTA1: /COMPRESS=ON

   ## 3.3.3 Setting Up Your Host as a SLIP Dialup Provider

   You can configure your host to answer calls and establish connections initiated by users on remote hosts.

   To set up your host as a SLIP provider:

   1. Over the line you will define as a SLIP line, dial in to the host.
   2. Log in to the remote host.
   3. Issue an appropriate UCX SET INTERFACE command, with the /SERIAL_DEVICE qualifier, to turn the line into a SLIP line.
      For example, the following command creates a SLIP interface named SL5, using the terminal device associated with the session where the command is issued.

          $ UCX SET INTERFACE SL5 /HOST=192.208.35.5 /SERIAL_DEVICE=TT

   4. Log out.

   As soon as you log out, your terminal port becomes a SLIP interface. Without causing the modem to hang up, start SLIP on the remote system.

   To facilitate connection setup for end users, create a dedicated user name for each remote host that dials in. These users need to have a LOGIN.COM procedure that issues appropriate SET TERMINAL and UCX SET INTERFACE commands, terminating with a LOGOUT command. Every user should specify a different SLIP interface name and host name (or IP address). These users require the OPER privilege in order to create interfaces.

   You can enable IP forwarding on the SLIP provider host and start dynamic routing. As appropriate, issue:

       $ UCX SET PROTOCOL IP /FORWARD

       $ UCX SET CONFIGURATION PROTOCOL IP /FORWARD

   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 SLIP connection is set up to a new remote subnetwork, RIP (Routing Information Protocol) advertises a corresponding route. As appropriate, issue:

       $ UCX START ROUTING /SUPPLY

       $ UCX SET CONFIGURATION START ROUTING /SUPPLY

   ## 3.3.4 Connecting a Host to the LAN

   You can make your SLIP-connected host appear as if it were directly connected to the LAN. This is possible using a proxy ARP server --- usually the same host that is acting as a SLIP gateway into the LAN.

   To use proxy ARP (Address Resolution Protocol), assign to the remote host an IP address in the same subnetwork as the LAN. As other hosts on the LAN attempt to communicate with the remote host, the SLIP gateway answers ARP queries for the remote host by giving its own LAN address. The gateway then forwards packets across the SLIP line.

   Many DIGITAL DECserver terminal server products support SLIP connections and implement proxy ARP. If you dial in from an OpenVMS host to a terminal server, the terminal server automatically detects your IP address and begins responding to ARP queries, forwarding packets as necessary.

   To use proxy ARP with a DECserver terminal server, assign an IP address in the same subnetwork as the terminal server.

   On the terminal server, issue the SHOW PORT SLIP command. Verify that:

   - A particular IP address has not already been associated with your port.
   - Header compression is available, if you plan to use it.

   ## 3.3.5 Setting Up a SLIP Gateway with Proxy ARP

   It is also possible to set up your host as a SLIP gateway with proxy ARP. You might prefer this approach if your dial-in modems are attached directly to an OpenVMS system, rather than to a terminal server.

   Follow these steps on the host to become a SLIP gateway:

   1. Create a SLIP interface in another network or subnetwork, for example:

          $ UCX SET INTERFACE SL0 /HOST=10.1.2.3 /SERIAL_DEVICE=TTA2

   2. Add a host route for the remote system, for example:

          $ UCX SET ROUTE FINCH /GATEWAY=10.1.2.3

   3. Configure an ARP entry for the remote host, listing your own Ethernet address (as shown in UCX SHOW INTERFACE /FULL), for example:

          $ UCX SET ARP 08-00-2B-2C-4F-46 FINCH /PUBLIC

   4. Enable IP packet forwarding, if not already done. Issue:

          $ UCX SET PROTOCOL IP /FORWARD

   When your host is set up as a SLIP gateway, create an interface on the remote host at the other end of the serial line. Specify an address in the same subnetwork as the LAN.

   Although the two ends of the SLIP line are in different subnetworks, traffic can flow properly due to the interface route you added with the SET ROUTE command.

   ## 3.3.6 Shutting Down SLIP

   To terminate a SLIP connection, follow these steps:

   1. Return the associated terminal port to general use. Issue:

          $ UCX SET NOINTERFACE interface

   2. If you added special route and proxy entries in conjunction with the SLIP line, remove them.
   3. If you changed any terminal settings in preparation for SLIP, restore them. Issue the DCL SET TERMINAL command.

   ## 3.3.7 Troubleshooting SLIP

   See Section A.10.

   # Chapter 4
   Configuring Routing

   Routing allows traffic from your local network to reach its destination elsewhere on the internet. All hosts and gateways on a network use routing protocols to exchange and store routing information. Routing is simply the act of forwarding datagrams based on information stored in a routing table.

   The DIGITAL TCP/IP Services for OpenVMS product provides two types of routing: static and dynamic. This chapter reviews key routing concepts and describes how to configure static or dynamic routing on your system.

   # 4.1 Reviewing Key Concepts

   If the hosts on your network need to communicate with computers on other networks, a route through a gateway must be defined. All hosts and gateways on a network store routing information in routing tables. With DIGITAL TCP/IP Services for OpenVMS, routing tables are implemented in dynamic and permanent databases.

   You can define routes manually (called static routing) or you can enable the Routing Information Protocol (RIP), which builds route information based on information received by means of RIP updates from remote hosts. This is called dynamic routing.

   The following sections serve as a review only. If you are not familiar with routing concepts, see DIGITAL TCP/IP Services for OpenVMS Concepts and Planning or other introductory documentation for more information.

   ## 4.1.1 Static Routing

   Static routing tables are most useful when the number of gateways is limited. Static routing does not adjust to changing network conditions; each change is made manually by the network manager. Because static routing tables do not adjust to network changes, use static routing only where routes do not change.

   ## 4.1.2 Dynamic Routing

   Complex environments require a more flexible approach to routing than a static routing table provides. Routing protocols handle complex routing situations more quickly and accurately. Dynamic routing tables use information received by means of RIP updates; when routes change, RIP updates provide information on the changes.

   DIGITAL TCP/IP Services for OpenVMS software implements RIP in its dynamic routing server. This server, similar to the UNIX routing daemon routed, sends and receives RIP messages. Using this information, the server dynamically builds the routing table based on the information received through RIP updates.

   When the server starts, it issues routing update requests then listens for responses. A system configured to supply RIP information responds to the request with an update packet. The update packet contains destination addresses and routing metrics associated with each destination. After receiving a RIP update, the routing server uses the information to update its routing table.

   # 4.2 Setting Up Routing

   If you select to enable dynamic routing during the UCX configuration procedure, the routing software does not require any management.

   However, the routing function requires manual management if you do not enable dynamic routing and you want to communicate outside of your local subnetwork. In addition, you can optionally monitor and reconfigure routing.

   ## 4.2.1 Routing Management Commands

   To create routes manually, reconfigure routing, and monitor routing, use the following commands:

   - CREATE ROUTE
   - SET [NO]ROUTE
   - SHOW ROUTE
   - START ROUTING
   - SET CONFIGURATION START [NO]ROUTING
   - STOP ROUTING

   ## 4.2.2 Starting and Stopping Dynamic Routing

   To start and stop dynamic routing, use the commands listed in Table 4-1.

   Table 4-1 Dynamic Routing Commands
   Command | Function
   --- | ---
   START ROUTING | Starts dynamic routing and configures your host to receive RIP messages.
   START ROUTING /SUPPLY | Starts dynamic routing and configures your host to both receive and supply RIP messages.
   STOP ROUTING | Stops your hosts from receiving RIP messages.
   SET CONFIGURATION START ROUTING | Same as START ROUTING; starts dynamic routing at UCX startup.

   ## 4.2.3 Configuring and Managing Static Routing

   The first time you run the configuration procedure, UCX$CONFIG.COM, static routing is configured automatically. To manually configure static routing, use the CREATE ROUTE command to create an empty routes database file. The default file name is SYS$COMMON:[SYSEXE]UCX$ROUTE.DAT. To specify a different name, define the systemwide logical name UCX$ROUTE. When the routes database file is created, it is assigned a version number of existing_file +1.

   > Important

   > Do not execute the CREATE ROUTE command unless you intend to reconfigure your entire cluster.

   ### 4.2.3.1 Manually Defining Routes (Static Routes)

   To create a static route, use the SET ROUTE command. The command has the following effects:

   - If UCX is not active, SET ROUTE modifies the permanent database.
   - If UCX is active, SET ROUTE modifies the volatile database.
   - If UCX is active, SET ROUTE /PERMANENT updates the permanent database.

   The command requires the following information:

   - The IP address or domain name of the destination host or network
   - The IP address or host name of a gateway that can reach the destination host

   DIGITAL strongly recommends that you do not specify alias names with the destination parameter or the /GATEWAY=host qualifier.

   If you are running dynamic routing, you cannot use SET NOROUTE to remove a route that is maintained by the routing server. In such an instance, issue the command STOP ROUTING before executing the SET NOROUTE command.

   To define a route to any host on a specific network, issue:

       UCX> SET ROUTE network_IP_address /GATEWAY="gateway" /NETWORK

   To define a route to a specific host on a specific network, issue:

       UCX>  SET ROUTE remote_host /GATEWAY="gateway"

   Example 1:
   In the following example, the network is active. The SET ROUTE command adds a route to the volatile routes database. UCX starts directing communication for flamingo through gateway francolin.

       UCX> SET ROUTE "flamingo" /GATEWAY="francolin"

   Example 2:
   In the following example, the network is active. The SET ROUTE command defines a routing path in the volatile routes database. The command specifies that traffic for the network with IP address 128.30.0.0 use gateway francolin.

       UCX> SET ROUTE 128.30.0.0 /NETWORK /GATEWAY="francolin"

   Example 3:
   In the following example, the network is not active. The SET ROUTE command adds the new route to the permanent routes database. The next time UCX starts up, packets for NENE will go through a gateway called bird.of.paradise.

       UCX> SET ROUTE NENE /GATEWAY="bird.of.paradise"

   At UCX startup, the information in the permanent routes database, if any exists, is loaded into the volatile routes database. You can add permanent routes while UCX is stopped or while it is running. If it is running, use the /PERMANENT qualifier.

   Example 4:
   The following command permanently sets routing for host albatross to go through gateway birdygate.

       UCX> SET ROUTE "albatross" /GATEWAY="birdygate" /PERMANENT

   Previous | Next | Contents