Bring the first part of the ppp documentation up to date, more to come.
Bullied by: murray
This commit is contained in:
parent
5fe4ee580d
commit
a0f1fadf90
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=10361
1 changed files with 217 additions and 212 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
<!--
|
<!--
|
||||||
The FreeBSD Documentation Project
|
The FreeBSD Documentation Project
|
||||||
|
|
||||||
$FreeBSD: doc/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.47 2001/08/11 21:34:52 jim Exp $
|
$FreeBSD: doc/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml,v 1.48 2001/08/15 00:51:25 logo Exp $
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<chapter id="ppp-and-slip">
|
<chapter id="ppp-and-slip">
|
||||||
|
|
@ -53,11 +53,13 @@
|
||||||
the already existing kernel implementation of PPP.</para>
|
the already existing kernel implementation of PPP.</para>
|
||||||
|
|
||||||
<para>You may be wondering what the main difference is between User
|
<para>You may be wondering what the main difference is between User
|
||||||
PPP and kernel PPP. The answer is simple; user PPP does not run as
|
PPP and kernel PPP. The answer is simple; user PPP processes the
|
||||||
a daemon, and can run as and when desired. No PPP interface needs
|
inbound and outbound data in userland rather than in the kernel.
|
||||||
to be compiled into their kernel; it runs as a user process, and uses
|
This is expensive in terms of copying the data between the kernel
|
||||||
the tunnel device driver (<devicename>tun</devicename>) to get data
|
and userland, but allows a far more feature-rich ppp implementation.
|
||||||
into and out of the kernel.</para>
|
User PPP uses the <devicename>tun</devicename> device to communicate
|
||||||
|
with the outside world whereas kernel-ppp uses the
|
||||||
|
<devicename>ppp</devicename> device.</para>
|
||||||
|
|
||||||
<para>From here on out in this chapter, user ppp will simply be
|
<para>From here on out in this chapter, user ppp will simply be
|
||||||
referred to as ppp unless a distinction needs to be made between it
|
referred to as ppp unless a distinction needs to be made between it
|
||||||
|
|
@ -151,7 +153,8 @@
|
||||||
you can use the <command>enable dns</command> command in
|
you can use the <command>enable dns</command> command in
|
||||||
your <filename>ppp.conf</filename> file to tell
|
your <filename>ppp.conf</filename> file to tell
|
||||||
<application>ppp</application> to set the name servers for
|
<application>ppp</application> to set the name servers for
|
||||||
you.</para>
|
you. This feature depends on your ISPs PPP implementation
|
||||||
|
supporting DNS negotiation.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
|
|
@ -174,7 +177,7 @@
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>The netmask you should use. If your ISP has not
|
<para>The netmask you should use. If your ISP has not
|
||||||
provided you with one, you can safely use <hostid
|
provided you with one, you can safely use <hostid
|
||||||
role="netmask">255.255.255.0</hostid>.</para>
|
role="netmask">255.255.255.255</hostid>.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<indexterm id="ppp-statis-ip">
|
<indexterm id="ppp-statis-ip">
|
||||||
|
|
@ -195,85 +198,37 @@
|
||||||
<title>Preparing the Kernel</title>
|
<title>Preparing the Kernel</title>
|
||||||
|
|
||||||
<para>As previously mentioned, <application>ppp</application>
|
<para>As previously mentioned, <application>ppp</application>
|
||||||
uses the <devicename>tun</devicename> device, and whichever kernel
|
uses the <devicename>tun</devicename> device. If this device
|
||||||
you are using must have <devicename>tun</devicename> configured.
|
has not been compiled into your kernel,
|
||||||
The <devicename>tun</devicename> device is preconfigured
|
<application>ppp</application> will load it on demand as a
|
||||||
for the default <filename>GENERIC</filename> kernel that ships
|
module. The tunnel driver is dynamic, so any number of
|
||||||
with FreeBSD. However, if you have installed a custom kernel,
|
devices may be created (you are not limited by any kernel
|
||||||
you must make sure your kernel is configured for ppp.</para>
|
configuration values).</para>
|
||||||
|
|
||||||
<indexterm id="ppp-kernel-compilation">
|
<note>It should be noted that the tunnel driver creates devices
|
||||||
<primary>kernel</primary>
|
on demand, so <command>ifconfig -a</command> won't necessarily
|
||||||
<secondary>compiling</secondary>
|
show up with any <devicename>tun</devicename> devices.</note>
|
||||||
</indexterm>
|
|
||||||
<para>To check, go to your kernel compile directory
|
|
||||||
(<filename>/sys/i386/conf</filename> or
|
|
||||||
<filename>/sys/pc98/conf</filename>) and examine your
|
|
||||||
configuration file. It should have the following line somewhere
|
|
||||||
in it:</para>
|
|
||||||
|
|
||||||
<programlisting>pseudo-device tun 1</programlisting>
|
|
||||||
|
|
||||||
<para>If this line is not present, you will need to add it to the
|
|
||||||
configuration file and recompile your kernel. The stock
|
|
||||||
<filename>GENERIC</filename> kernel has this included, so if you
|
|
||||||
have not installed a custom kernel or do not have a
|
|
||||||
<filename>/sys</filename> directory, you do not have to change
|
|
||||||
anything. If you do need to recompile your kernel, please refer
|
|
||||||
to the <link linkend="kernelconfig">kernel configuration</link>
|
|
||||||
section for more information.</para>
|
|
||||||
|
|
||||||
<para>You can check how many tunnel devices your current kernel
|
|
||||||
has by typing the following:</para>
|
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>ifconfig -a</userinput>
|
|
||||||
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
|
|
||||||
inet 200.10.100.1 --> 203.10.100.24 netmask 0xffffffff
|
|
||||||
tun1: flags=8050<POINTOPOINT,RUNNING,MULTICAST> mtu 576
|
|
||||||
tun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
|
|
||||||
inet 203.10.100.1 --> 203.10.100.20 netmask 0xffffffff
|
|
||||||
tun3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500</screen>
|
|
||||||
|
|
||||||
<note>
|
|
||||||
<para>In FreeBSD 4.0 and later releases, you will only see any
|
|
||||||
<devicename>tun</devicename> devices which have already been
|
|
||||||
used. This means you might not see <emphasis>any</emphasis>
|
|
||||||
<devicename>tun</devicename> devices. If this is the case, do
|
|
||||||
not worry; the device should be created dynamically when
|
|
||||||
<command>ppp</command> attempts to use it.</para>
|
|
||||||
</note>
|
|
||||||
|
|
||||||
<para>This case shows four tunnel devices, two of which are
|
|
||||||
currently configured and being used. It should be noted that
|
|
||||||
the <literal>RUNNING</literal> flag above indicates that the
|
|
||||||
interface has been used at some point—it is not an error
|
|
||||||
if your interface does not show up as
|
|
||||||
<literal>RUNNING</literal>.</para>
|
|
||||||
|
|
||||||
<para>If for some reason you have a kernel that does not have the
|
|
||||||
<devicename>tun</devicename> device in it and cannot recompile
|
|
||||||
the kernel, all is not lost. You should be able to dynamically
|
|
||||||
load the code. Please refer to the appropriate
|
|
||||||
&man.modload.8; and &man.lkm.4; manual pages for further
|
|
||||||
details.</para>
|
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
<sect3>
|
<sect3>
|
||||||
<title>Check the <devicename>tun</devicename> Device</title>
|
<title>Check the <devicename>tun</devicename> Device</title>
|
||||||
|
|
||||||
<para>Under normal circumstances, most users will only require one
|
<para>Under normal circumstances, most users will only use one
|
||||||
<devicename>tun</devicename> device
|
<devicename>tun</devicename> device
|
||||||
(<filename>/dev/tun0</filename>). If you have specified more
|
(<filename>/dev/tun0</filename>). References to
|
||||||
than one on the <literal>pseudo-device</literal> line for
|
<devicename>tun0</devicename> below may be changed to
|
||||||
<devicename>tun</devicename> in your kernel configuration file,
|
<devicename>tunN</devicename> where N is any unit number.</para>
|
||||||
then alter all references to <devicename>tun0</devicename> below
|
|
||||||
to reflect whichever device number you are using (e.g.,
|
|
||||||
<devicename>tun2</devicename>).</para>
|
|
||||||
|
|
||||||
|
<para>For FreeBSD installations that do not have DEVFS enabled,
|
||||||
|
the existence of the <devicename>tun0</devicename> device should
|
||||||
|
be verified (this is not necessary if DEVFS is enabled as device
|
||||||
|
nodes will be created on demand).
|
||||||
|
|
||||||
<para>The easiest way to make sure that the
|
<para>The easiest way to make sure that the
|
||||||
<devicename>tun0</devicename> device is configured correctly,
|
<devicename>tun0</devicename> device is configured correctly,
|
||||||
is to remake the device. This process is quite easy. To remake
|
is to remake the device. To remake the device, do the
|
||||||
the device, do the following:</para>
|
following:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||||||
&prompt.root; <userinput>./MAKEDEV tun0</userinput></screen>
|
&prompt.root; <userinput>./MAKEDEV tun0</userinput></screen>
|
||||||
|
|
@ -284,22 +239,6 @@ tun3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500</screen>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||||||
&prompt.root; <userinput>./MAKEDEV tun15</userinput></screen>
|
&prompt.root; <userinput>./MAKEDEV tun15</userinput></screen>
|
||||||
|
|
||||||
<para>To confirm that the kernel is configured correctly, issue
|
|
||||||
the follow command and compare the results:</para>
|
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
|
|
||||||
tun0: flags=8050<POINTOPOINT,RUNNING,MULTICAST> mut 1500</screen>
|
|
||||||
|
|
||||||
<para>The <literal>RUNNING</literal> flag may not yet be set, in
|
|
||||||
which case you will see:</para>
|
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
|
|
||||||
tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500</screen>
|
|
||||||
|
|
||||||
<para>Remember from earlier that you might not see the device if it
|
|
||||||
has not been used yet, as <devicename>tun</devicename> devices are
|
|
||||||
created on demand in FreeBSD 4.0 and later releases.</para>
|
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
<sect3>
|
<sect3>
|
||||||
|
|
@ -324,23 +263,34 @@ tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500</screen>
|
||||||
beyond the scope of this document.</para>
|
beyond the scope of this document.</para>
|
||||||
|
|
||||||
<para>The resolver is a set of system calls that do the name
|
<para>The resolver is a set of system calls that do the name
|
||||||
mappings, but you have to tell them where to find their
|
mappings, but you have to tell it where to find the
|
||||||
information. You do this by first editing the file
|
information. For versions of FreeBSD prior to 5.0, you do this
|
||||||
<filename>/etc/host.conf</filename>. Do <emphasis>not</emphasis>
|
by first editing the file <filename>/etc/host.conf</filename>.
|
||||||
call this file <filename>/etc/hosts.conf</filename> (note the
|
FreeBSD 5.0 uses the <filename>/etc/nsswitch.conf</filename> file.
|
||||||
extra <literal>s</literal>) as the results can be
|
|
||||||
confusing.</para>
|
|
||||||
|
|
||||||
<sect4>
|
<sect4>
|
||||||
<title>Edit <filename>/etc/host.conf</filename></title>
|
<title>Edit <filename>/etc/host.conf</filename></title>
|
||||||
|
|
||||||
<para>This file should contain the following two lines (in this
|
<para>For versions of FreeBSD prior to 5.0, this file should
|
||||||
order):</para>
|
contain the following two lines (in this order):</para>
|
||||||
|
|
||||||
<programlisting>hosts
|
<programlisting>hosts
|
||||||
bind</programlisting>
|
bind</programlisting>
|
||||||
|
|
||||||
<para>These instruct the resolver to first look in the file
|
<para>This instructs the resolver to first look in the file
|
||||||
|
<filename>/etc/hosts</filename>, and then to consult the DNS
|
||||||
|
if the name was not found.</para>
|
||||||
|
</sect4>
|
||||||
|
|
||||||
|
<sect4>
|
||||||
|
<title>Edit <filename>/etc/nsswitch.conf</filename></title>
|
||||||
|
|
||||||
|
<para>For FreeBSD version 5.0 or above, this file should
|
||||||
|
contain at least the following line:
|
||||||
|
|
||||||
|
<programlisting>hosts: files, dns</programlisting>
|
||||||
|
|
||||||
|
<para>This instructs the resolver to first look in the file
|
||||||
<filename>/etc/hosts</filename>, and then to consult the DNS
|
<filename>/etc/hosts</filename>, and then to consult the DNS
|
||||||
if the name was not found.</para>
|
if the name was not found.</para>
|
||||||
</sect4>
|
</sect4>
|
||||||
|
|
@ -348,7 +298,7 @@ bind</programlisting>
|
||||||
<sect4>
|
<sect4>
|
||||||
<title>Edit <filename>/etc/hosts</filename></title>
|
<title>Edit <filename>/etc/hosts</filename></title>
|
||||||
|
|
||||||
<para>This file should contain the IP addresses and names of
|
<para>This file may contain the IP addresses and names of
|
||||||
machines on your network. At a bare minimum it should contain
|
machines on your network. At a bare minimum it should contain
|
||||||
entries for the machine which will be running ppp. Assuming
|
entries for the machine which will be running ppp. Assuming
|
||||||
that your machine is called <hostid
|
that your machine is called <hostid
|
||||||
|
|
@ -357,30 +307,29 @@ bind</programlisting>
|
||||||
<filename>/etc/hosts</filename> should contain:</para>
|
<filename>/etc/hosts</filename> should contain:</para>
|
||||||
|
|
||||||
<programlisting>127.0.0.1 localhost.bar.com localhost
|
<programlisting>127.0.0.1 localhost.bar.com localhost
|
||||||
127.0.0.1 localhost.bar.com.
|
::1 localhost.bar.com localhost
|
||||||
10.0.0.1 foo.bar.com foo
|
10.0.0.1 foo.bar.com foo</programlisting>
|
||||||
10.0.0.1 foo.bar.com.</programlisting>
|
|
||||||
|
|
||||||
<para>The first two lines define the alias
|
<para>The first two lines define the alias
|
||||||
<hostid>localhost</hostid> as a synonym for the current
|
<hostid>localhost</hostid> as a synonym for the current
|
||||||
machine. Regardless of your own IP address, the IP address
|
machine. Regardless of your own IP address, the IP addresses
|
||||||
for this line should always be <hostid
|
for these lines should always be <hostid
|
||||||
role="ipaddr">127.0.0.1</hostid>. The second two lines map
|
role="ipaddr">127.0.0.1</hostid> and <hostid
|
||||||
|
role="ipaddr">::1</hostid>. The last line maps
|
||||||
the name <hostid role="fqdn">foo.bar.com</hostid> (and the
|
the name <hostid role="fqdn">foo.bar.com</hostid> (and the
|
||||||
shorthand <hostid>foo</hostid>) to the IP address <hostid
|
shorthand <hostid>foo</hostid>) to the IP address <hostid
|
||||||
role="ipaddr">10.0.0.1</hostid>.</para>
|
role="ipaddr">10.0.0.1</hostid>.</para>
|
||||||
|
|
||||||
<para>If your provider allocates you a static IP address and
|
<para>If your provider allocates you a static IP address and
|
||||||
name, use them in place of the <hostid
|
name, and you are not using that as your host name, add this
|
||||||
role="ipaddr">10.0.0.1</hostid> entry.</para>
|
to the <filename>/etc/hosts</filename> too.
|
||||||
</sect4>
|
</sect4>
|
||||||
|
|
||||||
<sect4>
|
<sect4>
|
||||||
<title>Edit <filename>/etc/resolv.conf</filename></title>
|
<title>Edit <filename>/etc/resolv.conf</filename></title>
|
||||||
|
|
||||||
<para>The <filename>/etc/resolv.conf</filename> file tells the
|
<para>The <filename>/etc/resolv.conf</filename> file tells the
|
||||||
resolver how to behave. If you are running your own DNS, you
|
resolver how to behave. Normally, you will need to enter
|
||||||
may leave this file empty. Normally, you will need to enter
|
|
||||||
the following line(s):</para>
|
the following line(s):</para>
|
||||||
|
|
||||||
<programlisting>domain <replaceable>bar.com</replaceable>
|
<programlisting>domain <replaceable>bar.com</replaceable>
|
||||||
|
|
@ -392,19 +341,23 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
<hostid role="ipaddr"><replaceable>y.y.y.y</replaceable></hostid>
|
<hostid role="ipaddr"><replaceable>y.y.y.y</replaceable></hostid>
|
||||||
addresses are those given to you by your ISP. Add as many
|
addresses are those given to you by your ISP. Add as many
|
||||||
<literal>nameserver</literal> lines as your ISP provides. The
|
<literal>nameserver</literal> lines as your ISP provides. The
|
||||||
<literal>domain</literal> line defaults to your hostname's
|
<literal>domain</literal> line is set to your hosts
|
||||||
domain, and is probably unnecessary. Refer to the
|
domain name. Refer to the &man.resolv.conf.5; manual page for
|
||||||
&man.resolv.conf.5; manual page for details of other possible
|
details of other possible entries in this file.</para>
|
||||||
entries in this file.</para>
|
|
||||||
|
<para>If you are running a local name server, replace the
|
||||||
|
above nameserver lines with:</para>
|
||||||
|
|
||||||
|
<programlisting>nameserver <replaceable>0.0.0.0</replaceable></programlisting>
|
||||||
|
|
||||||
<indexterm><primary>PPP</primary></indexterm>
|
<indexterm><primary>PPP</primary></indexterm>
|
||||||
<indexterm><primary>ISP</primary></indexterm>
|
<indexterm><primary>ISP</primary></indexterm>
|
||||||
<para>If you are running PPP version 2 or greater, the
|
<para>The <command>enable dns</command> command (entered in the
|
||||||
<command>enable dns</command> command will tell PPP to request
|
<filename>/etc/ppp/ppp.conf</filename> file - see below) will
|
||||||
that your ISP confirms the nameserver values. If your ISP
|
tell PPP to request that your ISP confirms the nameserver values.
|
||||||
supplies different addresses (or if there are no nameserver
|
If your ISP supplies different addresses (or if there are no
|
||||||
lines in <filename>/etc/resolv.conf</filename>), PPP will
|
nameserver lines in <filename>/etc/resolv.conf</filename>), PPP
|
||||||
rewrite the file with the ISP-supplied values.</para>
|
will rewrite the file with the ISP-supplied values.</para>
|
||||||
</sect4>
|
</sect4>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
|
|
@ -414,9 +367,9 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
<indexterm><primary>PPP</primary><secondary>configuration</secondary></indexterm>
|
<indexterm><primary>PPP</primary><secondary>configuration</secondary></indexterm>
|
||||||
<para>Both <command>ppp</command> and <command>pppd</command>
|
<para>Both <command>ppp</command> and <command>pppd</command>
|
||||||
(the kernel level implementation of PPP) use the configuration
|
(the kernel level implementation of PPP) use the configuration
|
||||||
files located in the <filename>/usr/share/examples/ppp</filename> directory.
|
files located in the <filename>/etc/ppp</filename> directory.
|
||||||
The sample configuration files provided are a good reference,
|
Examples for user ppp can be found in
|
||||||
so do not delete them.</para>
|
<filename>/usr/share/examples/ppp/</filename>.
|
||||||
|
|
||||||
<para>Configuring <command>ppp</command> requires that you edit a
|
<para>Configuring <command>ppp</command> requires that you edit a
|
||||||
number of files, depending on your requirements. What you put
|
number of files, depending on your requirements. What you put
|
||||||
|
|
@ -429,9 +382,9 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
<title>PPP and Static IP Addresses</title>
|
<title>PPP and Static IP Addresses</title>
|
||||||
|
|
||||||
<indexterm><primary>PPP</primary><secondary>with static IP addresses</secondary></indexterm>
|
<indexterm><primary>PPP</primary><secondary>with static IP addresses</secondary></indexterm>
|
||||||
<para>You will need to create a configuration file called
|
<para>You will need to edit the
|
||||||
<filename>/etc/ppp/ppp.conf</filename>. It should look
|
<filename>/etc/ppp/ppp.conf</filename> configuration file. It
|
||||||
similar to the example below.</para>
|
should look similar to the example below.</para>
|
||||||
|
|
||||||
<note>
|
<note>
|
||||||
<para>Lines that end in a <literal>:</literal> start in the
|
<para>Lines that end in a <literal>:</literal> start in the
|
||||||
|
|
@ -440,16 +393,23 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
</note>
|
</note>
|
||||||
|
|
||||||
<programlisting>1 default:
|
<programlisting>1 default:
|
||||||
2 set device /dev/cuaa0
|
2 set log Phase Chat LCP IPCP CCP tun command
|
||||||
3 set speed 115200
|
3 ident user-ppp VERSION (built COMPILATIONDATE)
|
||||||
4 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK \\dATDT\\TTIMEOUT 40 CONNECT"
|
4 set device /dev/cuaa0
|
||||||
5 provider:
|
5 set speed 115200
|
||||||
6 set phone "(123) 456 7890"
|
6 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \
|
||||||
7 set login "TIMEOUT 10 \"\" \"\" gin:--gin: foo word: bar col: ppp"
|
7 \"\" AT OK-AT-OK ATE1Q0 OK \\dATDT\\TTIMEOUT 40 CONNECT"
|
||||||
8 set timeout 300
|
8 set timeout 180
|
||||||
9 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.0 0.0.0.0
|
9 enable dns
|
||||||
10 add default HISADDR
|
10
|
||||||
11 enable dns</programlisting>
|
11 provider:
|
||||||
|
12 set phone "(123) 456 7890"
|
||||||
|
13 set authname foo
|
||||||
|
14 set authkey bar
|
||||||
|
15 set login "TIMEOUT 10 \"\" \"\" gin:--gin: \\U word: \\P col: ppp"
|
||||||
|
16 set timeout 300
|
||||||
|
17 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.255 0.0.0.0
|
||||||
|
18 add default HISADDR</programlisting>
|
||||||
|
|
||||||
<para>Do not include the line numbers, they are just for
|
<para>Do not include the line numbers, they are just for
|
||||||
reference in this discussion.</para>
|
reference in this discussion.</para>
|
||||||
|
|
@ -467,6 +427,32 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 2:</term>
|
<term>Line 2:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Enables logging parameters. When the configuration
|
||||||
|
is working satisfactorily, this line should be reduced
|
||||||
|
to saying
|
||||||
|
|
||||||
|
<programlisting>set log phase tun</programlisting>
|
||||||
|
|
||||||
|
in order to avoid excessive log file sizes.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 3:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Tells PPP how to identify itself to the peer.
|
||||||
|
PPP identifies itself to the peer if it has any trouble
|
||||||
|
negotiating and setting up the link, providing information
|
||||||
|
that the peers administrator may find useful when
|
||||||
|
investigating such problems.
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 4:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Identifies the device to which the modem is
|
<para>Identifies the device to which the modem is
|
||||||
connected. <devicename>COM1</devicename> is
|
connected. <devicename>COM1</devicename> is
|
||||||
|
|
@ -477,7 +463,7 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 3:</term>
|
<term>Line 5:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Sets the speed you want to connect at. If 115200
|
<para>Sets the speed you want to connect at. If 115200
|
||||||
|
|
@ -487,7 +473,7 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 4:</term>
|
<term>Line 6 & 7:</term>
|
||||||
|
|
||||||
<indexterm><primary>PPP</primary><secondary>user PPP</secondary></indexterm>
|
<indexterm><primary>PPP</primary><secondary>user PPP</secondary></indexterm>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
|
@ -495,11 +481,44 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
syntax similar to the &man.chat.8; program. Refer to
|
syntax similar to the &man.chat.8; program. Refer to
|
||||||
the manual page for information on the features of this
|
the manual page for information on the features of this
|
||||||
language.</para>
|
language.</para>
|
||||||
|
|
||||||
|
<para>Note that this command continues onto the next line
|
||||||
|
for readability. Any command in
|
||||||
|
<filename>ppp.conf</filename> may do this if the last
|
||||||
|
character on the line is a ``\'' character.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 5:</term>
|
<term>Line 8:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Sets the idle timeout for the link. 180 seconds
|
||||||
|
is the default, so this line is purely cosmetic.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 9:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>Tells PPP to ask the peer to confirm the local
|
||||||
|
resolver settings. If you run a local name server, this
|
||||||
|
line should be commented out or removed.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 10:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>A blank line for readability. Blank lines are ignored
|
||||||
|
by PPP.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 11:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Identifies an entry for a provider called
|
<para>Identifies an entry for a provider called
|
||||||
|
|
@ -508,7 +527,7 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 6:</term>
|
<term>Line 12:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Sets the phone number for this provider. Multiple
|
<para>Sets the phone number for this provider. Multiple
|
||||||
|
|
@ -525,10 +544,29 @@ nameserver <replaceable>y.y.y.y</replaceable></programlisting>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 7:</term>
|
<term>Line 13 & 14:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>The login string is of the same chat-like syntax as
|
<para>Identifies the user name and password. When connecting
|
||||||
|
using a unix-style login prompt, these values are referred
|
||||||
|
to by the <command>set login</command> command using the \U
|
||||||
|
and \P variables. When connecting using PAP or CHAP, these
|
||||||
|
values are used at authentication time.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>Line 15:</term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<indexterm><primary>PAP</primary></indexterm>
|
||||||
|
<indexterm><primary>CHAP</primary></indexterm>
|
||||||
|
<para>If you are using PAP or CHAP, there will be no login
|
||||||
|
at this point, and this line should be commented out or
|
||||||
|
removed. See <link linkend="userppp-PAPnCHAP">PAP and CHAP
|
||||||
|
authentication</link> for further details.</para>
|
||||||
|
|
||||||
|
<para>The login string is of the same chat-like syntax as
|
||||||
the dial string. In this example, the string works for
|
the dial string. In this example, the string works for
|
||||||
a service whose login session looks like this:</para>
|
a service whose login session looks like this:</para>
|
||||||
|
|
||||||
|
|
@ -539,31 +577,27 @@ protocol: ppp</screen>
|
||||||
|
|
||||||
<para>You will need to alter this script to suit your own
|
<para>You will need to alter this script to suit your own
|
||||||
needs. When you write this script for the first time,
|
needs. When you write this script for the first time,
|
||||||
you should enable <quote>chat</quote> logging to ensure
|
you should ensure that you have enabled <quote>chat</quote>
|
||||||
that the conversation is going as expected.</para>
|
logging so you can determine if the conversation is going
|
||||||
<indexterm><primary>PAP</primary></indexterm>
|
as expected.</para>
|
||||||
<indexterm><primary>CHAP</primary></indexterm>
|
|
||||||
<para>If you are using PAP or CHAP, there will be no login
|
|
||||||
at this point, so your login string can be left blank.
|
|
||||||
See <link linkend="userppp-PAPnCHAP">PAP and CHAP
|
|
||||||
authentication</link> for further details.</para>
|
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 8:</term>
|
<term>Line 16:</term>
|
||||||
|
|
||||||
<indexterm><primary>timeout</primary></indexterm>
|
<indexterm><primary>timeout</primary></indexterm>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Sets the default timeout (in seconds) for the
|
<para>Sets the default idle timeout (in seconds) for the
|
||||||
connection. Here, the connection will be closed
|
connection. Here, the connection will be closed
|
||||||
automatically after 300 seconds of inactivity. If you
|
automatically after 300 seconds of inactivity. If you
|
||||||
never want to timeout, set this value to zero.</para>
|
never want to timeout, set this value to zero or use
|
||||||
|
the <option>-ddial</option> command line switch.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 9:</term>
|
<term>Line 17:</term>
|
||||||
<indexterm><primary>ISP</primary></indexterm>
|
<indexterm><primary>ISP</primary></indexterm>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Sets the interface addresses. The string
|
<para>Sets the interface addresses. The string
|
||||||
|
|
@ -580,13 +614,12 @@ protocol: ppp</screen>
|
||||||
instructions for <link linkend="userppp-dynamicIP">PPP
|
instructions for <link linkend="userppp-dynamicIP">PPP
|
||||||
and Dynamic IP addresses</link>. If this line is
|
and Dynamic IP addresses</link>. If this line is
|
||||||
omitted, <command>ppp</command> cannot run in
|
omitted, <command>ppp</command> cannot run in
|
||||||
<option>-auto</option> or <option>-dynamic</option>
|
<option>-auto</option> mode.</para>
|
||||||
mode.</para>
|
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 10:</term>
|
<term>Line 18:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Adds a default route to your ISP's gateway. The
|
<para>Adds a default route to your ISP's gateway. The
|
||||||
|
|
@ -595,31 +628,24 @@ protocol: ppp</screen>
|
||||||
important that this line appears after line 9,
|
important that this line appears after line 9,
|
||||||
otherwise <literal>HISADDR</literal> will not yet be
|
otherwise <literal>HISADDR</literal> will not yet be
|
||||||
initialized.</para>
|
initialized.</para>
|
||||||
</listitem>
|
|
||||||
</varlistentry>
|
|
||||||
|
|
||||||
<varlistentry>
|
<para>If you do not wish to run ppp in <option>-auto</option>,
|
||||||
<term>Line 11:</term>
|
this line should be moved to the
|
||||||
<indexterm><primary>nameserver</primary></indexterm>
|
<filename>ppp.linkup</filename> file.
|
||||||
<listitem>
|
|
||||||
<para>This line tells PPP to ask your ISP to confirm that
|
|
||||||
your nameserver addresses are correct. If your ISP
|
|
||||||
supports this facility, PPP can then update
|
|
||||||
<filename>/etc/resolv.conf</filename> with the correct
|
|
||||||
nameserver entries.</para>
|
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
|
|
||||||
<para>It is not necessary to add an entry to
|
<para>It is not necessary to add an entry to
|
||||||
<filename>ppp.linkup</filename> when you have a static IP
|
<filename>ppp.linkup</filename> when you have a static IP
|
||||||
address as your routing table entries are already correct
|
address and are running ppp in <option>-auto</option> mode as your
|
||||||
before you connect. You may however wish to create an entry
|
routing table entries are already correct before you connect.
|
||||||
to invoke programs after connection. This is explained later
|
You may however wish to create an entry to invoke programs after
|
||||||
with the sendmail example.</para>
|
connection. This is explained later with the sendmail
|
||||||
|
example.</para>
|
||||||
|
|
||||||
<para>Example configuration files can be found in the
|
<para>Example configuration files can be found in the
|
||||||
<filename>/usr/share/examples/ppp</filename> directory.</para>
|
<filename>/usr/share/examples/ppp/</filename> directory.</para>
|
||||||
</sect4>
|
</sect4>
|
||||||
|
|
||||||
<sect4 id="userppp-dynamicIP">
|
<sect4 id="userppp-dynamicIP">
|
||||||
|
|
@ -636,15 +662,15 @@ protocol: ppp</screen>
|
||||||
<link linkend="userppp-staticIP">PPP and Static IP
|
<link linkend="userppp-staticIP">PPP and Static IP
|
||||||
Addresses</link>, with the following change:</para>
|
Addresses</link>, with the following change:</para>
|
||||||
|
|
||||||
<programlisting>9 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
|
<programlisting>17 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.255</programlisting>
|
||||||
|
|
||||||
<para>Again, do not include the line numbers, they are just for
|
<para>Again, do not include the line number, it is just for
|
||||||
reference. Indentation of at least one space is
|
reference. Indentation of at least one space is
|
||||||
required.</para>
|
required.</para>
|
||||||
|
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 9:</term>
|
<term>Line 17:</term>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>The number after the <literal>/</literal> character
|
<para>The number after the <literal>/</literal> character
|
||||||
|
|
@ -654,28 +680,27 @@ protocol: ppp</screen>
|
||||||
will always work.</para>
|
will always work.</para>
|
||||||
|
|
||||||
<para>The last argument (<literal>0.0.0.0</literal>) tells
|
<para>The last argument (<literal>0.0.0.0</literal>) tells
|
||||||
PPP to negotiate using address <hostid
|
PPP to start negotiations using address <hostid
|
||||||
role="ipaddr">0.0.0.0</hostid> rather than <hostid
|
role="ipaddr">0.0.0.0</hostid> rather than <hostid
|
||||||
role="ipaddr">10.0.0.1</hostid>. Do not use
|
role="ipaddr">10.0.0.1</hostid> and is necessary for some
|
||||||
<literal>0.0.0.0</literal> as the first argument to
|
ISPs. Do not use <literal>0.0.0.0</literal> as the first
|
||||||
<command>set ifaddr</command> as it prevents PPP from
|
argument to <command>set ifaddr</command> as it prevents
|
||||||
setting up an initial route in <option>-auto</option>
|
PPP from setting up an initial route in
|
||||||
mode.</para>
|
<option>-auto</option> mode.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
|
|
||||||
<para>If you are running version 1.x of PPP, you will also need
|
<para>If you are not running in <option>-auto</option> mode, you
|
||||||
to create an entry in <filename>/etc/ppp/ppp.linkup</filename>.
|
will need to create an entry in
|
||||||
|
<filename>/etc/ppp/ppp.linkup</filename>.
|
||||||
<filename>ppp.linkup</filename> is used after a connection has
|
<filename>ppp.linkup</filename> is used after a connection has
|
||||||
been established. At this point, <command>ppp</command> will
|
been established. At this point, <command>ppp</command> will
|
||||||
know what IP addresses should <emphasis>really</emphasis> be
|
have assigned the interface addresses and it will now be
|
||||||
used. The following entry will delete the existing bogus
|
possible to add the routing table entries:</para>
|
||||||
routes, and create correct ones:</para>
|
|
||||||
|
|
||||||
<programlisting>1 provider:
|
<programlisting>1 provider:
|
||||||
2 delete ALL
|
2 add default HISADDR</programlisting>
|
||||||
3 add 0 0 HISADDR</programlisting>
|
|
||||||
|
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
|
@ -697,22 +722,11 @@ protocol: ppp</screen>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>Line 2:</term>
|
<term>Line 2:</term>
|
||||||
|
|
||||||
<listitem>
|
|
||||||
<para>This line tells <command>ppp</command> to delete all
|
|
||||||
of the existing routes for the acquired
|
|
||||||
<devicename>tun</devicename> interface (except the
|
|
||||||
direct route entry).</para>
|
|
||||||
</listitem>
|
|
||||||
</varlistentry>
|
|
||||||
|
|
||||||
<varlistentry>
|
|
||||||
<term>Line 3:</term>
|
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>This line tells <command>ppp</command> to add a
|
<para>This line tells <command>ppp</command> to add a
|
||||||
default route that points to <literal>HISADDR</literal>.
|
default route that points to <literal>HISADDR</literal>.
|
||||||
<literal>HISADDR</literal> will be replaced with the IP
|
<literal>HISADDR</literal> will be replaced with the IP
|
||||||
number of the gateway as negotiated in the IPCP.</para>
|
number of the gateway as negotiated by the IPCP.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
|
|
@ -721,15 +735,6 @@ protocol: ppp</screen>
|
||||||
<filename>/usr/share/examples/ppp/ppp.conf.sample</filename> and
|
<filename>/usr/share/examples/ppp/ppp.conf.sample</filename> and
|
||||||
<filename>/usr/share/examples/ppp/ppp.linkup.sample</filename> for a
|
<filename>/usr/share/examples/ppp/ppp.linkup.sample</filename> for a
|
||||||
detailed example.</para>
|
detailed example.</para>
|
||||||
|
|
||||||
<para>Version 2 of PPP introduces <quote>sticky routes</quote>.
|
|
||||||
Any <literal>add</literal> or <literal>delete</literal> lines
|
|
||||||
that contain <literal>MYADDR</literal> or
|
|
||||||
<literal>HISADDR</literal> will be remembered, and any time
|
|
||||||
the actual values of <literal>MYADDR</literal> or
|
|
||||||
<literal>HISADDR</literal> change, the routes will be
|
|
||||||
reapplied. This removes the necessity of repeating these
|
|
||||||
lines in <filename>ppp.linkup</filename>.</para>
|
|
||||||
</sect4>
|
</sect4>
|
||||||
|
|
||||||
<sect4>
|
<sect4>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue