Table Of Contents
Configuring Asynchronous Callback
Asynchronous Callback Overview
Asynchronous Callback Configuration Task List
Configuring Callback PPP Clients
Accepting Callback Requests from RFC-Compliant PPP Clients
Accepting Callback Requests from Non-RFC-Compliant PPP Clients Placing Themselves in Answer Mode
Enabling PPP Callback on Outgoing Lines
Enabling Callback Clients Dialing In and Connecting to the EXEC Prompt
Configuring Callback ARA Clients
Asynchronous Callback Examples
Callback to a PPP Client
Callback Clients Connecting to the EXEC Prompt
Callback to an ARA Client
Configuring Asynchronous Callback
This chapter describes how to configure the Cisco IOS software to call back an asynchronous device that dials in and requests a callback from the router, then disconnects. It includes the following main sections:
•
Asynchronous Callback Overview
•
Asynchronous Callback Configuration Task List
•
Asynchronous Callback Examples
For a complete description of the commands in this chapter, see the Cisco IOS Dial Services Command Reference publication. To locate documentation of other commands that appear in this chapter, use the command reference master index or search online.
Asynchronous Callback Overview
Asynchronous callback is supported for the following protocols:
•
PPP
•
Any device calling in and connecting to the router at the EXEC level
•
AppleTalk Remote Access (ARA)
Callback is also supported on other interface types for PPP, including ISDN.
All callback sessions are returned on physical terminal (TTY) lines. ARA is supported on virtual terminal lines, but also is supported on TTY lines if the vty-arap command is used. PPP, however, is supported on interfaces. Therefore, to enable PPP callback, you must enter the autoselect ppp command on the callback lines.
All current security mechanisms supported in the Cisco IOS software are supported by the callback facility, including the following:
•
TACACS+
•
Challenge Handshake Authentication Protocol (CHAP) and Password Authentication Protocol (PAP) for PPP
•
Per-user authentication for EXEC callback and ARA callback
The call originator must have the appropriate permissions set on the router before it can initiate a callback session.
Callback is useful for two purposes:
•
Cost savings on toll calls
For example, suppose it costs more to call from clients in Zone A to devices in Zone D than to call from Zone D to Zone A—costs are lower when devices in Zone D call back clients in Zone A.
•
Consolidation and centralization of phone billing
For example, if a corporation has 64 dial-in clients, enabling its routers to call back these clients consolidates billing. Instead of 64 phone bills, the corporation receives one bill.
Asynchronous Callback Configuration Task List
To configure asynchronous callback, perform the tasks in the following sections:
•
Configuring Callback PPP Clients (Required)
•
Enabling PPP Callback on Outgoing Lines (Required)
•
Enabling Callback Clients Dialing In and Connecting to the EXEC Prompt (Required)
•
Configuring Callback ARA Clients (Required)
See the section "Asynchronous Callback Examples" at the end of this chapter for ideas on how to implement asynchronous callback.
Configuring Callback PPP Clients
You can call back PPP clients that dial in to asynchronous interfaces. You can enable callback to the following two types of PPP clients:
•
Clients that implement PPP callback per RFC 1570 (as an link control protocol, or LCP, negotiated extension).
•
Clients that do not negotiate callback but can put themselves in answer-mode, whereby a callback from the router is accepted.
This section describes how to enable callback to each of these types of PPP clients.
Accepting Callback Requests from RFC-Compliant PPP Clients
To accept a callback request from an RFC 1570 PPP-compliant client, use the following command in interface (asynchronous) configuration mode:
Command
|
Purpose
|
ppp callback accept
|
Enables callback requests from RFC 1570 PPP-compliant clients on an asynchronous interface.
|
To configure the Cisco IOS software to call back the originating PPP client, see the section "Enabling PPP Callback on Outgoing Lines" later in this chapter.
Accepting Callback Requests from Non-RFC-Compliant PPP Clients Placing Themselves in Answer Mode
A PPP client can put itself in answer-mode and can still be called back by the router, even though it cannot specifically request callback. To enable callback on the router to this type of client, use the following command in interface (asynchronous) configuration mode:
Command
|
Purpose
|
ppp callback initiate
|
Initiates callback requests from non-RFC 1570 PPP-compliant clients on an asynchronous interface.
|
To configure the Cisco IOS software to call back the originating PPP client, see the next section, "Enabling PPP Callback on Outgoing Lines."
Enabling PPP Callback on Outgoing Lines
After enabling PPP clients to connect to an asynchronous interface and wait for a callback, you must place one or more TTY lines in PPP mode. Although calls from PPP clients enter through an asynchronous interface, the calls exit the client on a line placed in PPP mode.
To enable PPP client callback on outgoing TTY lines, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
chat-script script-name expect-send
|
Defines a chat script to be applied when a PPP client requests callback.
|
Step 2
|
username name [callback-dialstring
telephone-number]
|
Specifies a per-username callback dial string.
|
Step 3
|
username name [callback-rotary
rotary-group-number]
|
Specifies a per-username rotary group for callback.
|
Step 4
|
username name [callback-line [tty]
line-number [ending-line-number]]
|
Specifies a per-username line or set of lines for callback.
|
Step 5
|
line [tty] line-number [ending-line-number]
|
Enters line configuration mode.
|
Step 6
|
autoselect ppp
|
Configures automatic PPP startup on a line or set of lines.
|
Step 7
|
login {authentication | local}
|
Enables authentication on the line.
|
Step 8
|
script callback regexp
|
Applies a chat script to a line or set of lines.
|
Step 9
|
callback forced-wait number-of-seconds
|
Delays the callback for client modems that require a rest period before receiving a callback.
|
A client can issue a callback dial string; that dial string is used only if the dial string on the router is specified as NULL, or is not defined. The recommended PPP chat script follows:
chat-script name ABORT ERROR ABORT BUSY "" "ATZ" OK "ATDT \T" TIMEOUT 30 CONNECT \c
See the section "Callback to a PPP Client" at the end of this chapter for a configuration example.
Note
Normally a router avoids line and modem noise by clearing the initial data received within the first one or two seconds. However, when the autoselect PPP feature is configured, the router flushes characters initially received and then waits for more traffic. This flush causes time out problems with applications that send only one carriage return. To ensure that the input data sent by a modem or other asynchronous device is not lost after line activation, enter the no flush-at-activation line configuration command.
Enabling Callback Clients Dialing In and Connecting to the EXEC Prompt
You can call back clients that dial in to a TTY line and connect to the EXEC prompt. To enable callback, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
service exec-callback
|
Enables EXEC callback.
|
Step 2
|
chat-script script-name expect-send
|
Defines a chat script to be applied when clients dial in to the EXEC prompt.
|
Step 3
|
username name [callback-dialstring
telephone-number]
|
Specifies a per-username callback dial string.
|
Step 4
|
username name [callback-rotary
rotary-group-number]
|
Specifies a per-username rotary group for callback.
|
Step 5
|
username name [callback-line [aux | tty]
line-number [ending-line-number]]
|
Specifies a per-username line or set of lines for callback.
|
Step 6
|
username name [nocallback-verify]
|
Does not require authentication on EXEC callback.
|
Step 7
|
line [tty] line-number [ending-line-number]
|
Enters line configuration mode.
|
Step 8
|
script callback regexp
|
Applies a chat script to the line or a set of lines.
|
Step 9
|
callback forced-wait number-of-seconds
|
Delays the callback for client modems that require a rest period before receiving a callback.
|
The recommended EXEC chat script is as follows:
chat-script name ABORT ERROR ABORT BUSY "" "ATZ" OK "ATDT \T" TIMEOUT 30 CONNECT \c
See the section "Callback to an ARA Client" at the end of this chapter for a configuration example.
Configuring Callback ARA Clients
To configure callback of ARA clients, use the following commands beginning in global configuration mode. These steps assume you have already enabled AppleTalk routing and enabled ARA.
| |
Command
|
Purpose
|
Step 1
|
arap callback
|
Enables callback to an ARA client.
|
Step 2
|
chat-script script-name expect-send
|
Defines a chat script to be applied when an ARA client connects to a TTY line and requests callback.
|
Step 3
|
line [tty] line-number [ending-line-number]
|
Enters line configuration mode.
|
Step 4
|
arap enable
|
Enables ARA on the line.
|
Step 5
|
autoselect arap
|
Configures automatic protocol startup on the line.
|
Step 6
|
login {authentication | local}
|
Enables authentication on the line.
|
Step 7
|
script arap-callback regexp
|
Applies an ARA-specific chat script to a line or set of lines.
|
Step 8
|
callback forced-wait number-of-seconds
|
Delays the callback for client modems that require a rest period before receiving a callback.
|
Step 9
|
exit
|
Exits to global configuration mode.
|
Step 10
|
username name [callback-dialstring
telephone-number]
|
Specifies a per-username callback dial string.
|
Step 11
|
username name [callback-rotary
rotary-group-number]
|
Specifies a per-username rotary group for callback.
|
Step 12
|
username name [callback-line [tty]
line-number [ending-line-number]]
|
Specifies a per-username line or set of lines for callback.
|
The recommended ARA chat script follows and includes vendor-specific extensions on the Telebit 3000 modem to disable error control. Refer to the manual for your modem for the specific commands to disable error correction for ARA.
chat-script name ABORT ERROR ABORT BUSY "" "ATZ" OK "ATS180=0" OK "ATS181=1" OK "ATDT \T"
TIMEOUT 60 CONNECT \c
See the section "Callback to a PPP Client" at the end of this chapter for an example of calling back a PPP client.
Asynchronous Callback Examples
The following sections provide examples for callback:
•
Callback to a PPP Client
•
Callback Clients Connecting to the EXEC Prompt
•
Callback to an ARA Client
Callback to a PPP Client
The following example shows the process of configuring callback to a PPP client on rotary 77. PAP authentication is enabled for PPP on the asynchronous interfaces. The login local command enables local username authentication on lines 7, 8, and 9. The remote PPP client host name is Ted, and the callback number is fixed at 1234567.
username Ted callback-dialstring "1234567" callback-rotary 77
password Rhoda
async default ip address 1.1.1.1
async default ip address 1.1.1.2
async default ip address 1.1.1.3
Callback Clients Connecting to the EXEC Prompt
The following example shows the process to configure an outgoing callback on the same line as the incoming request. The login local command enables local username authentication on lines 4 and 7. Reauthentication is required upon reconnection.
username milarepa callback-dialstring "" password letmein
Callback to an ARA Client
The following example shows the process of configuring callback to an ARA client on line 7. The login local command enables local username authentication on lines 4 and 7. Line 7 will always be used for ARA callback, whether the incoming call enters line 4, 7, or 8.
arap network 422 router test
username excalibur callback-dialstring "123456" callback-line 7 password guenivere