Previous Next Contents

13. Other messages written to the system log

13.1 Alarm

This is not a problem. It means that a timer has expired. Timers are a necessary part of the protocol establishment phase.

13.2 SIGHUP

The pppd process has received a HUP signal. The HUP signal is generated by the tty software when the remote system has disconnected the modem link. It means that the modem has put the 'telephone receiver back on the hook', or, 'Hung UP' the connection.

The kill program may also be used to send this signal to the pppd process.

The pppd process will terminate the link in an orderly fashion when it receives this signal.

13.3 SIGINT

The pppd process has received an INT signal. The INT signal is generated by the console software when you press the Ctrl-C key combination and pppd is the foreground process.

The kill program may also be used to send this signal to the pppd process. In fact, the recommended method to terminate the pppd link is to send the process an INT. See the question relating to "dip -k" for a script which will perform this task.

The pppd process will terminate the link in an orderly fashion when it receives this signal.

13.4 Unknown protocol (c025) received!.

The remote wishes to exchange Link Quality Reporting protocol with the Linux system. This protocol is presently not supported. This is not an error. It is merely saying that it has received the request and will tell the remote that "I can't do this now. Don't bother me with this!"

The Morning Star PPP package will always try to do LQR protocol. This is normal.

13.5 Unknown protocol (80fd) received!.

The remote wishes to exchange Compression Control Protocol with the Linux system. This type of protocol is layered upon the basic data protocol and will, if successfully negotiated, result in a fewer number of bytes transmitted for the frame. This means that the transfer will be quicker.

However, there are many types of compressors which are used under the general 'umbrella' of a Compression Control Protocol. The 2.2 PPP package understands only one; the BSD compressor. This compressor works very similar to the Unix 'compress' program and uses a LZW compressor. Depending upon the size of the code, there can be a significant amount of kernel space needed to hold the compression and decompression dictionaries. This should not be used if you have a limited memory space and should not even be contemplated if you have 8Meg or less real (RAM) memory. In those cases you should invest in a decent modem which support compression.

Unless both sides can agree upon the type of compression the compression will not be used.

Another common compressor is called Predictor-1. This will take less memory and run faster. However, its compression is not as good in that it will send a little more data than the equivalent frame given to the BSD compressor.

Many commerical terminal servers will employ a compressor called "Stacker(TM) LZW" or LZS protocol. This is a commerical compression agent. Apparently Stacker will give you a license for no charge. However, a specific license isrequired and that will usually prevent it being included with the pppd process.

13.6 The connection fails with errors "ioctl(TIOCGETD): I/O error" or "ioctl(PPPIOCSINPSIG): I/O error". What now?

Look at the boot messages when you boot the kernel. If it says "PPP version 0.1.2" then you have an old version of the PPP.c driver.

If it says "PPP version 0.2.7" then you have the current driver, for the 2.1.2 package however, it was not built with the same set of defines for the ioctl numbers. Ensure that you have only one file called "if_ppp.h". It should be located in the kernel's include/linux directory. Once you have done this, rebuild the kernel and the pppd process.

If it says "PPP version 2.2.0" then you are using the driver for the 2.2.0 package. This version of the driver will only work with the 2.2 series of the pppd package. The 2.2 pppd program will only work with this version of the driver.

13.7 Sometimes the messages "ioctl(PPPIOCGDEBUG): I/O error", "ioctl(TIOCSETD): I/O error" and "ioctl(TIOCNXCL): I/O error" occur. Why?

The remote system has disconnected the telephone. The tty drivers will re-establish the proper tty discipline and these errors are the result of the pppd process trying to do the same thing. These are to be expected.

13.8 My ifconfig has strange output for PPP.

Usually the ifconfig program reports information similar to the following:

ppp0      Link encap UNSPEC  HWaddr 00-00-00-00-00-00-00 ...
          inet addr 192.76.32.2  P-t-P 129.67.1.65  Mask 255.255.255.0
          UP POINTOPOINT RUNNING  MTU 1500  Metric 1

The information is for display purposes only. If you are using a recent kernel then update the nettools package with the current one on sunacm.swan.ac.uk in the directory /pub/Linux/networking/nettools.

13.9 The file /proc/net/dev seems to be empty

Did you just issue the command "ls -l /proc/net" and are wondering why the size is zero? If so, this is normal. Instead, issue the command:

cat /proc/net/dev

You should not find the file empty. The size is always shown as zero, but that is the 'proc' file system. Don't believe the size. Do the command.

The 'more', 'less', and 'most' programs may not be used to view the file directly. If you wish to use these programs, use it as follows:

cat /proc/net/dev | less

13.10 The kernel reports that the PPP devices are being unlinked when the system is being started.

This is not a problem. The message is the result of the ppp driver calling the procedure 'unregister_netdev'. This permits the ppp driver to dynamically allocate the devices as they are needed. There is no real limit to the number of devices which may be created. For the sake of setting a limit, the value of 256 was chosen as the maximum number of devices. Should you find that this is too small then you may change the define in the ppp.c code to make it any value that you wish or supply the value when you use the dynamically loaded module.

13.11 I just checked /proc/net/dev and there are no PPP devices. Where did they go?

They went nowhere. They were all unlinked during the startup of the system. Please see the previous question for additional information.


Previous Next Contents