3.3 PPP Callback
3.3.1 Callback implementation
PPP callback provides a client/server relationship between the endpoints of a point-to-point connection. PPP callback allows a router to request that a dialup peer router call back. The callback feature can be used to control access and toll costs between the routers.

When PPP callback is configured on the participating routers, the calling router (the callback client) passes authentication information to the remote router (the callback server), which uses the host name and dial string authentication information to determine whether or not to place a return call. If the authentication is successful, the callback server disconnects, and then places a return call. The remote username of the return call is used to associate it with the initial call, so that the packets can be transmitted.

Both routers on a point-to-point link must be configured for PPP callback; one must function as a callback client, and one must be configured as a callback server. The callback client must be configured to initiate PPP callback requests, and the callback server must be configured to accept PPP callback requests and place return calls.

Return calls are made through the same dialer rotary group, but not necessarily the same line as the initial call. A rotary group simplifies the configuration of multiple physical interfaces by allowing you to apply a single logical interface configuration to a set of physical interfaces. When many destinations are configured, any of the physical interfaces in the group can be used for outgoing calls. If the return call fails (because the line is not answered or is busy), no retry occurs. If the callback server has no interface available when attempting the return call, it does not retry.

If the command dialer hold-queue is configured on the dialing-out interface, when the client router dials the initial call, the router hold-queue timer is started . No calls to the same destination will be made again until the hold-queue timer expires. The timer is stopped if PPP NCP negotiation is successful or if the call fails. The complete command syntax is as follows:

dialer hold-queue number of packets timeout seconds

For rotary groups that include ISDN, the return call never occurs if the enable time is long and another user dials into the last interface before the enable timer expires. For rotary groups that include ISDN, if an interesting packet (data packet that forces the router to initiate a call) arrives at the server during the enable time, the dialer may use the last interface for the interesting packet, and the return call is never made. 

When planning to implement PPP callback, consider the following:
  • Authentication is required for callback to be successful.
  • The time between the disconnect of the initial call and dialing the return call is determined by the dialer enable timeout. This interval must be long enough to guarantee that the initial call is completely disconnected.
  • The dialer hold-queue timeout determines how long to wait before the client can make another call to the same destination. The server must make the return call before the client hold-queue timer expires, to prevent the client from trying again and possibly preventing the return call from being connected.