This section mentions some tips and ideas for determining why a ppp connection is not working.
If the modem is not dialing, make sure it is on, the phone line is plugged into it, and the modem serial cable is plugged into the B serial port on the back of the workstation. If the B port does not work, try the A port.
If the modem dials and a modem answers but no connection is established, then it might be helpful to get more information from aspppd. As root, edit the file /iss/etc/asppp.cf, and change the debug_level 1 line to debug_level 9. This will increase the amount of information logged to /var/adm/log/asppp.log. Run pppreset so the new setting takes effect, then as root watch the messages appended to the log file:
iss1# pppreset iss1# tail -f /var/adm/log/asppp.log |
In another terminal window, run the usual commands to bring up the connection, and log messages should appear in the asppp.log window. Of course, the log file can always be checked directly for log messages after a connection attempt. A normal sequence of log messages, beginning with the startup of the link manager by a pppreset, appears below.
20:06:37 Link manager (787) started 03/25/99 20:06:37 parse_config_file: Successful configuration 20:06:59 process_ipd_msg: ipdptp0 needs connection conn(isp) Trying entry from '/etc/uucp/Systems' - device type Sportster. Device Type Sportster wanted Trying device entry 'cua/b' from '/etc/uucp/Devices'. processdev: calling setdevcfg(ppp, Sportster) fd_mklock: ok fixline(10, 19200) gdial(usrv32-nec) called Trying caller script 'usrv32-nec' from '/etc/uucp/Dialers'. expect: ("") got it sendthem (DELAY APAUSE TE1V1X1Q0S2=255S12=255&A0&H1&M0&B0^M<NO CR>) expect: (OK^M) ATE1V1X1Q0S2=255S12=255&A0&H1&M0&B0^M^M^JOK^Mgot it sendthem (ECHO CHECK ON A^JATTDDTT1177115577662211550044^M^M<NO CR>) expect: (CONNECT) ^M^JCONNECTgot it STTY crtscts,crtsxoff getto ret 10 expect: ("") got it expect: (ogin:) ^M^J^M^Jlogin:got it sendthem (Pp1553^M) expect: (word:) Pp1553^M^JPassword:got it sendthem (Srtry8Yze^M) call cleanup(0) 20:07:37 000001 ipdptp0 RECEIVE {Unescaped characters: 0a 0d } PPP ASYNC 89 Octe ts {BAD FCS} NB (AP) {Unrecognized protocol: d 0a 50 50 50 20 73 65 73 73 69 6f 6e 20 66 72 6f 6d 20 28 34 ..... } 20:07:37 000002 ipdptp0 SEND PPP ASYNC 23 Octets LCP Config-Req ID=00 LEN=18 MR U=1500 MAG#=7432077c ProtFCOMP AddrCCOMP 20:07:37 000003 ipdptp0 RECEIVE PPP ASYNC 23 Octets NB LCP Config-ACK ID=00 LEN =18 MRU=1500 MAG#=7432077c ProtFCOMP AddrCCOMP |
The conn(isp) line indicates that the link manager is trying to connect using the isp system entry from the Systems file. After exchanging setup commands with the modem, the link manager sends the dial command and waits for a CONNECT message from the modem:
sendthem (ECHO CHECK ON A^JATTDDTT1177115577662211550044^M^M<NO CR>) expect: (CONNECT) |
Once the connection is established, the authorization exchange begins with the link manager waiting for a login prompt to appear. For each of the login and password prompts the link manager sends the appropriate response, as set in the Systems file.
expect: (ogin:) ^M^J^M^Jlogin:got it sendthem (Pp1553^M) expect: (word:) Pp1553^M^JPassword:got it sendthem (Srtry8Yze^M) |
Once finished with the debugging output from aspppd, do not forget to set the debug_level in /iss/etc/asppp.cf back down to 1, then run pppreset.
One possible problem is a mismatch with the login prompt expected from the server. If the link manager never sees a login prompt which matches any of the patterns set in the Systems file, authorization will fail. See the instructions below, Manual Logins with Kermit, to check the server's authorization prompts directly.
If the link fails with messages such as shown below, then likely the serial device is in some kind of inconsistent state. Try cycling the power on the modem, but likely you will need to just reboot the machine.
processdev: calling setdevcfg(ppp, Sportster) timed out generic open timeout set interface UNIX getto ret -1 Call Failed: CAN'T ACCESS DEVICE |
Sometimes it is helpful to attempt to log into the ppp server manually, to verify that the phone number, username, and password are correct and valid, and to check whether the server prompts match the expected patterns. The example below shows the steps to log in with the kermit terminal program.
2 iss1:/home/root# kermit -c -l /dev/cua/b -b 19200 Connecting to /dev/cua/b, speed 19200. The escape character is Ctrl-\ (ASCII 28, FS) Type the escape character followed by C to get back, or followed by ? to see other options. at OK atdt17157621504 CONNECT 19200/ARQ login: Pp1553 Password: xxxxx PPP session from (4.19.162.8) to 4.19.162.203 beginning.... |
If kermit appears to hang without printing the Connecting to message, then the problem may be the hung serial device mentioned above. If there is no OK response to the at command, then something is wrong in the modem connection, either with the cabling or with the modem itself. Otherwise, you should be able to hear the modem dial up the ISP and connect, the CONNECT message should appear, and the server should present the authorization prompts. If the server's login prompt does not match any of the patterns in /iss/etc/uucp/Systems, then that field of the isp system entry needs to be changed to match the server. For example, if for some reason the server asks
just change the pattern to you: in the isp line:
Who are you:
isp Any Sportster 19200 7621504 "" P_ZERO you: Pucar123 word: pwd123
These are valuable resources for PPP information, compiled by Charlie Martin for his memo on PPP configuration:
aspppd man page
ppp man page
Sun InfoDoc #11976: SunService Tip sheet for Sun PPP at http://sunsolve.sun.com/
Sun InfoDoc #11992: Product Support Document (PSD) Sun Routing at http://sunsolve.sun.com/
Sun InfoDoc #14251: Solstice PPP 3.0.1 and bundled PPP compared at http://sunsolve.sun.com/
Sun Bug reports article #1234898, which verifies the difficulties observed with routing, found at http://sunsolve.sun.com/