This chapter tells you how to detect and resolve problems with Solstice PPP. It includes a description of how PPP links operate, instructions on how to use ppptrace and pppstat to examine the frame traffic across the PPP link, and a description of the error and status messages logged in the file /var/opt/SUNWconn/ppp.log
If you cannot establish an IP connection across a Solstice PPP link, first check the following:
Check the physical connections between your machine and the synchronous device or modem. If you are using a modem, check that the modem is switched on and configured correctly.
Check that Solstice PPP is configured and running on your machine, by typing:
prompt% ps -ef | grep ppp root pid timestamp 0:00 /usr/sbin/pppd -d 1 root pid timestamp 0:00 /usr/sbin/pppd -d 1 |
You should see the processes associated with the PPP link manager running on your machine.
Check that the IP interfaces for Solstice PPP are configured, by typing:
prompt# ifconfig -a lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232 inet 127.0.0.1 netmask ff000000 le0: flags=863<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 129.x.x.117 netmask ffffff00 broadcast 129.x.x.255 ether 8:0:20:10:c2:b1 ipdptp0: flags=8d0<POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500 inet 129.x.x.117 --> 129.x.x.253 netmask ffffff00 ether 0:0:0:0:0:0 ipdptp1: flags=28d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> inet 129.x.x.117 --> 129.x.x.38 netmask ffffff00 ether 0:0:0:0:0:0 |
In this example, ipdptp0 is configured but is not up; ipdptp1 is both configured and up.
Check for error and status messages in the Solstice PPP log file (/var/opt/SUNWconn/ppp.log), by typing:
prompt# tail -f /var/opt/SUNWconn/ppp.log 05/31/95 22:52:48 - Link manager (17302) has started 05/31/95 05/31/95 22:52:48 - Successful configuration 05/31/95 22:54:49 - Solstice PPP 3.0 has found a valid license 05/31/95 22:55:02 - Connection requested to remote_host 05/31/95 22:55:03 - Dialing number 389 ... 05/31/95 22:55:21 - Got modem connection 05/31/95 22:56:02 - fail at line 12 in chat script chat_script |
In this example, an outgoing call has been detected, but the login sequence to the remote host failed. The error occurred at line 12 of the chat script that defines the login dialog with the remote host.
The following sections describe common problems you may encounter when installing, configuring, or using Solstice PPP.
Problem:
Cannot start pkgadd(1M).
Solution:
You must log in as root or become superuser before you can run the pkgadd.
Problem:
Cannot find the packages for Solstice PPP.
Solution:
Check that you typed the source directory correctly. If the Volume Manager (vold) is running on your machine, the Solstice PPP packages are located in /cdrom/ppp_3.0. If you are not running the Volume Manager (vold) on your machine, you need to mount the CD-ROM manually. See Solstice PPP 3.0.1 Installation Guide and Release Notes for detailed instructions.
Problem:
Cannot start the lit. Command fails with error message: permission denied.
Solution:
You must log in as root or become superuser before you can start the lit.
Problem:
Cannot start the lit. Command fails with error message: Cannot open connection to window server.
Solution:
You must enable root access to your Xserver.
prompt% $OPENWINHOME/bin/xhost + root@local_host |
Problem:
The Select Product pull-down menu does not show a license for Solstice PPP.
Solution:
Each time you install the lit package (SUNWlit) associated with a product, it overwrites any previously installed version. If you are installing several licensed products you should either ensure that you install each license before installing the next product, or you should backup the license file LIC_CONFIG_FILE.combined to safeguard the product-specific information it contains.
Problem:
The Server Options button is disabled (grayed out).
Solution:
You cannot change the license server configuration once you have installed a license server on your machine. The Server Options button is disabled and the name and hostid of the current server(s) are displayed.
Problem:
Cannot start Solstice PPP. Command fails with error: Cannot find license file
Solution:
You must install a license server and run the license installation script (LIC_CONFIG_SCRIPT) on each machine running Solstice PPP.
Problem:
Cannot start SunLink PPP. Command fails with error: Feature has expired
Solution:
Indicates that the license for Solstice PPP has expired. If the license obtained was for a demonstration copy, it is no longer valid. You must purchase a new license and obtain a new license password from the license distribution center.
Problem:
Cannot start Solstice PPP. Command fails with error: Encryption code in license file is inconsistent
Solution:
Any incorrect or missing license information (for example, number of RTUs, license password, expiration date) will disable your license when SunLink PPP attempts to establish a session. Restart the lit and re-enter the license information correctly.
Problem:
Cannot start Solstice PPP. Command fails with error: Cannot connect to licence server
Solution:
This indicates a severe problem with the license server. Check that the licence server machine is up and that the license daemon lmgrd.ste is running.
Try restarting the license daemon:
prompt# /etc/rc2.d/S85lmgrd start |
Problem:
Cannot start Solstice PPP following a system crash. Right to Use license is reported to be in use.
Solution:
If the system crashes while a licensed product is in use, the license may not be released correctly.
To check the current status of a license server:
prompt# cd /etc/opt/licenses prompt# ./lmstat -c licenses_combined lmstat - Copyright (C) 1993 Globetrotter Software Inc Flexible License Manager status on datestamp License server status: hostname: license server UP (MASTER) Vendor daemon status: lic.SUNW (version): UP Feature usage info: Users of PPP: (Total of <rtu> licenses available) |
To recover a lost license for SunLink PPP:
prompt# cd /etc/opt/licenses prompt# ./lmremove -c licenses_combined -v PPP |
Problem:
Cannot configure modem using pppinit or pppsetmod. Operation fails with the error message:
"Warning: unable to set server mode on dialup_device pppdevn for modem_name" |
Solution:
You have selected a modem configuration that does not correspond to the modem connected to your machine. Select another modem from the modem database, or add a new modem configuration to the database, based on the information contained in the manufacturer's documentation for your modem. See "Editing the Modem Database File (modems)"for help.
Problem:
Solstice PPP stops working after upgrading to Solaris 2.5.
Solution:
Solaris 2.5 creates a default file /etc/ttydefs, which overwrites some changes made by Solstice PPP. Safeguard the configuration files ppp.conf, ppp.link, and the CHAT scripts. Reinstall Solstice PPP to correct the problem.
Problem:
Cannot establish PPP link. Operation fails with the status message:
"PPP error on ip_interface: Maximum number of configure requests exceeded" |
Solution:
PPP Configure-request frames are generated to start the link establishment phase. After a certain number of frames (defined by the keyword lcp_max_restart) are generated without a valid response, the connection initiator assumes that the remote host is unreachable. This may indicate one of the following:
There is a problem with the physical connection between the two hosts. Check the cables to and from the modems at each end of the link.
PPP is not running on the remote host. Check that PPP is configured and started at both ends of the link.
The link establishment phase is not completed, because the configuration negotiation does not converge. Check for configuration problems at both ends of the link.
If you are trying to establish a link over a long-delay network, such as a satellite connection, or over a congested line, the maximum number of configure requests may be exceeded before the negotiation is completed. Increase the maximum number of configure requests sent (lcp_max_restart) and the time between retries (lcp_restart_timer). See "Defining Asynchronous Paths (dialup_path)" for detailed instructions.
Problem:
Cannot establish PPP link. Operation fails with the status message: "Authentication failed"
Solution:
The peer authentication phase failed. Check that the PAP and CHAP parameters set on the two hosts are coherent. If one host requests authentication using either PAP or CHAP, the other host must participate in the authentication phase, or the link is closed.
Problem:
Cannot establish PPP link. Operation fails with the status message: "Loop back detected"
Solution:
The PPP frames generated by the local host are being reflected by the remote host. The magic numbers contained in the PPP frames indicate a loop back condition. This may indicate one of the following:
There is a problem with the physical connection between the two hosts. Check the cables to and from the modems at each end of the link.
The UNIX login sequence is not completed successfully. Check that the login id and password set in the CHAT script are correct, and that a corresponding user account exists on the remote host. Check that the rest of the login dialog defined in the CHAT script is correct. If the remote host is not running a Solaris environment, you may need to modify the login sequence provided in the template file created by pppinit(1M).
The remote host fails to respond quickly enough, and the maximum number of configure requests is exceeded before the negotiation is completed. Increase the maximum number of configure requests sent (lcp_max_restart) and the time between retries (lcp_restart_timer). See "Defining Asynchronous Paths (dialup_path)" for detailed instructions.
Problem:
Modem dials unexpectedly, or when the machine is rebooted.
Solution:
The IP interfaces associated with asynchronous PPP links are usually marked up, by default. In this way, the PPP link manager initiates the PPP link automatically, when an IP datagram is passed to the interface by the IP layer.
Some applications and processes broadcast requests occasionally. For example, when searching for a license daemon, or when the machine is rebooted. The PPP link manager responds to the broadcast and tries to dial the remote host.
To prevent this behavior, mark the relevant IP interface down, and use pppconn(1M) to initiate connections as required. See "Establishing PPP Links" for detailed instructions.
Problem:
IP datagrams are not routed correctly across a synchronous PPP link used to connect to local area networks (LANs).
Solution:
The two hosts at the endpoints of the PPP link act as IP routers in this configuration. Ensure that the file /etc/gateways exists on each host.
Problem:
LCP negotiation fails with the error message: "PPP error on ipdptp1: Negotiation of mandatory options failed"
Solution:
Check that the IP interface used to initiate the connection, and the IP interface associated with the dialup path used to accept the connection have coherent IP addresses. The source address on host must match the destination address on the other.
Problem:
Cannot make rsh(1) or rlogin(1) connection to the remote host. Operation fails with the message "Permission denied"
Solution:
Check for the hostname, or IP address, of your local host in the files /etc/.rhosts and /etc/hosts.equiv on the remote host. A + character in these files enables access for all hosts.
There are four standard utilities, delivered either as part of the Solaris environment or in conjunction with the driver for the high-speed serial interface (hsi), that are used to test the serial devices used for synchronous links:
syncloop(1M) and syncstat(1M)
These utilities test the onboard serial interfaces (zsh0 and zsh1)
hsi_loop(1M) and hsi_stat(1M)
These utilities test the high speed serial interfaces (hihn)
Do not run syncloop or hsi_loop on a interfaces that are in use.Interfaces are in loopback mode while the tests are running, and cannot communicate with remote hosts.
There are four test options associated with syncloop and hsi_loop. Table 6-1 lists the equipment you require to run the different the test options.
Table 6-1 Equipment for syncloop and hsi_loop Test Options
Test Options |
Equipment |
---|---|
Option 1 |
None |
Option 2 |
Loopback plug |
Option 3 |
Modem(s) |
Option 4 |
Previous setup |
The ppptrace command traces the PPP frames as they are sent and received across the network. This information is the primary tool used to detect problems at the PPP link level.
See Appendix A, PPP Link Operation" for a detailed description of the various PPP frames and their significance.
The ppptrace command has the following general form:
prompt# ppptrace [--x] [ppp_link_name] |
To interpret the output from ppptrace completely, you need to be familiar with the operation of the Point-to-Point Protocol and the format of the various PPP frames. See Appendix A, PPP Link Operation for more information.
When the ppptrace command is executed without arguments it displays a trace of all the active PPP links. You can restrict the trace by specifying an IP interface, or the link name you assigned to the link using the ppp_link_name parameter in the file ppp.conf.
To display a trace of the link associated with the IP interface ipdptp0, type:
prompt# ppptrace ipdptp0 |
To display a trace of the link associated with the link name ppplink0, type:
prompt# ppptrace ppplink0 |
The basic output from a typical ppptrace has the following components:
timestamp: link_id type: description [id: xx] [length: yyyy] |
timestamp
The time at which the trace was recorded.
link_id
Identifies the link from which the trace was recorded. This may be an IP interface name (ipdptpn or ipdn) or a link name assigned using the ppp_link_name parameter in the file ppp.conf.
type
Identifies the source of the frame, which may be either sent by the local host (outgoing), or received from the remote host (incoming).
description
Describes the PPP frame type. See Appendix A, PPP Link Operation for more information.
id: xx
The contents of the id field of the PPP frame, which carries an identifier that is used to match associated requests and replies. See Appendix A, PPP Link Operation for more information.
length: yyyy
The contents of the length field of the PPP frame, which carries the total length of the information field. The length must be less than the maximum receive unit (MRU). See Appendix A, PPP Link Operation for more information.
For example, the following trace shows an LCP Configure-request packet sent by the local host. The basic trace is followed by information that describes the frame in more detail, including the magic number, which identifies the initial source of the frame and is used to detect looped back conditions. See Appendix A, PPP Link Operation for more information.
18:10:32: ipdptp0 Send: LCP Packet Config Request [id: 15] [length: 0012] Maximun Receive unit: 1500 Magic Number: 4e0d20fb Protocol Field Compression Address and Control Field Compression |
Executing the ppptrace command with the -x option dumps the contents of the PPP frames to display the hexadecimal codes.
To dump the contents of the PPP frames, type:
prompt# ppptrace -x 18:38:37: ipdptp0 Send: Internet Protocol Packet 21 45 00 00 54 86 e1 40 00 ff 01 58 9d 81 9d cc "!E..T..@...X...." 3d 81 9d cc b1 08 00 f9 4c 02 51 00 00 2f ba 26 "=.......L.Q../.&" 8d 00 01 bb 16 08 09 0a 0b 0c 0d 0e 0f 10 11 12 "................" 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 "..............!"" 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 "#$%&'()*+,-./012" 33 34 35 36 37 "34567 " |
The 21 at the beginning of the packet in this example indicates that it is an IP packet.
The following examples show how ppptrace can be used to detect and diagnose problems with a PPP link.
The following example trace shows an exchange of LPC and IPNCP packets that results in a PPP link established successfully between two hosts:
18:10:32: ipdptp0 Send: LCP Packet Config Request [id: 15] [length: 0012] Maximun Receive unit: 1500 Magic Number: 4e0d20fb Protocol Field Compression Address and Control Field Compression 18:10:32: ipdptp0 Recv: LCP Packet Config Request [id: 15] [length: 0012] Maximun Receive unit: 1500 Magic Number: 4e0d20fb Protocol Field Compression Address and Control Field Compression 18:10:32: ipdptp0 Recv: LCP Packet Config Request [id: 1c] [length: 0012] Maximun Receive unit: 1500 Magic Number: 17d1cf32 Protocol Field Compression Address and Control Field Compression 18:10:32: ipdptp0 Send: LCP Packet Config Request [id: 16] [length: 0012] Maximun Receive unit: 1500 Magic Number: 4e0d20fb Protocol Field Compression Address and Control Field Compression 18:10:32: ipdptp0 Send: LCP Packet Config Ack [id: 1c] [length: 0012] Maximun Receive unit: 1500 Magic Number: 17d1cf32 Protocol Field Compression Address and Control Field Compression 18:10:33: ipdptp0 Recv: LCP Packet Config Request [id: 1d] [length: 0012] Maximun Receive unit: 1500 Magic Number: 17d1cf32 Protocol Field Compression Address and Control Field Compression 18:10:33: ipdptp0 Send: LCP Packet Config Ack [id: 1d] [length: 0012] Maximun Receive unit: 1500 Magic Number: 17d1cf32 Protocol Field Compression Address and Control Field Compression 18:10:33: ipdptp0 Recv: LCP Packet Config Ack [id: 16] [length: 0012] Maximun Receive unit: 1500 Magic Number: 4e0d20fb Protocol Field Compression Address and Control Field Compression 18:10:33: ipdptp0 Send: NCP Packet Internet Protocol Config Request [id: 17] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.61 18:10:33: ipdptp0 Recv: NCP Packet Internet Protocol Config Request [id: 1e] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.177 18:10:33: ipdptp0 Send: NCP Packet Internet Protocol Config Ack [id: 1e] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.177 18:10:33: ipdptp0 Recv: NCP Packet Internet Protocol Config Ack [id: 17] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.61 |
The following example trace shows the sequence of events that occur at the caller side, when the caller requests CHAP authentication from a peer that is not configured to support CHAP:
11:17:41: ipdptp0 Send: LCP Packet Config Request [id: 55] [length: 0012] Maximun Receive unit: 1500 Magic Number: ae36559a Protocol Field Compression Address and Control Field Compression 11:17:42: ipdptp0 Recv: LCP Packet Config Request [id: 55] [length: 0012] Maximun Receive unit: 1500 Magic Number: ae36559a Protocol Field Compression Address and Control Field Compression 11:17:42: ipdptp0 Recv: LCP Packet Config Request [id: 0e] [length: 0017] Maximun Receive unit: 1500 Authentication protocol: CHAP using MD5 algorithm Magic Number: 3ca14856 Protocol Field Compression Address and Control Field Compression 11:17:42: ipdptp0 Send: LCP Packet Config Reject [id: 0e] [length: 0009] Authentication protocol: CHAP using MD5 algorithm 11:17:42: ipdptp0 Recv: LCP Packet Terminate Request [id: 0f] [length: 0004] 11:17:42: ipdptp0 Send: LCP Packet Terminate Ack [id: 0f] [length: 0004] 11:17:45: ipdptp0 Send: LCP Packet Config Request [id: 56] [length: 0012] Maximun Receive unit: 1500 Magic Number: ae36559a Protocol Field Compression Address and Control Field Compression 11:17:48: ipdptp0 Send: LCP Packet Config Request [id: 57] [length: 0012] Maximun Receive unit: 1500 Magic Number: ae36559a Protocol Field Compression Address and Control Field Compression . . . 11:18:09: ipdptp0 Send: LCP Packet Config Request [id: 5f] [length: 0012] Maximun Receive unit: 1500 Magic Number: ae36559a Protocol Field Compression Address and Control Field Compression |
The following example trace shows the corresponding sequence of events that occur at the answering side:
18:28:21: ipdptp0 Send: LCP Packet Config Request [id: 20] [length: 0017] Maximun Receive unit: 1500 Authentication protocol: CHAP using MD5 algorithm Magic Number: f16105df Protocol Field Compression Address and Control Field Compression 18:28:21: ipdptp0 Recv: LCP Packet Config Reject [id: 20] [length: 0009] Authentication protocol: CHAP using MD5 algorithm 18:28:21: ipdptp0 Send: LCP Packet Terminate Request [id: 21] [length: 0004] 18:28:21: ipdptp0 Recv: LCP Packet Terminate Ack [id: 21] [length: 0004] |
The following example trace shows the sequence of events that occur at the caller side, when CHAP authentication is negotiated successfully:
13:49:58: ipdptp0 Send: LCP Packet Config Request [id: 62] [length: 0012] Maximun Receive unit: 1500 Magic Number: 7bc9c0bb Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Recv: LCP Packet Config Request [id: 62] [length: 0012] Maximun Receive unit: 1500 Magic Number: 7bc9c0bb Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Recv: LCP Packet Config Request [id: 1b] [length: 0016] Maximun Receive unit: 1500 Authentication protocol: PAP Magic Number: 406bdebf Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Send: LCP Packet Config Request [id: 63] [length: 0012] Maximun Receive unit: 1500 Magic Number: 7bc9c0bb Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Send: LCP Packet Config Ack [id: 1b] [length: 0016] Maximun Receive unit: 1500 Authentication protocol: PAP Magic Number: 406bdebf Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Recv: LCP Packet Config Request [id: 1c] [length: 0016] Maximun Receive unit: 1500 Authentication protocol: PAP Magic Number: 406bdebf Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Send: LCP Packet Config Ack [id: 1c] [length: 0016] Maximun Receive unit: 1500 Authentication protocol: PAP Magic Number: 406bdebf Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Recv: LCP Packet Config Ack [id: 63] [length: 0012] Maximun Receive unit: 1500 Magic Number: 7bc9c0bb Protocol Field Compression Address and Control Field Compression 13:49:59: ipdptp0 Send: PAP Packet Authenticate Request [id: 01] [length: 0010] Peer ID: 4e 41 4d 45 (NAME) Password: 50 41 53 53 57 44 (PASSWD) 13:49:59: ipdptp0 Recv: PAP Packet Authenticate Ack [id: 01] [length: 0005] No message 13:49:59: ipdptp0 Send: NCP Packet Internet Protocol Config Request [id: 64] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.61 13:49:59: ipdptp0 Recv: NCP Packet Internet Protocol Config Request [id: 1d] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.177 13:49:59: ipdptp0 Send: NCP Packet Internet Protocol Config Ack [id: 1d] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.177 13:49:59: ipdptp0 Recv: NCP Packet Internet Protocol Config Ack [id: 64] [length: 0010] IP Compression Protocol Van Jacobson IP Address: 129.157.204.61 |
The following example trace shows a dump of the PPP frames exchanged during the successful execution of a ping(1M) command over an established PPP link:
18:38:37: ipdptp0 Send: Internet Protocol Packet 21 45 00 00 54 86 e1 40 00 ff 01 58 9d 81 9d cc "!E..T..@...X...." 3d 81 9d cc b1 08 00 f9 4c 02 51 00 00 2f ba 26 "=.......L.Q../.&" 8d 00 01 bb 16 08 09 0a 0b 0c 0d 0e 0f 10 11 12 "................" 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 "..............!"" 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 "#$%&'()*+,-./012" 33 34 35 36 37 "34567 " 18:38:37: ipdptp0 Recv: Internet Protocol Packet ff 03 00 21 45 00 00 54 ec 77 40 00 ff 01 f3 06 "...!E..T.w@....." 81 9d cc b1 81 9d cc 3d 00 00 01 4d 02 51 00 00 ".......=...M.Q.." 2f ba 26 8d 00 01 bb 16 08 09 0a 0b 0c 0d 0e 0f "/.&............." 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f "................" 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f ".!"#$%&'()*+,-./" 30 31 32 33 34 35 36 37 "01234567 " 18:38:38: ipdptp0 Send: Internet Protocol Packet 21 45 00 00 54 86 e2 40 00 ff 01 58 9c 81 9d cc "!E..T..@...X...." 3d 81 9d cc b1 08 00 3f 98 02 51 00 01 2f ba 26 "=......?..Q../.&" 8e 00 02 74 c8 08 09 0a 0b 0c 0d 0e 0f 10 11 12 "...t............" 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 "..............!"" 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 "#$%&'()*+,-./012" 33 34 35 36 37 "34567 " |
The following example trace shows a dump of the PPP frames exchanged during the successful execution of a telnet(1) command over an established PPP link:
18:40:44: ipdptp0 Send: Internet Protocol Packet 21 45 00 00 2c 86 ee 40 00 ff 06 58 b3 81 9d cc "!E..,..@...X...." 3d 81 9d cc b1 80 35 00 17 94 b9 9a 00 00 00 00 "=.....5........." 00 60 02 22 38 2a be 00 00 02 04 05 b4 ".`."8*....... " 18:40:44: ipdptp0 Recv: Internet Protocol Packet ff 03 00 21 45 00 00 2c ec 84 40 00 ff 06 f3 1c "...!E..,..@....." 81 9d cc b1 81 9d cc 3d 00 17 80 35 93 e9 98 00 ".......=...5...." 94 b9 9a 01 60 12 22 38 fe c2 00 00 02 04 05 b4 "....`."8........" 18:40:44: ipdptp0 Send: VJ Uncompressed TCP/IP Packet 2f 45 00 00 28 86 ef 40 00 ff 00 58 b6 81 9d cc "/E..(..@...X...." 3d 81 9d cc b1 80 35 00 17 94 b9 9a 01 93 e9 98 "=.....5........." 01 50 10 22 38 16 80 00 00 ".P."8.... " 18:40:44: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 17 5c ff fd 03 ff fb 18 "-..\...... " 18:40:44: ipdptp0 Recv: VJ Uncompressed TCP/IP Packet ff 03 00 2f 45 00 00 28 ec 85 40 00 ff 00 f3 1f ".../E..(..@....." 81 9d cc b1 81 9d cc 3d 00 17 80 35 93 e9 98 01 ".......=...5...." 94 b9 9a 07 50 10 22 32 16 80 00 00 "....P."2.... " 18:40:45: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 12 fe 70 06 ff fd 18 "...-..p.... " 18:40:45: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0c 16 77 03 06 "-..w.. " 18:40:45: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1f 26 52 ff fb 03 ff fa 18 01 ff f0 "...-.&R........." 18:40:45: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 14 e4 8d 09 ff fa 18 00 53 55 4e 2d 43 4d 44 "-........SUN-CMD" ff f0 ".. " 18:40:45: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 0c 16 61 0d 09 "...-..a.. " 18:40:46: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 10 7f a0 ff fb 01 ff fd 01 0d 0a 0d "...-............" 0a 55 4e 49 58 28 72 29 20 53 79 73 74 65 6d 20 ".UNIX(r).System." 56 20 52 65 6c 65 61 73 65 20 34 2e 30 20 28 62 "V.Release.4.0.(b" 6c 6f 6e 64 65 29 0d 0a 0d 00 0d 0a 0d 00 "londe)........ " 18:40:46: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 1c 18 1d 37 0d ff fd 01 ff fc 01 "-...7....... " 18:40:46: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1c b4 01 06 37 6c 6f 67 69 6e 3a 20 "...-....7login:." 18:40:46: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0c 16 1d 07 06 "-..... " 18:40:46: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1f 15 13 ff fe 01 "...-...... " 18:40:46: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 04 16 1a 03 "-.... " 18:40:53: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 a4 10 72 "-...r " 18:40:53: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1c a4 0f 01 03 72 "...-.....r " 18:40:53: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0b 16 18 "-... " 18:40:54: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 a7 0e 6f "-...o " 18:40:54: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1b a7 0d 6f "...-...o " 18:40:54: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0b 16 16 "-... " 18:40:54: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 a7 0c 6f "-...o " 18:40:54: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1b a7 0b 6f "...-...o " 18:40:55: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0b 16 14 "-... " 18:40:55: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 a2 0a 74 "-...t " 18:40:56: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1b a2 09 74 "...-...t " 18:40:56: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0b 16 12 "-... " 18:40:59: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 10 09 08 0d 00 "-..... " 18:40:59: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1c 08 fc 02 01 0d 0a "...-....... " 18:40:59: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 0b 16 0e "-... " 18:40:59: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 1f 2e 33 50 61 73 73 77 6f 72 64 3a "...-..3Password:" 20 ". " 18:40:59: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 04 16 04 0a "-.... " 18:45:46: ipdptp0 Recv: Internet Protocol Packet ff 03 00 21 45 00 00 28 ec 92 40 00 ff 06 f3 12 "...!E..(..@....." 81 9d cc b1 81 9d cc 3d 00 17 80 35 93 e9 98 5e ".......=...5...^" 94 b9 9a 20 50 11 22 38 16 03 00 00 "....P."8.... " 18:45:46: ipdptp0 Send: VJ Compressed TCP/IP Packet 2d 04 16 03 01 "-.... " 18:45:46: ipdptp0 Send: Internet Protocol Packet 21 45 00 00 28 87 02 40 00 ff 06 58 a3 81 9d cc "!E..(..@...X...." 3d 81 9d cc b1 80 35 00 17 94 b9 9a 20 93 e9 98 "=.....5........." 5f 50 11 22 38 16 02 00 00 "_P."8.... " 18:45:46: ipdptp0 Recv: VJ Compressed TCP/IP Packet ff 03 00 2d 2c 16 02 01 0b 02 "...-,..... " |
The pppstat command displays information about the number and type of IP packets and PPP frames sent or received since Solstice PPP was started. This information provides a record of link usage and can be used to highlight problems with the network.
See Appendix A, PPP Link Operation" for a detailed description of the various PPP frames and their significance.
The pppstat command has the following general form:
prompt# pppstat [-i] [-e] [-l] [-n] [ppp_link_name] |
Executing the pppstat command with the -i option displays information about the IP packets sent and received since Solstice PPP was started. A single IP datagram is encapsulated in each PPP frame.
prompt# pppstat -i IP status for PPP MIB link number 1 33 IP packets in (1500 octets total) 38 IP packets out (366 octets total) 2 packets in TYPE IP 3 packets in TYPE VJ UNCOMPRESSED 28 packets in TYPE VJ COMPRESSED 2 packets out TYPE IP 3 packets out TYPE VJ UNCOMPRESSED 33 packets out TYPE VJ COMPRESSED |
Executing the pppstat command with the -e option displays information about the PPP error frames sent and received since Solstice PPP was started.
prompt# pppstat -e Errors status for PPP MIB link number 1 0 bad HDLC address fields, last was 0x00 0 bad HDLC control fields, last was 0x00 0 frames received with invalid protocol id, last was 0x0000 0 packets exceeded local maximum receive unit 0 packets were too short to be valid 0 packets had headers which were too short 0 packets received with bad CRC 1 Configure Request packets retransmitted due to timeout 0 Terminate Request packets retransmitted due to timeout |
Executing the pppstat command with the -l option displays information about the PPP LCP (link control protocol) frames sent and received since Solstice PPP was started.
prompt# pppstat -l LCP status for PPP MIB link number 1 4 LCP packets in (72 octets) 4 LCP packets out (72 octets) 0 LCP protocol rejects 2 LCP Configure Requests sent 3 LCP Configure Requests received 2 LCP Configure Acks sent 1 LCP Configure Acks received 0 LCP Configure Naks sent 0 LCP Configure Naks received 0 LCP Configure Rejs sent 0 LCP Configure Rejs received 0 LCP Terminate Requests sent 0 LCP Terminate Requests received 0 LCP Terminate Acks sent 0 LCP Terminate Acks received 0 LCP Code Rejects sent 0 LCP Code Rejects received 0 LCP Echo Requests sent 0 LCP Echo Requests received 0 LCP Echo Responses sent 0 LCP Echo Responses received 0 LCP Disconnect Reqs sent 0 LCP Disconnect Reqs received |
Executing the pppstat command with the -n option displays information about the IP NCP (network control protocol) frames sent and received since Solstice PPP was started.
prompt# pppstat -n IPNCP status for PPP MIB link number 1 3 IPNCP packets in (42 octets) 3 IPNCP packets out (48 octets) 0 IPNCP protocol rejects 2 IPNCP Configure Requests sent 1 IPNCP Configure Reqs received 1 IPNCP Configure Acks sent 1 IPNCP Configure Acks received 0 IPNCP Configure Naks sent 1 IPNCP Configure Naks received 0 IPNCP Configure Rejs sent 0 IPNCP Configure Rejs received 0 IPNCP Terminate Requests sent 0 IPNCP Terminate Reqs received 0 IPNCP Terminate Acks sent 0 IPNCP Terminate Acks received 0 IPNCP Code Rejects sent 0 IPNCP Code Rejects received 0 IPNCP Echo Requests sent 0 IPNCP Echo Requests received 0 IPNCP Echo Responses sent 0 IPNCP Echo Responses received 0 IPNCP Disconnect Reqs sent 0 IPNCP Disconnect Reqs received |
IP routing is a common source of problems with products such as Solstice PPP, which implement IP connections over PPP links. To detect problems with IP routing:
Check the protocol status, using ifconfig(1M)
Check the IP connectivity, using ping(1M)
Check the routing tables, using netstat(1M)
Check the packet flow, using snoop(1M)
Use ifconfig(1M) to check that the IP interfaces for Solstice PPP are configured, by typing:
prompt# /usr/sbin/ifconfig -a lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232 inet 127.0.0.1 netmask ff000000 le0: flags=863<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 129.x.x.117 netmask ffffff00 broadcast 129.x.x.255 ether 8:0:20:10:c2:b1 ipdptp0: flags=8d0<POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500 inet 129.x.x.117 --> 129.x.x.253 netmask ffffff00 ether 0:0:0:0:0:0 ipdptp1: flags=28d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> inet 129.x.x.117 --> 129.x.x.38 netmask ffffff00 ether 0:0:0:0:0:0 |
Use ping(1M) to check that you can reach a remote host, by typing:
prompt# /usr/sbin/ping -r remote_host |
Follow the status of the connection in the file /var/opt/SUNWconn/ppp.log. If the LCP negotiation fails with the message "PPP error on ipdptp1: Negotiation of mandatory options failed", the IP addresses used for the interfaces at each end of the link may not be coherent.
Use netstat(1M) to check the network addresses of the local and remote hosts, by typing:
prompt# /usr/sbin/netstat -i lo0 8232 loopback localhost 4631890 0 4631890 0 0 0 le0 1500 lab local 5370160 15 2153627 273 430451 0 ipdptp0 1500 remote local 0 0 0 0 0 0 |
Check that the local and remote addresses are correct. Hostnames must be resolved as IP addresses in either the local file /etc/hosts, or by a naming service (NIS/NIS+ or DNS). IP interfaces for synchronous links are initialized by Solstice PPP before the naming services are available; therefore the hostname for these files must be resolved in /etc/hosts.
Use netstat(1M) to check the routing table, by typing:
prompt# /usr/sbin/netstat -r |
If the routing table does not include the expected routes, check that the routing daemon in.routed is running on your machine, by typing:
prompt# ps -ef | grep in.routed owner 12481 3812 7 23:06:08 pts/6 0:00 grep in.routed |
Use snoop(1M) to check that packets are being transmitted. For example:
prompt# /usr/sbin/snoop -d ipdptp0 local -> remote RSHELL C port=1017 >0 'H ![ ? local -> remote RSHELL C port=1017 ,(!\nM/ local -> remote RSHELL C port=1017 Y@#K / ]0#Z ] 'Z local -> remote RSHELL C port=1017 .?;-)P3O89, " 2 H8" local -> remote RSHELL C port=1017 @ \#\ . . . |
Error and status messages for Solstice PPP are written to the log file /var/opt/SUNWconn/ppp.log. See "Status and Error Messages" for a complete list of the messages which may appear in the log file.
The log file can grow very large and should be truncated regularily.
The following log file extract shows the messages logged when Solstice PPP is started successfully on a client, and a connection to a remote server is opened and then disconnected:
11/14/95 15:32:55 - Link manager (904) has started 11/14/95 11/14/95 15:32:55 - Successful configuration 11/14/95 15:33:06 - Connection requested to miles 11/14/95 15:33:07 - Dialing number P365 ... 11/14/95 15:33:40 - Got modem connection 11/14/95 15:33:42 - LCP up on ipdptp0 11/14/95 15:33:42 - IP_NCP up on ipdptp0 11/14/95 15:33:42 - IP up on interface ipdptp0, with timeout set to 120 seconds 11/14/95 15:35:41 - Disconnect indication on ipdptp0 11/14/95 15:35:41 - IP_NCP down on ipdptp0 11/14/95 15:35:42 - LCP down on ipdptp0 |
The corresponding log file on the server shows the messages logged when the incoming connection is accepted and then disconnected:
11/14/95 15:28:58 - Received a call on pppdev0 11/14/95 15:28:59 - Using dialup_path with expect_login_id ppp2 11/14/95 15:28:59 - LCP up on ipdptp0 11/14/95 15:28:59 - IP_NCP up on ipdptp0 11/14/95 15:29:00 - IP up on interface ipdptp0, with timeout set to 120 seconds 11/14/95 15:30:59 - interface ipdptp0 has been disconnected 11/14/95 15:30:59 - Device pppdev0 has been disconnected |
When Solstice PPP is started, it reads the configuration files that you created using the configuration script pppinit. If these files do not exist, Solstice PPP displays the following message:
starting ppp (not configured) |
The following log file extract shows the log messages that are generated when one of the configuration files contains an error:
11/13/95 18:53:22 - Link manager (460) has started 11/13/95 11/13/95 18:53:22 - parse_config_file: unrecognized symbol nactivity_timeout 11/13/95 18:53:22 - parse_config_file: unrecognized symbol 180 11/13/95 18:53:22 parse_config_file: Errors in configuration file /etc/opt/SUNWconn/ppp/ppp.conf |
In this example, there is an unrecognised keyword contained in the file ppp.conf, which is rejected when the file is parsed. Check the configuration files for typographical errors and illegal values assigned to keywords. Restart Solstice PPP to read the configuration.
The first step in the connection phase is the modem connection. The client dials the telephone number of the modem connected to the server, and the two modems communicate to set up the connection.
The following log file extract shows the log messages that are generated when a client fails in an attempt to establish the modem connection:
11/13/95 19:57:44 - Connection requested to miles 11/13/95 19:57:45 - Dialing number P365 ... 11/13/95 19:58:09 - remote host is busy |
The connection request never reaches the server; therefore, there are no corresponding messages in the log file on the server.
The message remote host is busy is displayed whenever the client fails to make the modem connection. This may mean that the server modem is already in use by another client, or that it has failed to terminate a previous connection cleanly. It may also mean that there is a problem with the equipment. In this example, the error was provoked by using tone dialing with an office exchange that expected pulse dialing.
Try telephoning the number directly to make sure that you can reach the modem. If you cannot reach the modem, check the telephone number the client is dialing.
The CHAT scrip is executed automatically each time a client initiates a call. It is used to exchange information with the server during the connection phase.
The following log file extract shows the log messages generated when the client did not receive the response it expected from the server:
11/14/95 15:38:52 - Connection requested to miles 11/14/95 15:38:53 - Dialing number P365 ... 11/14/95 15:39:35 - Got modem connection 11/14/95 15:39:53 - Timeout expired 11/14/95 15:40:03 - Timeout expired 11/14/95 15:40:13 - Timeout expired 11/14/95 15:40:23 - Timeout expired 11/14/95 15:40:23 - fail at line 18 in chat script /etc/opt/ SUNWconn/ppp/script/miles.scr |
The following log file extract shows the log messages generated when the client did not send the response expected by the server:
11/14/95 15:58:03 - Connection requested to miles 11/14/95 15:58:04 - Dialing number P365 ... 11/14/95 15:58:37 - Got modem connection 11/14/95 15:59:16 - Timeout expired 11/14/95 15:59:16 - fail at line 25 in chat script /etc/opt/ SUNWconn/ppp/script/miles.scr |
In some circumstances, an error in the CHAT script can provoke a loopback condition when the login sequence is not completed successfully. The following log file extract show the error messages generated by a loopback condition:
11/14/95 15:45:05 - Connection requested to miles 11/14/95 15:45:06 - Dialing number P365 ... 11/14/95 15:45:42 - Got modem connection 11/14/95 15:45:58 - PPP error on ipdptp0: Loop back detected 11/14/95 15:45:58 - Check if your connect script is correct. 11/14/95 15:45:58 - Or PPP may not be started on the remote host |
Once you have a modem connection and completed the login phase, the next step in the connection phase is the PPP negotiation. The client and the server communicate to negotiate a common configuration for the PPP link. The policy is to converge if at all possible; however, failure to agree on certain mandatory parameters will cause the negotiation to fail, as shown in the following log file extract:
11/13/95 20:34:42 - Connection requested to miles 11/13/95 20:34:43 - Dialing number P365 ... 11/13/95 20:35:16 - Got modem connection 11/13/95 20:35:19 - LCP up on ipdptp0 11/13/95 20:35:19 - PPP error on ipdptp0: Negotiation of mandatory options failed |
The following log file extract shows what happens when a client fails to respond to a request for authentication:
11/14/95 10:22:41 - Connection requested to miles 11/14/95 10:22:42 - Dialing number P365 ... 11/14/95 10:23:16 - Got modem connection 11/14/95 10:23:47 - PPP error on ipdptp0: Maximum number of configure requests exceeded |
In this example, the server requested PAP authentication and the client rejected the request. After a specified number of requests, the server broke the connection without starting the PPP negotiation.
The following log file extract shows what happens when the client responds to the request for authentication with the wrong password:
11/14/95 15:20:04 - Connection requested to miles 11/14/95 15:20:04 - Dialing number P365 ... 11/14/95 15:20:09 - Got modem connection 11/14/95 15:20:09 - LCP up on ipdptp0 11/14/95 15:20:09 - PPP error on ipdptp0: Negotiation of mandatory options failed |
In both cases, the server sees a failed PPP negotiation and generates the following log file messages:
11/14/95 15:20:08 - Received a call on pppdev0 11/14/95 15:20:09 - Using dialup_path with expect_login_id ppp2 11/14/95 15:20:09 - PPP error on ipdptp0: Negotiation of mandatory options failed 11/14/95 15:20:09 - Device pppdev0 has been disconnected |
The inactivity timeout closes the connection automatically when it remains unused for a specified number of seconds. This means that you do not pay for telephone connections that are left open accidently. However, if the inactivity timeout is too short, your connection may be closed prematurely.
The following log file extract shows an inactivity timeout triggered by the client after 60 seconds:
11/13/95 18:00:03 - IP up on interface ipdptp0, with timeout set to 60 seconds 11/13/95 18:00:14 - Interface ipdptp0 has timed out |
If the connection times out systematically, increase the inactivity timeout for calls to the server.
The following log file extract shows a connection that has been disconnected by the server for some reason. One possible cause is an inactivity timeout on the server that is shorter than the inactivity timeout on the client. It may also have been caused by a normal disconnect request from the server side.
11/13/95 18:13:46 - IP up on interface ipdptp0, with timeout set to 240 seconds 11/13/95 18:15:47 - interface ipdptp0 has been disconnected |
The following sections list the status messages and most common error messages that appear in the log file /var/opt/SUNWconn/ppp.log.
The log file can grow very large and should be truncated regularily.
To display the messages logged in ppp.log, type:
prompt% tail -f /var/opt/SUNWconn/ppp.log |
The following status messages trace the progress of successful IP connections over PPP links, and are displayed during normal link operation. They may also indicate problems that occur as a result of configurations errors.
add_default_route:default route not allowed on ipd device
The keyword default_route is not allowed in path definitions associated with point-to-multipoint (ipdn) IP interfaces.
Check that the connect script is correct, or PPP may not be started on the remote host
Indicates that the link manager failed to establish a PPP link to the remote host. This may be because PPP is not running on the remote host, or it may indicate that there is an error in the login dialog defined in the connect script. Check that there is a valid login id and password contained in the script, and that a corresponding user account exists on the remote host. If the remote host is not running Solaris, you may need to change other components in the login dialog. See "Editing the CHAT (or Connect) Scripts" for detailed instructions.
Connection closed on ip_interface
Indicates that an IP connection for the specified interface (ipdn or ipdptpn) was closed normally, following a terminate request from either the local or the remote host.
Connection requested to remote_host
Indicates that the link manager received a request for an IP connection to the specified remote host. The remote host must be defined in the file link.conf.
Device unix_device has been disconnected
Indicates that the modem connection has been closed normally, following a disconnect request generated by one of the endpoints in the link.
Dialing number phone_number ...
Indicates that the modem is dialing the specified number to establish a physical connection to the remote host.
Dialup_path login_id already used for another connection
Indicates that two remote hosts, using the same login id, have made simultaneous connections. Only one connection can be treated at a time.
Dialup_path not defined for outgoing call
Indicates that there is no remote host associated with the dialup path definition that is being used in an attempt to initiate a connection. Modify the dialup path definition in the file ppp.conf to add a remote host, and add a corresponding remote host definition to the file link.conf, if necessary.
Disconnect indication on ip_interface
Indicates that a PPP terminate request was generated by one of the endpoints in the link. This usually indicates a normal disconnection following the expiry of the inactivity timeout, for example.
Got modem connection
Indicates that the modem has completed dialing successfully and that the physical connection has been established.
Host [remote_host] not found in the host list
Indicates that the link manager is trying to establish a connection to a remote host that is not defined in the file link.conf. Check that the remote_host keyword in the dialup path definition points to a valid remote host definition.
Host remote_host is not available
Indicates that the remote host could not be accessed for some reason. It may indicate that the remote device is busy.
IP up on interface ip_interface, with timeout set to timeout
Indicates that an IP connection has been established successfully for the specified interface (ipdn or ipdptpn). The IP connection will be closed automatically after timeout seconds of inactivity, or earlier if the inactivity timeout set at the remote end of the connection is set to a lower value.
IP up on ip_interface
Indicates that the IP layer for the specified IP interface (ipdn or ipdptpn) has been configured and brought up. The IP connection has been completed successfully, and the timeout has been set to zero. The IP connection will remain open until closed explicitly, by stopping Solstice PPP or running pppdisc(1M).
IP_NCP down on ip_interface
Indicates that the IP network control protocol (NCP) layer for the specified interface (ipdn or ipdptpn) has been brought down. This may be due to a termination request generated by either host.
IP_NCP up on ip_interface
Indicates that the IP network control protocol (NCP) layer for the specified IP interface (ipdn or ipdptpn) has been configured and brought up. See Appendix A, PPP Link Operation" for more information about this phase of the PPP link negotiation.
Interface ip_interface has timed out
Indicates that the specified IP interface (ipdn or ipdptpn) has been closed automatically after the inactivity timeout at one end of the link has expired.
Invalid empty name for chat script
Indicates that there is no CHAT script defined in the file link.conf for this remote host. You must create a unique CHAT script for each remote host to which the local host will initiate connections. See "Editing the CHAT (or Connect) Scripts" for detailed instructions.
LCP down on ip_interface
Indicates that the link control protocol (LCP) layer for the specified IP interface (ipdn or ipdptpn) has been brought down. This may be due to a termination request generated by either host.
LCP up on ip_interface
Indicates that the link control protocol (LCP) layer for the specified IP interface (ipdn or ipdptpn) has been configured and brought up. See Appendix A, PPP Link Operation" for more information about this phase of the PPP link negotiation.
License manager has exited
Indicates that there is a problem with the license system. Check that the license daemon is configured and running.
Link manager (pid) has started date
Indicates that the PPP link manager has been configured and started successfully.
No device available for ip_interface
Indicates that all there are no more modems available. This is normally a temporary situation, which occurs when there are more IP connections requested than there are modems.
PPP error on ip_interface: reason
Indicates that an error occurred during either the link establishment, or the peer authentication phase. The reason for the error is given as part of the error message. Use ppptrace(1M) for further diagnosis.
Received incoming call while dialing
Indicates that the local host received a connection request from a remote host, while it was attempting to initiate an outgoing call on the same modem. This message is displayed for information only, local host will continue it call.
Received a call on ip_interface
Indicates that the local host accepted an incoming connection for the specified IP interface (ipdn or ipdptpn).
Remote host is busy
Indicates that the call could not be completed because the remote modem is already being used for another connection.
Resetting the modem to server mode
Indicates that the program pppsetmod(1M) has been used to initialize the modem in server (or answer) mode so that it waits for incoming connections. This programs sends the server string contained in the modems database file /etc/opt/SUNWconn/ppp/modems.
Successful configuration
Indicates that the configuration files ppp.conf and link.conf were parsed successfully when Solstice PPP was started.
PPP has found a valid license
Indicates that the license daemon is running and that Solstice PPP has been given a license token.
PPP is waiting to get a license
Indicates that the license daemon is running, but that has assigned all the available license tokens to other users. PPP is waiting for a token to be released.
Timeout expired
Indicates that the IP connection has been inactive for the number of seconds defined by the inactivity_timeout parameter (default 120 seconds). The connection is closed automatically.
Unable to find the required expect_login_id login_id
Indicates that the PPP login service has accepted an incoming connection, following a successful UNIX login sequence, but that the link manager has not found a dialup path definition in the file ppp.conf with a expect_login_id parameter that matches the login id sent by the remote host.
Unable to get license, PPP exiting
Indicates that Solstice PPP was unable to get a license token from the license daemon after a certain number of retries. Check that the license daemon is installed correctly and running. If the license daemon is not running on the same machine as Solstice PPP, check that there is a network connection that allows access to the daemon.
Unable to regain license, PPP closing down
Indicates that Solstice PPP lost the license token was unable to get it back after a certain number of retries. Check that the license daemon is still running.
Using dialup_path with expect_login_id login_id
Indicates that the PPP login service has accepted an incoming connection, following a successful UNIX login sequence, and that the link manager has identified the corresponding dialup path definition.
The following configuration error messages are displayed if errors are encountered when the PPP path configuration file ppp.conf is parsed. In all cases, you should modify the file to correct the error and restart Solstice PPP to correct the problem.
expect_chap_name "name" ends in CR/LF
Indicates that the specified CHAP name is terminated with a carriage return (CR) or line-feed (LF) escape sequence.
expect_chap_name "name" ends in NUL
Indicates that the specified CHAP name is terminated with a NULL character.
default_route: no path defined
Indicates that the specified default_route keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
host IP address not found: hostname
Indicates that the parser was unable to resolve specified hostname to find the IP address. For a synchronous path, the hostname must be associated with an IP address in the file /etc/hosts on the local machine. For an asynchronous path, the hostname may appear in the file /etc/hosts, or be specified by some other naming system.
inactivity_timeout string not recognized
Indicates that the specifies string is not a valid value for the inactivity_timeout parameter. You must enter an integer.
inactivity_timeout: no path defined
Indicates that the specified inactivity_timeout keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
interface number n not recognized
Indicates that the specified number does not correspond to any of the IP interfaces defined in the configuration file.
invalid ip_interface: string
Indicates that the specified string does not correspond to a valid point-to-point (ipdptpn) or point-to-multipoint (ipdn) IP interface.
ip_interface: no path defined
Indicates that the specified ip_interface keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
ipcp_compression value string not recognized
Indicates that the specifies string is not a valid value for the ipcp_compression parameter. Valid values are vj (enabled) and off (disabled).
ipcp_compression: no path defined
Indicates that the specified inactivity_timeout keyword appears in the configuration file, but is not associated with any dialup path definition.
ipd or ipdptp keyword expected
Indicates that the ip_interface keyword appears without specifying a valid point-to-point (ipdptpn) or point-to-multipoint (ipdn) IP interface.
lcp_async_map value string not recognized
Indicates that the specifies string is not a valid value for the lcp_async_map parameter. You must enter a hexadecimal value between 0x0 and 0xffffffff.
lcp_async_map: no path defined
Indicates that the specified lcp_async_map keyword appears in the configuration file, but is not associated with any dialup path definition.
lcp_compression value string not recognized
Indicates that the specifies string is not a valid value for the lcp_compression parameter. Valid values are on (enabled) and off (disabled).
lcp_compression: no path defined
Indicates that the specified lcp_compression keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
lcp_max_restart value string not recognized
Indicates that the specifies string is not a valid value for the lcp_max_restart parameter. You must enter an integer between 1 and 255.
lcp_max_restart: no path defined
Indicates that the specified lcp_max_restart keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
lcp_mru value string not recognized
Indicates that the specifies string is not a valid value for the lcp_mru parameter. You must enter an integer between 1 and 255.
lcp_mru: no path defined
Indicates that the specified lcp_mru keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
lcp_restart_timer value string not recognized
Indicates that the specifies string is not a valid value for the lcp_restart_timer parameter. You must enter an integer.
lcp_restart_timer: no path defined
Indicates that the specified lcp_restart_timer keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
link_monitor value string not recognized
Indicates that the specifies string is not a valid value for the link_monitor parameter. Valid values are on (enabled) and off (disabled).
link_monitor: no path defined
Indicates that the specified link_monitor keyword appears in the configuration file, but is not associated with any synchronous path definition.
link_monitor_retries value string not recognized
Indicates that the specified string is not a valid value for the link_monitor_retries parameter. You must enter an integer.
link_monitor_retries: no path defined
Indicates that the specified link_monitor_retries keyword appears in the configuration file, but is not associated with any synchronous path definition.
link_monitor_timer value string not recognized
Indicates that the specified string is not a valid value for the link_monitor_timer parameter. You must enter an integer.
link_monitor_timer: no path defined
Indicates that the specified link_monitor_timer keyword appears in the configuration file, but is not associated with any synchronous path definition.
malformed ip address: string
Indicates that the specified string is not a valid IP address, entered in Internet dot notation. IP addresses should have the form: xxx.xxx.xxx.xxx
must specify chap_own_secret
Indicates that the send_authentication keyword has been used to enable CHAP authentication when requested by a remote host, but that the mandatory CHAP parameter chap_own_secret has not been set.
must specify chap_peer_secret
Indicates that the send_authentication keyword has been used to enable CHAP authentication when requested by a remote host, but that the mandatory CHAP parameter chap_peer_secret has not been set.
must specify expect_chap_name
Indicates that the expect_authentication keyword has been used to request CHAP authentication from a remote host, but that the mandatory CHAP parameter expect_chap_name has not been set.
must specify send_chap_name
Indicates that the send_authentication keyword has been used to request CHAP authentication from a remote host, but that the mandatory CHAP parameter send_chap_name has not been set.
no paths defined in filename
The PPP path configuration file ppp.conf must contain at least one synchronous or asynchronous path definition. See "Editing the PPP Path Configuration File (ppp.conf)" for detailed instructions.
off, pap, or chap required: string
Indicates that the specified string is not a valid value for the expect_authentication parameter. Valid values are off (no authentication), pap (authentication using PAP), chap (authentication using CHAP), or pap|chap (authentication using both PAP and CHAP).
ppp_link_name: no path defined
Indicates that the specified ppp_link_name keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
remote_host too long: string
Indicates that there was not enough memory available to store the value of the remote_host parameter. This error message may indicate a more serious system error.
remote_host: no path defined
Indicates that the specified remote_host keyword appears in the configuration file, but is not associated with any dialup path definition.
remote_ip_addr: no path defined
Indicates that the specified remote_ip_addr keyword appears in the configuration file, but is not associated with any dialup path definition.
request_ip_addr value string not recognized
Indicates that the specifies string is not a valid value for the request_ip_addr parameter. Valid values are on (enabled) and off (disabled).
unix_device: no path defined
Indicates that the specified unix_device keyword appears in the configuration file, but is not associated with any synchronous or dialup path definition.
wildcards (* | ?) not legal for ipd
You cannot use wildcards to specify point-to-multipoint (ipdn) interfaces. In particular, you cannot use an asterisk (*) to specify a dynamic IP interface.
System error messages indicate severe system or software errors, and should not appear during normal operation. They have the following form:
function_name: error_description failed |
For example, the following system error indicates a memory allocation problem:
do_chap_name: malloc failed |
If system errors occur, try stopping and restarting Solstice PPP. If system errors continue to occur systematically, contact your authorized service provider, and provide a description of the error message and the circumstances under which it is displayed.
The following files and directories are created on your machine when you install Solstice PPP using the default base directories.
Contains the device drivers for the Solstice PPP STREAMS module, connection manager, point-to-point and point-to-multipoint IP interfaces.
Table 6-2 Solstice PPP Device Drivers (SUNWpppk)
Files and Directories |
Description |
---|---|
/usr/kernel/drv/ipd |
Driver for IP point-to-multipoint interfaces |
/usr/kernel/drv/ipd.conf |
Configuration file for ipd |
/usr/kernel/drv/ipdcm |
Connection manager daemon |
/usr/kernel/drv/ipdcm.conf |
Configuration file for ipdcm |
/usr/kernel/drv/ipdptp |
Driver for IP point-to-point interfaces |
/usr/kernel/drv/ipdptp.conf |
Configuration file for ipdptp |
/usr/kernel/drv/ppp |
PPP STREAMS module |
/usr/kernel/drv/ppp.conf |
Configuration file for ppp |
Contains the PPP login service daemon and connection process to support incoming calls. This package should only be installed if you have also purchased alicense for Solstice PPP to enable the server functionality.
Table 6-3 Solstice PPP Daemon and User Programs (SUNWpppu)
Files and Directories |
Description |
---|---|
/usr/bin/pppin |
Connection process for incoming calls |
/usr/sbin/pppls |
PPP login service daemon |
Contains the PPP link manager daemon, and the Solstice PPP scripts and utilities.
Table 6-4 Solstice PPP Daemon and User Programs (SUNWpppu)
Files and Directories |
Description |
---|---|
/usr/bin/pppconn |
PPP connection program |
/usr/bin/pppdisc |
PPP disconnection program |
/usr/bin/pppinit |
PPP initialization script |
/usr/bin/pppsetmod |
Modem configuration program |
/usr/bin/pppstat |
Statistics collection utility |
/usr/bin/ppptrace |
Trace utility |
/usr/sbin/pppd |
Link manager daemon |
/usr/sbin/ppptool |
GUI for connect and disconnect |
Contains the initialization scripts and template configuration files for Solstice PPP.
Table 6-5 Solstice PPP Configuration Files (SUNWpppr)
Files and Directories |
Description |
---|---|
/etc/opt/SUNWconn/ppp/modems |
Modems database file |
/etc/opt/SUNWconn/ppp/ppp.conf |
Template PPP path configuration file |
/etc/opt/SUNWconn/ppp/script/template |
Template CHAT script |
/etc/init.d/ppp |
Initialization script for Solstice PPP |
/etc/rc1.d/K48ppp |
Symbolic link to /etc/init.d/ppp |
/etc/rc2.d/S48ppp |
Symbolic link to /etc/init.d/ppp |
/etc/opt/SUNWconn/ppp/bitmaps |
Icons for ppptool |
Contains the product specific man pages for Solstice PPP.
Table 6-6 Solstice PPP Man Pages (SUNWpppm)
Files and Directories |
Description |
---|---|
/usr/share/man/man4/ppp.conf |
Man page for ppp.conf |
/usr/share/man/man4/link.conf |
Man page for link.conf |
/usr/share/man/man4/modems |
Man page for modem database |
/usr/share/man/man1m/pppinit |
Man page for pppinit |
/usr/share/man/man1m/pppconn |
Man page for pppconn |
/usr/share/man/man1m/pppdisc |
Man page for pppdisc |
/usr/share/man/man1m/pppsetmod |
Man page for pppsetmod |
/usr/share/man/man1m/pppd |
Man page for pppd |
/usr/share/man/man1m/pppls |
Man page for pppls |
/usr/share/man/man1m/pppin |
Man page for pppin |
/usr/share/man/man1m/pppstat |
Man page for pppstat |
/usr/share/man/man1m/ppptrace |
Man page for ppptrace |
/usr/share/man/man7/ipd |
Man page for PPP ptm IP interface |
/usr/share/man/man7/ipdcm |
Man page for PPP connection mgr |
/usr/share/man/man7/ipdptp |
Man page for PPP ptp IP interface |
/usr/share/man/man7/ppp |
Man page for PPP daemon |
The AnswerBook package SUNWabppp, which contains the on-line documentation for Solstice PPP can be installed on your local machine, on a server, or mounted from CD-ROM.
Solstice PPP modifies the file /etc/ttydefs when it is installed. These changes may be overwritten if you install another version of the operating system.