source: basicnet/connect/ppp.xml@ f48fe3c

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since f48fe3c was f48fe3c, checked in by Alexander E. Patrakov <alexander@…>, 16 years ago

Fixed typos on the PPP page. Thanks to David Jensen.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@7487 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 23.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY ppp-download-http "http://samba.org/ftp/ppp/ppp-&ppp-version;.tar.gz">
8 <!ENTITY ppp-download-ftp "&gentoo-ftp-repo;/ppp-&ppp-version;.tar.gz">
9 <!ENTITY ppp-md5sum "183800762e266132218b204dfb428d29">
10 <!ENTITY ppp-size "673 KB">
11 <!ENTITY ppp-buildsize "5.6 MB">
12 <!ENTITY ppp-time "0.1 SBU">
13]>
14
15<sect1 id="ppp" xreflabel="PPP-&ppp-version;">
16 <?dbhtml filename="ppp.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>PPP-&ppp-version;</title>
24
25 <indexterm zone="ppp">
26 <primary sortas="a-PPP">PPP</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to PPP</title>
31
32 <para>The <application>PPP</application> package contains the
33 <command>pppd</command> daemon and the <command>chat</command>
34 program. This is used for connecting to other machines; often for connecting to
35 the Internet via a dial-up or PPPoE connection to an ISP.</para>
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>Download (HTTP): <ulink url="&ppp-download-http;"/></para>
41 </listitem>
42 <listitem>
43 <para>Download (FTP): <ulink url="&ppp-download-ftp;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download MD5 sum: &ppp-md5sum;</para>
47 </listitem>
48 <listitem>
49 <para>Download size: &ppp-size;</para>
50 </listitem>
51 <listitem>
52 <para>Estimated disk space required: &ppp-buildsize;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated build time: &ppp-time;</para>
56 </listitem>
57 </itemizedlist>
58
59 <bridgehead renderas="sect3">PPP Dependencies</bridgehead>
60
61 <bridgehead renderas="sect4">Optional</bridgehead>
62 <para role="optional"><xref linkend="libpcap"/> (needed to do PPP filtering),
63 <xref linkend="linux-pam"/> (to authenticate incoming calls using PAM),
64 and <ulink url="http://linux-atm.sourceforge.net/">Linux ATM</ulink> (to
65 build the pppoatm.so plugin)</para>
66
67 <para condition="html" role="usernotes">User Notes:
68 <ulink url="&blfs-wiki;/PPP"/></para>
69
70 </sect2>
71
72 <sect2 role="installation">
73 <title>Installation of PPP</title>
74
75 <note id="ppp-kernel">
76 <para><application>PPP</application> support (CONFIG_PPP),
77 the asynchronous line discipline (CONFIG_PPP_ASYNC), the
78 driver for your serial port device and/or the PPP over Ethernet
79 (PPPoE) protocol driver (CONGIG_PPPOE) must be compiled into the
80 kernel or loaded as kernel modules.
81 Udev doesn't load the ppp_generic and pppoe modules automatically, they
82 must be mentioned in the <filename>/etc/sysconfig/modules</filename>
83 file.</para>
84 </note>
85
86 <indexterm zone="ppp ppp-kernel">
87 <primary sortas="d-PPP-support">PPP support</primary>
88 </indexterm>
89
90 <para>Create (as <systemitem class="username">root</systemitem>)
91 the group for users who may run <application>PPP</application>:</para>
92
93<screen role="root"><userinput>groupadd -g 52 pppusers</userinput></screen>
94
95 <para>Install <application>PPP</application> by running the
96 following commands:</para>
97
98<screen><userinput>./configure --prefix=/usr &amp;&amp;
99make</userinput></screen>
100
101 <para>This package does not come with a test suite.</para>
102
103 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
104
105<screen role='root'><userinput>make install &amp;&amp;
106<!-- FIXME: is "make install-etcppp" needed for KPPP/WvDial?
107The example configuration below overwrites two of three files, and
108already includes the "lock" option in each peer file
109-->make install-etcppp &amp;&amp;
110install -d /etc/ppp/peers &amp;&amp;
111install -m755 scripts/{pon,poff,plog} /usr/bin &amp;&amp;
112install -m644 scripts/pon.1 /usr/share/man/man1</userinput></screen>
113
114 </sect2>
115
116 <sect2 role="commands">
117 <title>Command Explanations</title>
118
119 <para><command>make install-etcppp</command>: This command puts example
120 configuration files in <filename class="directory">/etc/ppp</filename>.</para>
121
122 <para><command>install -d /etc/ppp/peers</command>: This command creates
123 a directory for PPP peer description files.</para>
124
125<!-- FIXME: the three options below are taken from pppd/Makefile.linux file.
126 They have not been tested. There are other options, such as USE_SRP=y,
127 that cannot work (in this case, because libsrp is not available from
128 anywhere) - Alexander E. Patrakov -->
129
130 <para><parameter>USE_PAM=y</parameter>: Add this argument to the
131 <command>make</command> command to compile in support for PAM, usually
132 needed for authenticating inbound calls against a central database.</para>
133
134 <para><parameter>HAVE_INET6=y</parameter>: Add this argument to the
135 <command>make</command> command to compile in support for IPv6.</para>
136
137 <para><parameter>CBCP=y</parameter>: Add this argument to the
138 <command>make</command> command to compile in support for
139 Microsoft proprietary Callback Control Protocol.</para>
140
141 </sect2>
142
143 <sect2 role="configuration">
144 <title>Configuring PPP</title>
145
146 <sect3 id="ppp-config">
147 <title>Config Files</title>
148
149 <para><filename>/etc/ppp/*</filename></para>
150
151 <indexterm zone="ppp ppp-config">
152 <primary sortas="e-etc-ppp-star">/etc/ppp/*</primary>
153 </indexterm>
154
155 </sect3>
156
157 <sect3>
158 <title>Configuration Information</title>
159
160 <para>The <application>PPP</application> daemon requires some
161 configuration. The main trick is scripting the connection.
162 For dialup and GPRS connections, this can be done
163 either using the <command>chat</command> program which comes with
164 this package, or by using external tools such as
165 <ulink url="http://alumnit.ca/wiki/?WvDial">WvDial</ulink>
166 or <application>KPPP</application> from
167 <xref linkend="kdenetwork"/>. The text below explains how to set up
168 dialup and GPRS and PPPoE connections using only tools provided with
169 the <application>PPP</application> package. All configuration steps
170 in this section are executed as
171 <systemitem class="username">root</systemitem> user.</para>
172
173 <para>Add the users who may run <application>PPP</application> to the
174 <systemitem class="groupname">pppusers</systemitem> group:</para>
175
176<screen role="root"><userinput>usermod -a -G pppusers <replaceable>&lt;username&gt;</replaceable></userinput></screen>
177
178 <sect4>
179 <title>Setting the passwords</title>
180
181 <warning><para>Instructions in this section result in your password
182 appearing on the screen in a visible clear-text form. Make sure that
183 nobody else looks at the screen.</para></warning>
184
185 <para>Passwords are stored in <filename>/etc/ppp/pap-secrets</filename>
186 and <filename>/etc/ppp/chap-secrets</filename> files, depending on the
187 authentication method used by the ISP. If in doubt, place the password
188 into both files. E.g., if the username given by the ISP is
189 <quote>jdoe</quote>, the password is <quote>guessit</quote>, the
190 ISP uses PAP and the user wants to name this account
191 <quote>dialup</quote> in order to distinguish it from other PPP accounts,
192 the following file has to be created:</para>
193<screen role="root"><userinput>touch /etc/ppp/pap-secrets
194chmod 600 /etc/ppp/pap-secrets
195cat &gt;&gt;/etc/ppp/pap-secrets &lt;&lt;"EOF"</userinput>
196<literal># username remotename password IP for the peer
197jdoe dialup guessit *</literal>
198<userinput>EOF</userinput></screen>
199 </sect4>
200
201 <sect4>
202 <title>DNS Server Configuration</title>
203
204 <para>If you don't run your own caching DNS server, create a simple
205 <command>ip-up</command> script (to be called by <command>pppd</command>
206 automatically once the connection is brought up) that populates the
207 <filename>/etc/resolv.conf</filename> file with nameservers specified
208 by the ISP.</para>
209<screen role="root"><userinput>cat &gt;/etc/ppp/ip-up &lt;&lt;"EOF"</userinput>
210<literal>#!/bin/sh
211if [ "$USEPEERDNS" = "1" ] &amp;&amp; [ -s /etc/ppp/resolv.conf ]
212then
213 install -m 644 /etc/ppp/resolv.conf /etc/resolv.conf
214fi</literal>
215<userinput>EOF
216chmod 755 /etc/ppp/ip-up</userinput></screen>
217 <para>If you use a caching DNS server such as <xref linkend="bind"/>
218 or <ulink url="http://www.phys.uu.nl/~rombouts/pdnsd.html">Pdnsd</ulink>,
219 the script above is wrong for you. In such case, write your
220 own script that tells your caching nameserver to forward queries to
221 upstream DNS servers specified in the $DNS1 and $DNS2 environment
222 variables.</para>
223 <!-- FIXME: write the replacement script that works with Bind -->
224 </sect4>
225
226 <sect4>
227 <title>Dialup Modem Connection</title>
228<!-- This section has been tested with various ISPs in Yekaterinburg,
229 Russia using Lucent WinModem. I cannot test it anymore, because
230 there is no free PCI slot for the modem in my new computer. However,
231 it is similar enough to GPRS for me to be sure that it still works,
232 and nobody complained about non-working dialup on the LFS LiveCD.
233 - Alexander E. Patrakov -->
234
235 <para>Dialup connections are established with the help of a modem
236 connected to a computer and the telephone line. The modem dials a
237 telephone number of the ISP's modem, and they exchange data using
238 the signal frequencies 300-4000 Hz. Typical data transfer
239 rate is 40-50 kilobits per second, and the gateway ping time
240 (latency) is up to 300-400 ms. In order to configure the
241 dialup connection, it is required to know the telephone number of
242 the ISP's modem pool, the username and the password.</para>
243
244 <para>In order to configure a dialup connection, two files have to
245 be created: a chat script that automates the connection procedure
246 (common for all dialup accounts), and a peer file that provides
247 configuration information about a specific connection to
248 <command>pppd</command>:</para>
249<screen role="root"><userinput>cat &gt;/etc/ppp/dialup.chat &lt;&lt;"EOF"</userinput>
250<literal>ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE'
251ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
252ABORT ERROR ABORT BLACKLISTED
253
254TIMEOUT 5
255'' AT
256# \T is the phone number, passed from /etc/ppp/peers/<replaceable>dialup</replaceable>
257OK-+++\dATH0-OK ATD\T
258TIMEOUT 75
259CONNECT \d\c</literal>
260<userinput>EOF
261
262cat &gt;/etc/ppp/peers/<replaceable>dialup</replaceable> &lt;&lt;"EOF"</userinput>
263<literal># Your username at the ISP
264user "<replaceable>jdoe</replaceable>"
265# What should be in the second column in /etc/ppp/*-secrets
266remotename "<replaceable>dialup</replaceable>"
267# Replace <replaceable>TTTTTTT</replaceable> with the ISP phone number
268connect "/usr/sbin/chat -T <replaceable>TTTTTTT</replaceable> -f /etc/ppp/dialup.chat"
269
270# Specify your modem serial port and speed below
271<replaceable>/dev/ttyS0</replaceable>
272<replaceable>115200</replaceable>
273
274# The settings below usually don't need to be changed
275updetach
276noauth
277hide-password
278debug
279lock
280defaultroute
281noipdefault
282usepeerdns</literal>
283<userinput>EOF</userinput></screen>
284
285 <para>The first three lines of the
286 <filename>/etc/ppp/dialup.chat</filename> file abort the script when
287 it receives an indication of an error from the modem. Then the timeout
288 is set to 5 seconds and the script checks that the modem responds to
289 the dummy AT command at all. If not, measures are taken to dewedge it
290 (by interrupting the data transfer and going on hook). Then the
291 telephone number is dialed, and the script waits for the answer for
292 75 seconds. The serial connection is considered established when the
293 modem sends the string CONNECT.</para>
294
295 </sect4>
296
297 <sect4>
298 <title>GPRS and EDGE Connections</title>
299<!-- This section has been tested with GPRS service from MOTIV in
300 Yekaterinburg, Russia. According to forum messages, the procedure
301 also works with EDGE, but my cellular phone (Motorola C350) does not
302 support EDGE. - Alexander E. Patrakov -->
303
304 <para>GPRS and EDGE connections are established with the help of a
305 cellular phone connected to a computer via serial or USB cable, or
306 using Bluetooth.
307 The phone exchanges data packets with the nearest base station,
308 which can be up to 35 kilometers away.
309
310 <!-- FIXME: watch for new standards! SkyLink is already offering
311 3.1 megabits per second with CDMA mobile phones, and
312 the configuration below doesn't work. It is reported that
313 a regular dialup setup with the telephone number "#777",
314 username "mobile" and password "internet" works with SkyLink. -->
315
316 The maximum possible data transfer rate is 170 kilobits per second
317 for GPRS and 474 kilobits per second for EDGE, but many cellular
318 operators impose lower limits, such as 64 kilobits per second. The
319 gateway ping time is 900 ms for GPRS, which makes playing many online
320 games impossible and causes connection to ICQ to be unreliable.
321 In order to configure a GPRS or EDGE connection,
322 it is required to know the access point name (APN) and, rarely, the
323 username and the password.
324 In most cases, billing is based on the telephone number, and the
325 username/password pair is not needed, as assumed in the example
326 below.</para>
327
328 <para>In order to configure a GPRS connection, two files have to
329 be created: a chat script that automates the connection procedure
330 (common for all GPRS accounts), and a peer file that provides
331 configuration information about a specific connection to
332 <command>pppd</command>:</para>
333<screen role="root"><userinput>cat &gt;/etc/ppp/gprs.chat &lt;&lt;"EOF"</userinput>
334<literal>ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE'
335ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
336ABORT ERROR ABORT BLACKLISTED
337
338TIMEOUT 5
339'' AT
340OK-+++\dATH0-OK ATZ
341# \T is the APN, passed from /etc/ppp/peers/<replaceable>gprs</replaceable>
342# This example stores the APN as profile #1 in the phone.
343# The "telephone number", *99***&lt;profile_number&gt;#, is always the same.
344# If you want to store this as profile #2, change 1 to 2 in the
345# following two lines.
346OK AT+CGDCONT=<replaceable>1</replaceable>,"IP","\T"
347OK "ATD*99***<replaceable>1</replaceable>#"
348CONNECT \d\c</literal>
349<userinput>EOF
350
351cat &gt;/etc/ppp/peers/<replaceable>gprs</replaceable> &lt;&lt;"EOF"</userinput>
352<literal># Replace <replaceable>inet.example.com</replaceable> with the proper APN for your provider
353connect "/usr/sbin/chat -T <replaceable>inet.example.com</replaceable> -f /etc/ppp/gprs.chat"
354
355# Specify your cellphone serial port and speed below
356# Note: you must manually send some vendor-specific AT commands
357# to certain old cellular phones (such as Sony-Ericsson T200)
358# in order to achieve connection speed more than 9600 bits ber second.
359<replaceable>/dev/ttyS1</replaceable>
360<replaceable>115200</replaceable>
361
362# The settings below usually don't need to be changed
363noccp
364noauth
365updetach
366debug
367lock
368defaultroute
369noipdefault
370usepeerdns</literal>
371<userinput>EOF</userinput></screen>
372 </sect4>
373
374 <sect4>
375 <title>PPPoE connections</title>
376
377 <!-- This section has been tested with the "USI" ISP in Yekaterinburg,
378 Russia. Other editors can test it as described in
379 http://linuxfromscratch.org/pipermail/blfs-dev/2008-March/018290.html
380 - Alexander E. Patrakov -->
381
382 <para>PPPoE connections are established over Ethernet, typically between
383 a computer and an ADSL router (usually installed in the same room)
384 that forwards the packets down the telephone line using frequencies
385 25-2500 kHz, thus not interfering with voice calls. Although the router
386 can, in theory, forward any Ethernet packet, PPP encapsulation is used
387 for password-based authentication, so that the ISP can limit the
388 bandwidth and charge money according to the chosen tariff. The maximum
389 data transfer rate on ADSL is 24 megabits per second, and the gateway
390 ping time is typically less than 10 ms. In order to configure a PPPoE
391 connection, it is required to know the username, the password, and,
392 sometimes, the service name and/or the access concentrator name.</para>
393
394 <para>In order to configure a PPPoE connection, only the peer file
395 has to be created:</para>
396<screen role="root"><userinput>cat &gt;/etc/ppp/peers/<replaceable>adsl</replaceable> &lt;&lt;"EOF"</userinput>
397<literal>plugin rp-pppoe.so
398# Ethernet interface name
399<replaceable>eth0</replaceable>
400# Your username at the ISP
401user "<replaceable>jdoe</replaceable>"
402# What should be in the second column in /etc/ppp/*-secrets
403remotename "<replaceable>adsl</replaceable>"
404# If needed, specify the service and the access concentrator name
405# rp_pppoe_service "<replaceable>internet</replaceable>"
406# rp_pppoe_ac "<replaceable>ac1</replaceable>"
407
408# The settings below usually don't need to be changed
409noauth
410hide-password
411updetach
412debug
413defaultroute
414noipdefault
415usepeerdns</literal>
416<userinput>EOF</userinput></screen>
417 </sect4>
418
419 <sect4>
420 <title>Establishing the connection manually</title>
421
422 <para>In order to establish a PPP connection described by the
423 <filename>/etc/ppp/peers/<replaceable>peername</replaceable></filename>
424 file, run, as root or as a member of the
425 <systemitem class="groupname">pppusers</systemitem> group:</para>
426<screen><userinput>pon <replaceable>peername</replaceable></userinput></screen>
427
428 <para>In order to tear the connection down, run:</para>
429<screen><userinput>poff <replaceable>peername</replaceable></userinput></screen>
430
431 </sect4>
432
433 <sect4>
434 <title>Bringing up PPPoE connection at boot time</title>
435 <para>If your service provider does not charge by the minute, it is
436 usually good to have a bootscript handle the connection for you.
437 You can, of course, choose not to install the following script, and
438 start your connection manually with the <command>pon</command> command,
439 as described above. If you wish your PPPoE connection to be brought
440 up at boot time, run:</para>
441
442<screen role='root'><userinput>make install-service-pppoe</userinput></screen>
443
444 <para>The above command installs the <filename>pppoe</filename>
445 service script and the <filename>/etc/ppp/peers/pppoe</filename>
446 file with some settings that make sense for most PPPoE connections.
447 The bootscript calls <command>pppd</command> with the the following
448 options:</para>
449
450<screen>pppd call pppoe ${1} linkname ${1} ${PPP_OPTS}</screen>
451
452 <para>Here <quote>${1}</quote> is the network interface name,
453 <quote>linkname ${1}</quote> is added for creation of the
454 <filename>/var/run/ppp-${1}.pid</filename> file with the
455 <command>pppd</command> process ID (to be used when bringing
456 the connection down), and the <quote>${PPP_OPTS}</quote> variable
457 contains user-specified options such as <quote>user</quote> and
458 <quote>remotename</quote>.</para>
459
460 <para>Now create the config file for use with the <filename>pppoe</filename>
461 service script:</para>
462
463<screen role='root'><userinput>install -v -d /etc/sysconfig/network-devices/ifconfig.eth0 &amp;&amp;
464cat &gt; /etc/sysconfig/network-devices/ifconfig.eth0/pppoe &lt;&lt; "EOF"
465<literal>ONBOOT="yes"
466SERVICE="pppoe"
467PPP_OPTS="user <replaceable>jdoe</replaceable> remotename <replaceable>adsl</replaceable>"</literal>
468EOF</userinput></screen>
469
470 <note><para>Instead of specifying additional options in the $PPP_OPTS
471 variable, you can also edit the <filename>/etc/ppp/peers/pppoe</filename>
472 file, but then your configuration will be lost when upgrading
473 BLFS bootscripts.</para></note>
474
475 </sect4>
476 </sect3>
477
478 </sect2>
479
480 <sect2 role="content">
481 <title>Contents</title>
482
483 <segmentedlist>
484 <segtitle>Installed Programs</segtitle>
485 <segtitle>Installed Libraries</segtitle>
486 <segtitle>Installed Directories</segtitle>
487
488 <seglistitem>
489 <seg>chat, pon, poff, plog, pppd, pppdump, pppoe-discovery and pppstats</seg>
490 <seg>Several plugin modules installed in
491 <filename class='directory'>/usr/lib/pppd/&ppp-version;</filename></seg>
492 <seg>/etc/ppp, /usr/include/pppd and /usr/lib/pppd</seg>
493 </seglistitem>
494 </segmentedlist>
495
496 <variablelist>
497 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
498 <?dbfo list-presentation="list"?>
499 <?dbhtml list-presentation="table"?>
500
501 <varlistentry id="chat">
502 <term><command>chat</command></term>
503 <listitem>
504 <para>defines a conversational exchange between the computer and the
505 modem. Its primary purpose is to establish the connection between the
506 Point-to-Point Protocol Daemon (PPPD) and the remote
507 <command>pppd</command> process.</para>
508 <indexterm zone="ppp chat">
509 <primary sortas="b-chat">chat</primary>
510 </indexterm>
511 </listitem>
512 </varlistentry>
513
514 <varlistentry id="pon">
515 <term><command>pon</command></term>
516 <listitem>
517 <para>is the script that establishes a PPP connection</para>
518 <indexterm zone="ppp pon">
519 <primary sortas="b-pon">pon</primary>
520 </indexterm>
521 </listitem>
522 </varlistentry>
523
524 <varlistentry id="poff">
525 <term><command>poff</command></term>
526 <listitem>
527 <para>is the script that tears a PPP connection down.</para>
528 <indexterm zone="ppp poff">
529 <primary sortas="b-poff">poff</primary>
530 </indexterm>
531 </listitem>
532 </varlistentry>
533
534 <varlistentry id="plog">
535 <term><command>plog</command></term>
536 <listitem>
537 <para>is a script that prints the tail of the PPP log.</para>
538 <indexterm zone="ppp plog">
539 <primary sortas="b-plog">plog</primary>
540 </indexterm>
541 </listitem>
542 </varlistentry>
543
544
545 <varlistentry id="pppd">
546 <term><command>pppd</command></term>
547 <listitem>
548 <para>is the Point to Point Protocol daemon.</para>
549 <indexterm zone="ppp pppd">
550 <primary sortas="b-pppd">pppd</primary>
551 </indexterm>
552 </listitem>
553 </varlistentry>
554
555 <varlistentry id="pppdump">
556 <term><command>pppdump</command></term>
557 <listitem>
558 <para>is used to convert
559 <application>PPP</application> record files to a readable
560 format.</para>
561 <indexterm zone="ppp pppdump">
562 <primary sortas="b-pppdump">pppdump</primary>
563 </indexterm>
564 </listitem>
565 </varlistentry>
566
567 <varlistentry id="pppstats">
568 <term><command>pppstats</command></term>
569 <listitem>
570 <para>is used to print
571 <application>PPP</application> statistics.</para>
572 <indexterm zone="ppp pppstats">
573 <primary sortas="b-pppstats">pppstats</primary>
574 </indexterm>
575 </listitem>
576 </varlistentry>
577
578 </variablelist>
579
580 </sect2>
581
582</sect1>
Note: See TracBrowser for help on using the repository browser.