The protocol translation software attempts to provide transparent translation between systems running disparate protocols. The software fully supports two-way virtual terminal protocol translation between nodes running X.25, Local Area Transport (LAT), and Telnet, a remote terminal protocol that is part of the Transmission Control Protocol/Internet Protocol (TCP/IP) protocol suite.
To provide fully transparent protocol conversion, the protocol translator masquerades as two or more hosts on the same network. When a connection is made to the protocol translator, the protocol translator determines which host the connection is for and what protocol that host is using. The protocol translator then establishes a new network connection using the networking protocol required by that host. This network connection is more efficient and allows the protocol translator to act upon greater knowledge of the protocols in use because the protocol translator acts as a network connection rather than a terminal.
This chapter describes the translate global configuration command, the x29 access-list command, and the x29 profile command. For protocol translation configuration information and examples, refer to the chapter "Configuring Protocol Translation" earlier in this publication.
To automatically convert incoming LAT, TCP, or X.25 requests for connections to a specified destination address or host name to the specified outgoing connection type, use the translate global configuration command.
translate protocol incoming-address [in-options] protocol outgoing-address [out-options]
[global-options]
Syntax Description
protocol incoming-address protocol outgoing-address
| Name of a protocol followed by a service name or address.These arguments can have the following values:
|
| · lat service-name--LAT and a LAT service name. The application of service-name can differ, depending on whether it is being used on the incoming or the outgoing portion of the command. When used on the incoming portion, service-name is the name of the service that users specify when trying to make a translated connection. This name can match the name of final destination resource, but this is not required. This can be useful when making remote translated connections.
|
| · x25 X.121-address--X.25 and an X.121 address. The X.121 address must conform to specifications provided in the CCITT 1984 Red Book. This number generally consists of a portion that is administered by the PDN and a portion that is locally assigned. You must be sure that the numbers that you assign are in agreement with addresses assigned to you by the X.25 service provider. The X.121 addresses will generally be subaddresses of the X.121 address of the X.25 network interface. Typically, the interface address will be a 12 digit number. Any additional digits are interpreted as a subaddress. The PDN still routes these calls to the interface, and the protocol translator itself is responsible for dealing with the extra digits appropriately.
|
| · tcp ip-address--TCP/IP Telnet and a standard IP address or host name. The argument IP-address is a standard, four-part dotted decimal IP address or the name of an IP host that can be resolved by the Domain Name System (DNS) or explicit specification in an ip host command.
|
in-options out-options
| (Optional) Incoming and outgoing connection request options. These arguments can have the following values:
|
| For Telnet TCP translation options:
|
| · port number--For incoming connections, number of the port to match. The default is port 0 (any port). For outgoing connections, number of the port to use. The default is port 23 (Telnet).
|
| · binary--Negotiates Telnet binary mode on the Telnet connection. (This was the default in previous versions of the protocol translation software and is set automatically when you enter at translate command in the old format.)
|
| · stream--Performs stream processing, which enables a raw TCP stream with no Telnet control sequences. A stream connection does not process or generate any Telnet options, and prevents Telnet processing of the data stream as well. This option might be useful for connections to ports running UUCP or other non-Telnet protocols, or to ports connected to printers. For ports connected to printers using Telnet, the stream option prevents some of usual problems associated with using Telnet for printers, such as strange things happening to bare carriage returns or line feeds and echoing of data back to VMS systems.
|
| · printer--Supports LAT and X.25 printing over a TCP network among multiple sites. Causes the protocol translation software to delay the completion of an incoming Telnet connection until after the outgoing protocol connection (to LAT or X.25) has been successfully established. An unsuccessful outgoing connection attempt results in the TCP connection to the protocol translator being refused, rather than being accepted and then closed, which is the default behavior. Note that using this option will force the global option quiet to be applied to the translation.
|
| For LAT translation options:
|
| · node node-name--Connects to the specified node (node-name) that offers a service. By default, the connection is made to the highest-rated node that offers the service.
|
| · port port-name--Destination LAT port name (port-name) in the format of the remote system. This parameter is usually ignored in most timesharing systems, but is used by terminal servers that offer reverse-LAT services.
|
| · unadvertised--Prevents service advertisements from being broadcast to the network. This can be useful, for example, when you define translations for many printers, and you do not want these services advertised to other LAT terminal servers. (VMS systems will be able to connect to the service even though it is not advertised.)
|
| For X.25 translation options:
|
| · cud c-u-data--Sends the specified Call User Data (CUD) text (c-u-data) as part of an outgoing call request after the protocol identification bytes.
|
| · profile profile--Sets the X.3 PAD parameters as defined in the profile created by the x29 profile command.
|
| · reverse--Provides reverse charging for X.25 on a per-call rather than a per-interface basis.
|
| · printer--Supports LAT and TCP printing over an X.25 network among multiple sites. Provides an "interlock mechanism" between the acceptance of an incoming X.25 connection and the opening of an outgoing LAT or TCP connection. The option causes the protocol translator to delay the call confirmation of an incoming X.25 call request until the outgoing protocol connection (to TCP or LAT) has been successfully established. An unsuccessful outgoing connection attempt results in the incoming X.25 connection to the protocol translator being refused, rather than being confirmed and then cleared, which is the default behavior. Note that using this option will force the global option quiet to be applied to the translation.
|
| · pvc number--Specifies that the incoming connection (identified by the argument number) is actually a permanent virtual circuit (PVC).
|
global-options
| (Optional) Translation options that can be used by any connection type. It can be one or more of the following:
|
| · access-class number--Allows the incoming call to be used by source hosts that match the access list parameters. The argument number is the number (integer) previously assigned to an access list. This feature is supported only for incoming TCP and X.25 connections.
|
| · local--Allows Telnet protocol negotiations to not be translated.
|
| · login--Requires that the user log in before the outgoing connection is made. This type of login is specified on the VTY's using the login command.
|
| · quiet--Suppresses printing of user-information messages.
|
| · max-users number--Limits the number of simultaneous users of the translation to number (an integer you specify).
|
| · swap--Allows X.3 parameters to be set on the protocol translator by the host originating the X.25 call, or by an X.29 profile. This allows incoming and outgoing X.25 connections to be swapped so that the protocol translator is treated like a PAD when it accepts a call. By default, the protocol translator behaves like a PAD for calls that it initiates, and behaves like an X.25 host for calls it accepts. The swap keyword allows connections from an X.25 host that wants to connect to the protocol translator, and then treats it like a PAD. For X.25-to-TCP translations only.
|
Default
No default translation parameters
Command Mode
Global configuration
Usage Guidelines
Table 9-1 provides a visual aid for understanding how to use the translate command. As the table illustrates, you define the protocol translation connections--both incoming and outgoing--by choosing a protocol keyword and supplying the appropriate address or service name. The protocol connection information is followed by optional features for that connection, also as appropriate. For example, the binary option is only appropriate with TCP/IP connections. The global options, in general, apply to all the connection types, but there are exceptions. The swap keyword, for example, is for X.25 to TCP translations only. See the examples for more explanations on how to enter this command.
Translate Command Options
| Incoming
Protocol
|
Options
| Outgoing
Protocol
|
Options
|
Global Options
|
---|
translate
| protocol incoming-address
| [in-options]
| protocol outgoing-address
| [out-options]
| [global-options]
|
| lat service-name
| unadvertised
| lat service-name
| node node-name
| access-class number
|
|
|
|
| port port-name
| max-users number
|
|
|
|
|
| local
|
|
|
|
|
| login
|
| x25 x.121 address
| cud c-u-data
| x25 x.121 address
| cud c-u-data
| quiet
|
|
| profile profile
|
| profile profile
| swap
|
|
| reverse
|
| reverse
|
|
|
| printer
|
|
|
|
|
| pvc number
|
|
|
|
|
|
|
|
|
|
| tcp ip-address
| port number
| tcp ip-address
| port portnumber
|
|
|
| binary
|
|
|
|
|
| stream
|
|
|
|
|
| printer
|
|
|
|
Examples
Note In the following examples, the underscores highlight parts of the command and are for illustration purposes only.
The following example illustrates a simple X.25 to TCP translation command. Packets coming in X.25 address 652365123 arrive via PVC 1 and are translated to TCP packets and transmitted out IP address 131.108.1.1.
translate
x25 652365123
pvc 1
tcp 131.108.1.1
incoming
option outgoing
The following example illustrates incoming LAT to outgoing TCP translations. The unadvertised keyword prevents broadcast of service advertisements to other servers. Outgoing translated packets are transmitted out IP address rubble via TCP port 4005.
translate
lat pt-printer1
unadvertised
tcp rubble port 4005
incoming option outgoing option
The following example illustrates a more complex configuration that calls an X.29 profile and swaps the default PAD operation of the protocol translator to that of an X.25 host.
x29 profile fullpackets 2:0 3:0 4:100 7:21
translate
x25 217536124
profile fullpackets
tcp rubble
port 4006
swap
incoming option outgoing option global
The following example illustrates the use of the TCP incoming protocol option printer for an incoming TCP connection.
translate
tcp 160.89.32.250 printer
x25 5678
incoming
option outgoing
The following example illustrates the use of the X.25 incoming protocol option printer for an incoming X.25 connection.
translate
x25 55555 printer
tcp 131.108.1.1
incoming
option outgoing
To limit access to the protocol translator from certain X.25 hosts, use the x29 access-list global configuration command. To delete an entire access list, use the no form of this command.
x29 access-list access-list-number {permit | deny} regular-expression
no x29 access-list access-list-number
Syntax Description
access-list-number
| Number of the access list. It can be a value between 1 and 199.
|
deny
| Denies access and clears call requests immediately.
|
permit
| Permits access to the protocol translator.
|
regular-expression
| Usually the X.121 address, with or without regular expression pattern-matching characters, with which to compare for access.
|
Default
No default access list is defined.
Command Mode
Global configuration
Usage Guidelines
An access list can contain any number of access list items. The list are processed in the order in which you entered them, with the first match causing the permit or deny condition. If an X.121 address does not match any of the regular expression in the access list, access will be denied.
Access lists take advantage of the message field defined by Recommendation X.29, which describes procedures for exchanging data between two PADs or a PAD and a DTE device.
The UNIX-style regular expression characters allow for pattern matching of characters and character strings in the address. Various pattern-matching constructions are available that will allow many addresses to be matched by a single regular expressions. Refer to the appendix "X.3 PAD Parameters" later in this publication for more information.
Example
The following example permits connections to hosts with addresses beginning with the string 31370:
x29 access-list 2 permit ^31370
To create a PAD profile script for use by the translate command, use the x29 profile global configuration command.
x29 profile name parameter:value [parameter:value]
Syntax Description
name
| Name of the PAD profile script.
|
parameter:value
| X.3 PAD parameter number and value separated by a colon. You can specify multiple parameter-value pairs.
|
Default
No default PAD profile script defined.
Command Mode
Global configuration
Usage Guidelines
When an X.25 connection is established, the protocol translator acts as if an X.29 SET PARAMETER packet had been sent containing the parameters and values set by the x29 profile command and sets the protocol translator accordingly.
Example
The following profile script turns local edit mode on when the connection is made and establishes local echo and line termination upon receipt of a Return. The name "linemode" is used with the translate global configuration command to effect use of this script.
x29 profile linemode 2:1 3:2 15:1
Related Command
translate