Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
35.  Fixing Common Problems (Tasks) Fixing General Communications Problems How to Diagnose and Fix Communications Problems  Previous   Contents   Next 
   
 

Fixing PPP Configuration Problems

Some PPP problems can be traced to problems in the PPP configuration files. This section contains information for isolating and fixing general configuration problems.

How to Diagnose Problems With the PPP Configuration

  1. Become superuser on the local machine.

  2. Call the remote peer with debugging turned on.
    % pppd debug call peer-name

  3. Check the resulting log for the configuration problems that are listed in the next table.

    Table 35-4 Common PPP Configuration Problems

    Symptom

    Problem

    Solution

    pppd debug output contains the error message "Could not determine remote IP address."

    The /etc/ppp/peers/peer-name file does not have an IP address for the peer. The peer does not provide an IP address for itself during link negotiation.

    Supply an IP address for the peer on the pppd command line or in /etc/ppp/peers/peer-name by using the following format:

    :10.0.0.10

    pppd debug output shows that CCP data compression has failed and the link is dropped.

    The peers' PPP compression configurations may be in conflict.

    Disable CCP compression by adding the noccp option to /etc/ppp/options on one of the peers.

Fixing Modem-Related Problems

Modems can be major problem areas for a dial-up link. The most common indicator of problems with the modem configuration is no response from the peer. But it is often difficult to determine if a link problem is indeed the result of modem configuration problems.

For basic modem troubleshooting suggestions, refer to "Troubleshooting Terminal and Modem Problems" in System Administration Guide: Advanced Administration. Modem manufacturers' documentation and web sites also contain solutions for problems with their particular equipment. This section contains more suggestions for isolating and fixing modem problems.

How to Diagnose Modem Problems

The following steps help determine whether a faulty modem configuration causes link problems.

  1. Call the peer with debugging turned on, as explained in "How to Turn on PPP Debugging".

  2. Display the resulting /var/log/pppdebug log.

    Either of the following symptoms in the output can indicate a faulty modem configuration:

    • No "recvd" messages have come from the peer.

    • The output contains LCP messages from the peer, but the link fails with too many LCP Configure Requests messages sent by the local machine.

      These messages indicate that the local machine can hear the peer, but the peer cannot hear the local machine.

    • The link terminates with a SIGHUP signal.

  3. Use ping to send packets of various sizes over the link.

    For complete details about ping, refer to the ping(1M) man page.

    If small packets are received, but larger packets are dropped, modem problems are indicated.

  4. Check for errors on interface sppp0:
    % netstat -ni
    Name  Mtu  Net/Dest   Address      Ipkts    Ierrs Opkts    Oerrs Collis Queue 
    lo0   8232 127.0.0.0  127.0.0.1    826808   0     826808   0     0      0     
    hme0  1500 172.21.0.0 172.21.3.228 13800032 0     1648464  0     0      0     
    sppp0 1500 10.0.0.2   10.0.0.1     210      0     128      0     0      0

    If interface errors increase over time, this can indicate problems with the modem configuration.

Fixing Chat Script-Related Problems

Chat scripts are trouble-prone areas for dial-up links. This section contains a procedure for obtaining debugging information from chat and suggestions for clearing common problems.

How to Obtain Debugging Information for Chat Scripts

  1. Become superuser on the dial-out machine.

  2. Edit the /etc/ppp/peers/peer-name file for the peer to be called.

  3. Add -v as an argument to the chat command that is specified in connect option.
    connect "/usr/bin/chat -v -f /etc/ppp/chat-script-name"

  4. View chat script errors in the file /etc/ppp/connect-errors.

    The following is the main error that is seen with chat.

    Oct 31 08:57:13 deino chat[107294]: [ID 702911 local2.info] expect (CONNECT)
    Oct 31 08:57:58 deino chat[107294]: [ID 702911 local2.info] alarm
    Oct 31 08:57:58 deino chat[107294]: [ID 702911 local2.info] Failed

    The example shows timeout while waiting for a (CONNECT)string. When chat fails, you get the following message from pppd:

    Connect script failed

The next table lists common chat script errors and suggestions for fixing them.

Table 35-5 Common Chat Script Problems

Symptom

Problem

Solution

pppd debug output contains Connect script failed

Your chat script supplies a user name and ssword.

ogin: user-name
ssword: password

However, the peer you intended to connect to does not prompt for this information.

  1. Delete the login and password from the chat script.

  2. Try to call the peer again.

  3. If you still get the message, call the ISP and ask them for the correct login sequence.

The /usr/bin/chat -v log contains the message: "expect (login:)" alarm read timed out

Your chat script supplies a user name and ssword.

ogin: pppuser
ssword: \q\U

However, the peer you intend to connect to does not prompt for this information.

  1. Delete the login and password from the chat script.

  2. Try to call the peer again.

  3. If you still get the message, call the ISP and ask them for the correct login sequence.

pppd debug output contains: possibly looped-back

The local machine or its peer is hanging at the command line and not running PPP. An incorrectly configured login name and password are in the chat script.

  1. Delete the login and password from the chat script.

  2. Try to call the peer again.

  3. If you still get the message, call the ISP and ask them for the correct login sequence.

pppd debug output shows that LCP activates, but the link terminates soon afterward.

The password in the chat script might be incorrect.

  1. Ensure that you have the correct password for the local machine.

  2. Check the password in the chat script and fix it if it is incorrect.

  3. Try to call the peer again.

  4. If you still get the message, call the ISP and ask them for the correct login sequence.

Text from the peer begins with a tilde (~).

Your chat script supplies a user name and ssword.

ogin: pppuser
ssword: \q\U

However, the peer you intend to connect to does not prompt for this information.

  1. Delete the login and password from the chat script.

  2. Try to call the peer again.

  3. If you still get the message, call the ISP and ask them for the correct login sequence.

The modem hangs.

Your chat script contains the following line to force the local machine to wait for the CONNECT message from the peer:
CONNECT "

Use the following line when you want the chat script to wait for CONNECT from the peer:
CONNECT \c

End the chat script with ~ \c.

pppd debug output contains: LCP: timeout sending Config-Requests

Your chat script contains the following line to force the local machine to wait for the CONNECT message from the peer:
CONNECT "

Use the following line when you want the chat script to wait for CONNECT from the peer:
CONNECT \c

End the chat script with ~ \c .

pppd debug output contains: Serial link is not 8-bit clean

Your chat script contains the following line to force the local machine to wait for the CONNECT message from the peer:
CONNECT "

Use the following line when you want the chat script to wait for CONNECT from the peer:
CONNECT \c

End the chat script with ~ \c.

pppd debug output contains: Loopback detected

Your chat script contains the following line to force the local machine to wait for the CONNECT message from the peer:
CONNECT "

Use the following line when you want the chat script to wait for CONNECT from the peer:
CONNECT \c

End the chat script with ~ \c.

pppd debug output contains: SIGHUP

Your chat script contains the following line to force the local machine to wait for the CONNECT message from the peer:
CONNECT "

Use the following line when you want the chat script to wait for CONNECT from the peer:
CONNECT \c

End the chat script with ~ \c.

 
 
 
  Previous   Contents   Next