diff options
Diffstat (limited to 'doc/kppp/kppp-faq.docbook')
-rw-r--r-- | doc/kppp/kppp-faq.docbook | 477 |
1 files changed, 477 insertions, 0 deletions
diff --git a/doc/kppp/kppp-faq.docbook b/doc/kppp/kppp-faq.docbook new file mode 100644 index 00000000..57ef26ff --- /dev/null +++ b/doc/kppp/kppp-faq.docbook @@ -0,0 +1,477 @@ +<chapter id="faq"> +<title>Questions and Answers</title> + +&reporting.bugs; + +<qandaset id="faqlist"> + +<qandadiv id="faq-dialing"> +<title>Questions about Dialing</title> +<qandaentry> +<question><para>I can't get &kppp; to work. &kppp; tells me +<application>pppd</application> has died or that a timeout has expired. What's +going on?</para></question> + +<answer><para>Did you read this manual carefully? Here are once more the most common pitfalls:</para> + +<itemizedlist> + +<listitem><para> Click on the <guibutton>Details</guibutton> button. &kppp; will +you give an excerpt from the <acronym>PPP</acronym> log messages (may not work +on non-&Linux; systems, or even on some &Linux; distributions). The log will +help you to track down the bug.</para></listitem> + +<listitem><para> Make sure that <application>pppd</application> is the actual +<application>pppd</application> binary not a script</para></listitem> + +<listitem><para> Make sure that <application>pppd</application> is setuid +<systemitem>root</systemitem>. You may set this mode by issuing +<userinput><command>chmod</command> <option>u+s pppd</option></userinput> as +<systemitem>root</systemitem>. </para></listitem> + +<listitem><para> Make sure that your <filename>/etc/ppp/options</filename> file +exists and that it doesn't contain any conflicting entries. If in doubt: Leave +this file empty. </para></listitem> + +<listitem><para> Make sure that you <emphasis>don't</emphasis> use the option +<option>lock</option> as an argument for <application>pppd</application> (&kppp; +is already taking care of device locking).</para></listitem> + +<listitem><para> Remove the <option>lock</option> option from +<emphasis>both</emphasis> your <filename>/etc/ppp/options</filename> +<emphasis>and</emphasis> <filename>˜/.ppprc</filename> +files!</para></listitem> +<listitem><para> Using the symbolic link <filename +class="symlink">/dev/modem</filename> may cause some conflicts. Eliminate this +source of trouble by using the real device, &ie; <filename>/dev/cuaX</filename> +or <filename>/dev/ttySX</filename>. </para> +<note><para><hardware>COM1</hardware> equals <filename>ttyS0</filename>, +<hardware>COM2</hardware> is <filename>ttyS1</filename> and so +on. </para></note></listitem> + +<listitem><para>Make sure you set the right permission. In case of trouble you +might want to run it as root first and then later, when everything is working +fine give it less harmful permission if you can not afford to run &kppp; setuid +<systemitem>root</systemitem>. The proper way to proceed would +probably be creating a <systemitem>modem</systemitem> +group.</para></listitem> + +<listitem><para>You might be launching <application>pppd</application> too +early, &ie; before the remote server is ready to negotiate a +<acronym>PPP</acronym> connection. If you are using a login script, you should +use the built-in terminal to verify your login procedure. Some providers will +require you to issue a simple <command>Send</command> or <command>Send +ppp</command> to launch <acronym>PPP</acronym>. Some users even reported, that +they had to append <command>Pause 1</command> or <command>Pause 2</command> to +their script to solve timing conflicts.</para></listitem> + +</itemizedlist> + +<para>If nothing helps, you might obtain some debugging info from your systems +log by issuing:</para> + +<screen><prompt>#</prompt> <userinput><command>tail</command> <filename>/var/log/messages</filename></userinput></screen> + +</answer> +</qandaentry> + +<qandaentry> +<question><para>pppd died - The remote system is required to authenticate itself ...</para></question> + +<answer> +<para>Typical error message in system log:</para> +<screen> +pppd[699]: The remote system is required to authenticate itself +pppd[699]: but I couldn't find any suitable secret (password) for it to use to do so. +pppd[699]: (None of the available passwords would let it use an IP address.) +</screen> +<para>As far as I can tell there are two causes for this problem: </para> +<itemizedlist> +<listitem><para><filename>/etc/ppp/options</filename> contains the +<option>auth</option> option. Simply put a <prompt>#</prompt> comment in +front and try again. </para></listitem> <listitem><para>Your system already +has a default route. Have you set up a local network? In this case recent +versions of pppd will behave as if <option>auth</option> had been +specified. To override this you may add <option>noauth</option> to the pppd +arguments in kppp' setup dialog. Alternatively you could take down the local +network prior to dialing in. I'd be thankful if someone could provide +instructions on how to peacefully combine the two network +connections. </para></listitem> +</itemizedlist> +</answer> +</qandaentry> + +<qandaentry> +<question><para>pppd dies with 2.4.x Linux kernel</para></question> +<answer> +<para>Typical error messages in the system log:</para> + +<screen> +pppd[1182]: pppd 2.3.11 started by user, uid 500 +pppd[1182]: ioctl(PPPIOCGFLAGS): Invalid argument +pppd[1182]: tcsetattr: Invalid argument +pppd[1182]: Exit. +</screen> +<para>Install pppd 2.4.0b1 or better. See +<filename>Documentation/Changes</filename> in the kernel sources for more +info.</para> +</answer> +</qandaentry> + +<qandaentry> +<question><para>Why does &kppp; tell me <errorname>Unable to open the +modem</errorname>?</para></question> + +<answer><para>This means that &kppp; doesn't have permissions to open the modem +device or that you selected a modem device on the <guilabel>Modem</guilabel> Tab +Dialog that is not valid. First make sure you selected the right modem +device. Once you are sure you have selected the right modem device, you must +give &kppp; the right permission to access the modem device and to be able to +modify <filename>/etc/resolv.conf</filename> in case you want &kppp; to +configure <acronym>DNS</acronym> correctly for you. If you can afford to run +&kppp; setuid <systemitem>root</systemitem> this would solve all access problems +for you, if not you will have to figure out what the right permissions are for +your purposes. In order to give &kppp; setuid <systemitem>root</systemitem> +permissions do the following:</para> + +<screen><prompt>%</prompt> <userinput><command>su</command> <option>root</option></userinput> +<prompt>#</prompt> <userinput><command>chown</command> <option>root:root $KDEDIR/bin/kppp</option></userinput> +<prompt>#</prompt> <userinput><command>chmod</command> <option>+s $KDEDIR/bin/kppp</option></userinput> +<prompt>#</prompt> <userinput><command>exit</command></userinput> +</screen> +</answer> +</qandaentry> + +<qandaentry> +<question><para>Why does &kppp; tell me it can't create a modem lock +file?</para></question> + +<answer><para>This in most instances means that you have installed &kppp; +without SETUID bit on while you, the person executing &kppp;, doesn't have write +access to the lock file folder which by default is <filename +class="directory">/var/lock</filename>. This for example is the case on &RedHat; +systems. Check the modem dialog for the precise location you have chosen. The +solution is easy -- either run &kppp; SETUID if you can afford to, or give +regular users write access to <filename class="directory">/var/lock</filename> +or create a modem group that will have access to the <filename +class="directory">/var/lock</filename> file.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>Why is &kppp; installed with the SETUID bit +on?</para></question> + +<answer><para>para>There is no need for the SETUID bit, if you know a bit of +&UNIX; systems administration. Simply create a <systemitem>modem</systemitem> +group, add all users that you want to give access to the modem to that group and +make the modem device read/writable for that group. Also if you want +<acronym>DNS</acronym> configuration to work with &kppp;, then +<filename>/etc/resolv.conf</filename> must be read/writable by the members of +that group. The same counts for <filename>/etc/ppp/pap-secrets</filename> and +<filename>/etc/ppp/chap-secrets</filename> if you want to use the built-in +<acronym>PAP</acronym> or <acronym>CHAP</acronym> support, respectively.</para> + +<para>The &kppp; team has lately done a lot of work to make +&kppp; setuid-safe. But it's up to you to decide if you +install and how you install it.</para> + +<para>You might also want to read the <link linkend="security">Security</link> +section.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>What do I do when &kppp; just sits there and waits with the +message: <computeroutput>Expecting OK</computeroutput></para></question> + +<answer><para>Have you played with the CR/LF setting? Try CR, LF or +CR/LF.</para> + +<para>Alternatively, your modem might need some time to respond to its +initialization. Open the <guilabel>Modem Commands</guilabel> dialog on the +<guilabel>Modem</guilabel> tab and adjust the <guilabel>Pre-Init</guilabel> and +<guilabel>Post-Init</guilabel> delays. See if you are successful when +drastically increasing their values, and then do some fine-tuning +later.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>The connection works fine, but I can't start any +applications!</para></question> + +<answer><para>You have probably selected the <link +linkend="auto-configure-hostname">Auto Configure Host Name</link> option, and +the X Server has problems connecting to your newly named host. If you really +need this option (and chances are you really don't), you are unfortunately on +your own to set up the appropriate authorizations. Issuing +<userinput><command>xhost</command> <option>+</option></userinput> before +starting the connection would do the job, but be warned of the security risks +involved, since this effectively gives everyone else access to your X +Server.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>&kppp; reports a successful connection, but &konqueror; just says +<errorname>Unknown host <replaceable>hostname</replaceable></errorname>, and +&Netscape; reports <errorname>The server does not have a DNS +entry</errorname>.</para></question> + +<answer><para>Try pinging another server by its <acronym>IP</acronym> number, +⪚ <userinput><command>ping</command> +<option>195.0.254.76</option></userinput>. If that works, you could try the +following:</para> + +<itemizedlist> +<listitem><para>Check if you have provided &kppp; with at least one +<acronym>DNS</acronym> address.</para></listitem> + +<listitem><para>Check the contents of <filename>/etc/host.conf</filename>. There +should be a line saying something similar to <literal>order hosts, +bind</literal>. The <option>bind</option> keyword advises the resolver library +to include a name server query when performing an address lookup. If such a +line is not there, try adding it.</para></listitem> +</itemizedlist></answer> +</qandaentry> + +<qandaentry> +<question><para>How do I make &kppp; send a <keysym>\n</keysym> or a +<keysym>\r</keysym></para></question> + +<answer><para>Just send an empty string such as in the following script:</para> + +<informalexample> +<screen> +Send # send an empty string +Expect ID: +Send itsme +Expect word: +Send forgot +Expect granted +Send ppp +</screen> +</informalexample> +</answer> +</qandaentry> + +<qandaentry> +<question><para>How can I stop &kppp; complaining: <errorname>Can't create lock +file</errorname>?</para></question> +<answer><para>This happens because you don't have permissions to create a lock +file. If you chose to use a lock file, you must have write permission to the +folder (typically <filename class="directory">/var/lock</filename>). This is +of course no problem if you have given &kppp; setuid permissions. Please read +the section on <link linkend="lock-files">Lock files</link>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>Why is my modem making so much noise when +dialing?</para></question> + +<answer><para>Click on <guibutton>Setup</guibutton>, then +<guilabel>Modem</guilabel>. You can control the modem volume here in three +steps: Off, medium and high. For most modems, medium or high result in the same +volume. If changing this setting doesn't work, make sure the correct settings +for your modem are specified in <guibutton>Setup</guibutton>, +<guilabel>Modem</guilabel>, <guibutton>Modem +Commands</guibutton>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>I turned the modem volume to <quote>Off</quote> and verified the +modem commands, but I still hear that awful noise during dialing. +Why?</para></question> + +<answer><para>The volume initialization string can get lost if your modem can't +cope with the speed it is receiving commands from &kppp;. Increase the value of +<guilabel>Post-Init Delay</guilabel> in <guibutton>Setup</guibutton>, +<guilabel>Modem</guilabel>, <guibutton>Modem +Commands</guibutton>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>&kppp; keeps reporting unusual modem speeds like +<quote>115200</quote> or <quote>57600</quote></para></question> + +<answer><para>Many modems only report the speed of the serial line and not the +speed over the telephone line as default. You must configure these modems to +report the true line speed by adding some commands to the modem init or dial +strings. For many modems this command is <command>ATW2</command>. If you want +to add it to the dial string (which normally starts with +<command>ATD</command>), the new dial string would be +<command>ATW2D</command>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>Why does &kppp; report <quote>Unknown +speed</quote></para></question> + +<answer><para>New modems often have very complex connection messages like +<computeroutput>CONNECT LAP.M/V42.bis/115000:RX/31200:TX</computeroutput>, and +&kppp; cannot parse this message correctly. Turn on <guibutton>Show +Log</guibutton> and you'll see the connection speed.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>I get a slow connection speed</para></question> + +<answer><para>If you are not satisfied with the modem speed, make sure you've +set the connection speed (you can reach it by clicking on +<guibutton>Setup</guibutton>, <guilabel>Device</guilabel>, <guibutton>Connection +Speed</guibutton>) to 57600 or higher. Make sure your serial ports support +higher speeds. Many older systems based on i486 do not work correctly if you +set the speed to 115200. If you have an old <hardware>8250 UART</hardware> +chip, it won't work. If you have a <hardware>16550</hardware> or +<hardware>16550A</hardware> it should work flawlessly.</para> + +<para>Additionally, you should consult your modem manual to look for init +strings that enable a high speed mode.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>I get a <emphasis>REALLY</emphasis> slow connection +speed!</para></question> + +<answer><para>If data drips on at a rate of just a few bytes per second, you +should check your hardware setup. If moving your mouse speeds up the +transmission this is definitely a hardware issue!</para> + +<para>You can obtain some information about your serial port with +<userinput><command>setserial</command> <option>-a +<replaceable>/dev/ttySx</replaceable></option></userinput> and check for interrupt +conflicts with other components of your system. The &kcontrol; module +<guilabel>Information</guilabel> might also be of help here.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>My phone line needs pulse dialing instead of tone dialing (or +vice-versa). How do I change that?</para></question> +<answer><para>You must modify your modem dial string. Nearly all modems support +the following AT commands:</para> + +<variablelist> +<varlistentry> +<term><command>ATDT</command></term> +<listitem><para><action>Selects tone dialing</action></para></listitem> +</varlistentry> +<varlistentry> +<term><command>ATDP</command></term> +<listitem><para><action>Selects pulse dialing</action></para></listitem> +</varlistentry> +</variablelist> +</answer> + +</qandaentry> + +</qandadiv> + +<qandadiv id="faq-telephone-cost-rules"> +<title>Questions about Telephone Cost Rules</title> +<qandaentry> +<question><para>How do I write a telephones cost rules file?</para></question> +<answer><para>Just follow the <filename>TEMPLATE</filename> rules file supplied +with &kppp;. You should be able to find a copy in <filename +class="directory">$KDEDIR/doc/HTML/<replaceable>yourlang</replaceable>/kppp/</filename>. +Use the <option>-r</option> &kppp; command line option to check the syntax of +your proposed rules file.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>I have written a telephone cost rules for my region. Where can +I submit it so that others can make use of it?</para></question> +<answer><!-- LW: Find out --> +<!-- lukas: the answer is: send it to the kppp maintainer, Harri Porten --></answer> +</qandaentry> + +<qandaentry> +<question><para>Can my phone cost rulefile contain fractional time units like +"(0.17, 45.5)"?</para></question> +<answer><para>Yes this is possible. But you shouldn't use unusually small time +units below a tenth of a second, because this would result in higher +<acronym>CPU</acronym> load, although you probably won't notice on a modern +<acronym>CPU</acronym>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>My country observes other <quote>moving</quote> holidays than +Easter.</para></question> +<answer><para>In that case, you need to write new code that allows for the +computation of that holiday. Please have a look at +<filename>ruleset.cpp</filename> and emulate the <quote>easter</quote> example. +Then send in the patches!.</para></answer> +</qandaentry> +</qandadiv> + +<qandadiv id="faq-system-logs"> +<title>Questions about the System Logs</title> +<qandaentry> +<question><para>I see a message saying <errorname>Serial line is looped +back</errorname>. What does this mean?</para></question> + +<answer><para>Short answer: You didn't start the <acronym>PPP</acronym> software +on the peer system.</para> + +<!-- this doc doesn't exist.. help --> +<!-- http://www.dejanews.com/getdoc.xp?AN="184945314" --> + +</answer> +</qandaentry> + +<qandaentry> +<question><para>The logs show <errorname>Signal 15</errorname></para></question> +<answer><para>If you see the following lines, you've probably just received a +timeout error from &kppp;. &kppp; has been waiting for the +<acronym>PPP</acronym> interface to come up and gave up after the specified +timeout. <application>pppd</application> was signalled to shut down, with signal +number 15, &ie; <errorcode>SIGTERM</errorcode>.</para> + +<informalexample> +<screen><computeroutput> +pppd[26921]: pppd 2.3.5 started by me, uid 500 +pppd[26921]: Using interface ppp0 +pppd[26921]: Connect: ppp0 <--> /dev/ttyS0 +pppd[26921]: Terminating on signal 15. +pppd[26921]: Connection terminated. +pppd[26921]: Exit. +</computeroutput></screen> +</informalexample> +</answer> +</qandaentry> + +<qandaentry> +<question><para>What about <errorname>Receive serial link is not 8-bit +clean</errorname></para></question> +<answer><para>The <acronym>PPP</acronym> daemon is alarmed by the fact that all the +data it receives has bit 8 set to zero. In most cases this simply indicates +that the remote <acronym>PPP</acronym> server isn't running yet. You might +still be confronted by a login prompt that echoes back all the data sent by your +<application>pppd</application>.</para></answer> +</qandaentry> + +<qandaentry> +<question><para>and <errorname>can't locate module ppp-compress</errorname>? +What's this?</para></question> +<answer><para>Do you see the following messages?</para> + +<informalexample> +<screen><computeroutput> +modprobe: can't locate module ppp-compress-21 +modprobe: can't locate module ppp-compress-26 +modprobe: can't locate module ppp-compress-24 +</computeroutput></screen> +</informalexample> + +<para>Just add the lines:</para> + +<screen><userinput> +alias ppp-compress-21 bsd_comp +alias ppp-compress-24 ppp_deflate +alias ppp-compress-26 ppp_deflate </userinput></screen> + +<para> to your <filename>/etc/conf.modules</filename> file.</para> +</answer> +</qandaentry> + +</qandadiv> + +</qandaset> + +</chapter> |