Changeset e3f388e5


Ignore:
Timestamp:
11/17/2011 03:59:08 PM (12 years ago)
Author:
Andrew Benton <andy@…>
Branches:
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
Children:
b4e7a79
Parents:
40399b1
Message:

Updated ppp to 2.4.5. My appologies to Alexander E. Patrakov for any damage done to his work

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

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • general.ent

    r40399b1 re3f388e5  
    44-->
    55
    6 <!ENTITY day          "16">                   <!-- Always 2 digits -->
     6<!ENTITY day          "17">                   <!-- Always 2 digits -->
    77<!ENTITY month        "11">                   <!-- Always 2 digits -->
    88<!ENTITY year         "2011">
     
    1010<!ENTITY copyholder   "The BLFS Development Team">
    1111<!ENTITY version      "&year;-&month;-&day;">
    12 <!ENTITY releasedate  "November 16th, &year;">
     12<!ENTITY releasedate  "November 17th, &year;">
    1313<!-- <!ENTITY releasedate  "November &day;st, &year;"> -->
    1414<!ENTITY pubdate      "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
     
    417417<!-- Part IV -->
    418418<!-- Chapter 13 -->
    419 <!ENTITY ppp-version                  "2.4.4">
     419<!ENTITY ppp-version                  "2.4.5">
    420420<!ENTITY wvdial-version               "1.54.0">
    421421
  • introduction/welcome/changelog.xml

    r40399b1 re3f388e5  
    4141
    4242-->
     43    <listitem>
     44      <para>November 17th, 2011</para>
     45      <itemizedlist>
     46        <listitem>
     47          <para>[abenton] - Updated ppp to 2.4.5.</para>
     48        </listitem>
     49      </itemizedlist>
     50    </listitem>
    4351
    4452    <listitem>
  • networking/connect/ppp.xml

    r40399b1 re3f388e5  
    77  <!ENTITY ppp-download-http "http://samba.org/ftp/ppp/ppp-&ppp-version;.tar.gz">
    88  <!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">
     9  <!ENTITY ppp-md5sum        "4621bc56167b6953ec4071043fe0ec57">
     10  <!ENTITY ppp-size          "920 KB">
     11  <!ENTITY ppp-buildsize     "6.4 MB">
    1212  <!ENTITY ppp-time          "0.1 SBU">
    1313]>
     
    6060
    6161    <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>
     62    <para role="optional"><xref linkend="libpcap"/> (needed to do PPP filtering)
     63    and <xref linkend="linux-pam"/> (to authenticate incoming calls using PAM -
     64    only needed by ISPs).
     65    </para>
    6666
    6767    <para condition="html" role="usernotes">User Notes:
     
    7979      (PPPoE) protocol driver (CONGIG_PPPOE) must be compiled into the
    8080      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>
     81      Udev doesn't load the ppp_generic and pppoe modules automatically. If you
     82      compiled them as modules they can be loaded by the modules bootscript if
     83      they are mentioned in <filename>/etc/sysconfig/modules</filename>
    8384      file.</para>
    8485    </note>
     
    9394<screen role="root"><userinput>groupadd -g 52 pppusers</userinput></screen>
    9495
    95     <para>Install <application>PPP</application> by running the
     96    <para>Compile <application>PPP</application> by running the
    9697    following commands:</para>
    9798
    98 <screen><userinput>./configure --prefix=/usr &amp;&amp;
     99<screen><userinput>rm include/linux/if_pppol2tp.h &amp;&amp;
     100./configure --prefix=/usr &amp;&amp;
    99101make</userinput></screen>
    100102
     
    104106
    105107<screen role='root'><userinput>make install &amp;&amp;
    106 <!-- FIXME: is "make install-etcppp" needed for KPPP/WvDial?
    107 The example configuration below overwrites two of three files, and
    108 already includes the "lock" option in each peer file
    109 -->make install-etcppp &amp;&amp;
    110 install -d /etc/ppp/peers &amp;&amp;
    111 install -m755 scripts/{pon,poff,plog} /usr/bin &amp;&amp;
    112 install -m644 scripts/pon.1 /usr/share/man/man1</userinput></screen>
     108install -d /etc/ppp/peers</userinput></screen>
    113109
    114110  </sect2>
     
    117113    <title>Command Explanations</title>
    118114
    119     <para><command>make install-etcppp</command>: This command puts example
    120     configuration files in <filename class="directory">/etc/ppp</filename>.</para>
     115    <para><command>rm include/linux/if_pppol2tp.h</command>: ppp-2.4.5 contains
     116    an out of date copy of the kernel header linux/if_pppol2tp.h. This needs to
     117    be removed to <emphasis>force</emphasis> it to use the one installed in
     118    /usr. If you don't remove this file the build will still succeed (thanks to
     119    a poorly written Makefile) but it will fail to compile the openl2tp.so,
     120    pppol2tp.so and rp-pppoe.so plugins:</para>
    121121
    122122    <para><command>install -d /etc/ppp/peers</command>: This command creates
    123     a directory for PPP peer description files.</para>
     123    a directory for PPP peer configuration files.</para>
    124124
    125125<!-- FIXME: the three options below are taken from pppd/Makefile.linux file.
     
    158158      <title>Configuration Information</title>
    159159
    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, 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 the
    171       <systemitem class="username">root</systemitem> user.</para>
    172 
    173160      <para>Add the users who may run <application>PPP</application> to the
    174161      <systemitem class="groupname">pppusers</systemitem> group:</para>
     
    176163<screen role="root"><userinput>usermod -a -G pppusers <replaceable>&lt;username&gt;</replaceable></userinput></screen>
    177164
    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
    194 chmod 600 /etc/ppp/pap-secrets
    195 cat &gt;&gt;/etc/ppp/pap-secrets &lt;&lt;"EOF"</userinput>
    196 <literal># username      remotename    password        IP for the peer
    197 jdoe            dialup        guessit         *</literal>
    198 <userinput>EOF</userinput></screen>
    199     </sect4>
     165      <para>Most internet service providers that use ppp give you a username
     166      and password for you to use to authenticate yourself when you connect to
     167      their servers. These secrets are kept in the files
     168      <filename>/etc/ppp/pap-secrets</filename> or
     169      <filename>/etc/ppp/chap-secrets</filename>. If you don't know whether
     170      your ISP uses CHAP or PAP then create both files and put the same content
     171      in both files.</para>
     172
     173      <para>If you have more than one ISP account the second column
     174      (remotename) is used to identify between the different
     175      usernames/passwords needed for the different ISPs. If you only have one
     176      ISP account an asterisk will work fine in the second column.</para>
     177
     178      <para>In this example the username given by the ISP is
     179      <quote>jdoe</quote>, the password is <quote>guessit</quote>, the ISP uses
     180      PAP and the user wants to give this account the remotename
     181      <quote>dialup</quote> in order to distinguish it from other PPP
     182      accounts:</para>
     183
     184<screen role="root"><userinput>cat &gt;&gt;/etc/ppp/pap-secrets &lt;&lt;"EOF"</userinput>
     185<literal># username      remotename    password
     186jdoe            dialup        guessit</literal>
     187<userinput>EOF
     188chmod 600 /etc/ppp/pap-secrets</userinput></screen>
    200189
    201190    <sect4>
    202191      <title>DNS Server Configuration</title>
    203192
    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
    211 if [ "$USEPEERDNS" = "1" ] &amp;&amp; [ -s /etc/ppp/resolv.conf ]
    212 then
    213         install -m 644 /etc/ppp/resolv.conf /etc/resolv.conf
    214 fi</literal>
     193      <para>If you don't run your own caching DNS server (like
     194      <xref linkend="bind"/>) pppd can ask your ISP for its domain name
     195      servers and put them in /etc/ppp/resolv.conf. If you want to use their
     196      domain name servers:</para>
     197
     198<screen role="root"><userinput>mv /etc/resolv.conf{,.orig}
     199ln -s ppp/resolv.conf /etc</userinput></screen>
     200
     201    </sect4>
     202
     203    <sect4>
     204      <title>PPPoE connections</title>
     205
     206      <para>In order to configure a PPPoE connection, create a peer file that
     207      contains the connection details:</para>
     208<screen role="root"><userinput>cat &gt;/etc/ppp/peers/<replaceable>peername</replaceable> &lt;&lt;"EOF"</userinput>
     209<literal>plugin rp-pppoe.so <replaceable>eth0</replaceable>
     210
     211# Your username at the ISP. This is the same as the first
     212# column in /etc/ppp/*-secrets:
     213user "<replaceable>jdoe</replaceable>"
     214
     215# remotename is not needed if you only have one ISP account and
     216# hence an asterisk in the second column in pap or chap-secrets:
     217# remotename "<replaceable>adsl</replaceable>"
     218
     219# If it's not working and you want pppd to be
     220# more verbose in /var/log/sys.log, add debug:
     221# debug
     222
     223# If you have a static IP address (eg, 12.34.56.78) you
     224# can specify it by following it with a colon:
     225# 12.34.56.78:
     226
     227# Otherwise accept whatever IP address the ISP gives you:
     228noipdefault
     229
     230# The settings below usually don't need to be changed
     231noauth
     232hide-password
     233updetach
     234defaultroute
     235# create /etc/ppp/resolv.conf:
     236usepeerdns
     237
     238### For more details (and more options)
     239### read man pppd</literal>
    215240<userinput>EOF
    216 chmod 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 a 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 -->
     241chmod 600 /etc/ppp/peers/<replaceable>peername</replaceable></userinput></screen>
     242    </sect4>
     243
     244    <sect4>
     245      <title>PPPoATM connections</title>
     246
     247      <para>PPPoA connections are very similar to PPPoE, the main differences
     248      are that you use the pppoatm.so plugin instead of rp-pppoe.so, you don't
     249      specify the ethernet interface (it uses ppp0) and you need to VP/VC
     250      numbers that are used by your ISP (there is a list of VP/VC numbers
     251      <ulink url="http://www.linux-usb.org/SpeedTouch/faq/index.html#q12">here
     252      </ulink>)</para>
     253
     254<screen role="root"><userinput>cat &gt;/etc/ppp/peers/<replaceable>peername</replaceable> &lt;&lt;"EOF"</userinput>
     255<literal>plugin pppoatm.so
     256
     257# Your VP/VC numbers. eg, in Britain it is 0.38, in
     258# France they use 8.35. Google is your friend :)
     2590.38
     260
     261# Your username at the ISP. This is the same as the
     262# first column in /etc/ppp/*-secrets:
     263user "<replaceable>jdoe</replaceable>"
     264
     265# remotename is not needed if you only have one ISP account and
     266# hence an asterisk in the second column in pap or chap-secrets:
     267# remotename "<replaceable>adsl</replaceable>"
     268
     269# If it's not working and you want pppd to be
     270# more verbose in /var/log/sys.log, add debug:
     271# debug
     272
     273# If you have a static IP address (eg, 12.34.56.78) you
     274# can specify it by following it with a colon:
     275# 12.34.56.78:
     276
     277# Otherwise accept whatever IP address the ISP gives you:
     278noipdefault
     279
     280# The settings below usually don't need to be changed
     281noauth
     282hide-password
     283updetach
     284defaultroute
     285# create /etc/ppp/resolv.conf:
     286usepeerdns
     287
     288### For more details (and more options)
     289### read man pppd</literal>
     290<userinput>EOF
     291chmod 600 /etc/ppp/peers/<replaceable>peername</replaceable></userinput></screen>
     292
    224293    </sect4>
    225294
    226295    <sect4>
    227296      <title>Dialup Modem Connection</title>
     297
    228298<!-- This section has been tested with various ISPs in Yekaterinburg,
    229299     Russia using Lucent WinModem. I cannot test it anymore, because
     
    297367    <sect4>
    298368      <title>GPRS and EDGE Connections</title>
     369
    299370<!-- This section has been tested with GPRS service from MOTIV in
    300371     Yekaterinburg, Russia. According to forum messages, the procedure
     
    372443
    373444    <sect4>
    374       <title>PPPoE connections</title>
    375 
    376       <!-- This section has been tested with the "USI" ISP in Yekaterinburg,
    377       Russia. Other editors can test it as described in
    378       http://linuxfromscratch.org/pipermail/blfs-dev/2008-March/018290.html
    379       - Alexander E. Patrakov -->
    380 
    381       <para>PPPoE connections are established over Ethernet, typically between
    382       a computer and an ADSL router (usually installed in the same room)
    383       that forwards the packets down the telephone line using frequencies
    384       25-2500 kHz, thus not interfering with voice calls. Although the router
    385       can, in theory, forward any Ethernet packet, PPP encapsulation is used
    386       for password-based authentication, so that the ISP can limit the
    387       bandwidth and charge money according to the chosen tariff. The maximum
    388       data transfer rate on ADSL is 24 megabits per second, and the gateway
    389       ping time is typically less than 10 ms. In order to configure a PPPoE
    390       connection, it is required to know the username, the password, and,
    391       sometimes, the service name and/or the access concentrator name.</para>
    392 
    393       <para>In order to configure a PPPoE connection, only the peer file
    394       has to be created:</para>
    395 <screen role="root"><userinput>cat &gt;/etc/ppp/peers/<replaceable>adsl</replaceable> &lt;&lt;"EOF"</userinput>
    396 <literal>plugin rp-pppoe.so
    397 # Ethernet interface name
    398 <replaceable>eth0</replaceable>
    399 # Your username at the ISP
    400 user "<replaceable>jdoe</replaceable>"
    401 # What should be in the second column in /etc/ppp/*-secrets
    402 remotename "<replaceable>adsl</replaceable>"
    403 # If needed, specify the service and the access concentrator name
    404 # rp_pppoe_service "<replaceable>internet</replaceable>"
    405 # rp_pppoe_ac "<replaceable>ac1</replaceable>"
    406 
    407 # The settings below usually don't need to be changed
    408 noauth
    409 hide-password
    410 updetach
    411 debug
    412 defaultroute
    413 noipdefault
    414 usepeerdns</literal>
    415 <userinput>EOF</userinput></screen>
    416     </sect4>
    417 
    418     <sect4>
    419445      <title>Establishing the connection manually</title>
    420446
     
    423449      file run (as <systemitem class="username">root</systemitem> or as a member
    424450      of the <systemitem class="groupname">pppusers</systemitem> group):</para>
    425 <screen><userinput>pon <replaceable>peername</replaceable></userinput></screen>
    426 
    427       <para>In order to tear the connection down, run:</para>
    428 <screen><userinput>poff <replaceable>peername</replaceable></userinput></screen>
     451<screen><userinput>pppd call <replaceable>peername</replaceable></userinput></screen>
     452
     453      <para>In order to stop the connection, run:</para>
     454<screen><userinput>killall pppd</userinput></screen>
     455
     456      <!--  There are an infinite number of ways that computers can be
     457      connected together. Trying to write a bootscript that can cope with every
     458      possible network configuration is the road to madness. Andrew Benton -->
     459
     460      <para>Writing a bootscript that brings up the connection during the boot
     461      process is left as an exercise for the reader ;)</para>
    429462
    430463    </sect4>
    431464
    432     <sect4>
    433       <title>Bringing up PPPoE connection at boot time</title>
    434       <para>If your service provider does not charge by the minute, it is
    435       usually good to have a bootscript handle the connection for you.
    436       You can, of course, choose not to install the following script, and
    437       start your connection manually with the <command>pon</command> command,
    438       as described above. If you wish your PPPoE connection to be brought
    439       up at boot time, run:</para>
    440 
    441 <screen role='root'><userinput>make install-service-pppoe</userinput></screen>
    442 
    443       <para>The above command installs the <filename>pppoe</filename>
    444       service script and the <filename>/etc/ppp/peers/pppoe</filename>
    445       file with some settings that make sense for most PPPoE connections.
    446       The bootscript calls <command>pppd</command> with the the following
    447       options:</para>
    448 
    449 <screen>pppd call pppoe ${1} linkname ${1} ${PPP_OPTS}</screen>
    450 
    451       <para>Here <quote>${1}</quote> is the network interface name,
    452       <quote>linkname ${1}</quote> is added for creation of the
    453       <filename>/var/run/ppp-${1}.pid</filename> file with the
    454       <command>pppd</command> process ID (to be used when bringing
    455       the connection down), and the <quote>${PPP_OPTS}</quote> variable
    456       contains user-specified options such as <quote>user</quote> and
    457       <quote>remotename</quote>.</para>
    458 
    459       <para>Now create the config file for use with the <filename>pppoe</filename>
    460       service script:</para>
    461 
    462 <screen role='root'><userinput>install -v -d /etc/sysconfig/network-devices/ifconfig.eth0 &amp;&amp;
    463 cat &gt; /etc/sysconfig/network-devices/ifconfig.eth0/pppoe &lt;&lt; "EOF"
    464 <literal>ONBOOT="yes"
    465 SERVICE="pppoe"
    466 PPP_OPTS="user <replaceable>jdoe</replaceable> remotename <replaceable>adsl</replaceable>"</literal>
    467 EOF</userinput></screen>
    468 
    469       <note><para>Instead of specifying additional options in the $PPP_OPTS
    470       variable, you can also edit the <filename>/etc/ppp/peers/pppoe</filename>
    471       file, but then your configuration will be lost when upgrading
    472       BLFS bootscripts.</para></note>
    473 
    474     </sect4>
    475465    </sect3>
    476466
    477467  </sect2>
    478 
    479468  <sect2 role="content">
    480469    <title>Contents</title>
Note: See TracChangeset for help on using the changeset viewer.