summaryrefslogtreecommitdiffstats
path: root/share/doc/handbook/userppp.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'share/doc/handbook/userppp.sgml')
-rw-r--r--share/doc/handbook/userppp.sgml751
1 files changed, 0 insertions, 751 deletions
diff --git a/share/doc/handbook/userppp.sgml b/share/doc/handbook/userppp.sgml
deleted file mode 100644
index 1bc7aae..0000000
--- a/share/doc/handbook/userppp.sgml
+++ /dev/null
@@ -1,751 +0,0 @@
-<!-- $Id: userppp.sgml,v 1.16 1997/05/12 16:29:48 brian Exp $ -->
-<!-- The FreeBSD Documentation Project -->
-
-<sect>Setting up user PPP<label id="userppp">
-
-<!-- This FAQ/HowTo is intended to get you up and running with
- iijppp, also known as <em>user level ppp</em> or just
- simply <em>ppp</em> for FreeBSD 2.0.5 and above.
-
-<p>It also outlines how to use iijppp as a ppp server.
-
-<p>This document has originally written by Nik Clayton, and has
- turned into a collaborative effort over the years.
-
--->
-
-<p>User PPP was introduced to FreeBSD in release 2.0.5 as an
- addition to the existing kernel implementation of PPP. So,
- what is different about this new PPP that warrants its
- addition? To quote from the manual page:
-
-<quote>
- This is a user process PPP software package. Normally, PPP is
- implemented as a part of the kernel (e.g. as managed by pppd) and
- it is thus somewhat hard to debug and/or modify its behavior. However,
- in this implementation PPP is done as a user process with the help of
- the tunnel device driver (tun).
-</quote>
-
- In essence, this means that rather than running a PPP daemon, the ppp
- program can be run as and when desired. No PPP interface needs to be
- compiled into the kernel, as the program can use the generic tunnel
- device to get data into and out of the kernel.
-
- From here on out, user ppp will be referred to simply as ppp unless a
- distinction needs to be made between it and any other PPP client/server
- software. Unless otherwise stated, all commands in this section should
- be executed as root.
-
-<sect1><heading>Before you start</heading>
-
-<p>This document assumes you are in roughly this position:
-
- You have an account with an Internet Service Provider (ISP) which lets you
- use PPP. Further, you have a modem (or other device) connected and
- configured correctly which allows you to connect to your ISP.
-
- You are going to need the following information to hand:
-
-<itemize>
- <item>The IP address of your ISP's gateway. The gateway is the
- machine to which you will connect and will
- be set up as your <tt>default route</tt>.
-
- <item>Your ISP's netmask setting. If you can't determine this,
- assume a netmask of 0xffffff00.
-
- <item>The IP addresses of one or more nameservers. Normally, you
- will be given two IP numbers.
-
- <item>If your ISP allocates you a static IP address and/or hostname
- then you will need that as well. If not, you will need to know
- from what range of IP addresses your allocated IP address will
- belong. If you havn't been given this range, you can accept
- any IP number (as explained later).
-</itemize>
-
- If you do not have any of this information then contact your ISP and make
- sure they provide it to you.
-
- In addition, it is assumed that because your connection to the
- Internet is not full time you are not running a name server
- (<tt>named(8)</tt>). If this is not the case, ignore any
- information on setting up the <tt>/etc/resolv.conf</tt> file.
-
-<sect1><heading>Building a ppp ready kernel</heading>
-
-<p>As the description states, ``ppp'' uses the kernel ``tun'' device.
- It is necessary to make sure that your kernel has support for this
- device compiled in.
-
- To check this, go to your kernel compile directory (probably
- /sys/i386/conf) and examine your kernel configuration file.
- It needs to have the line
-
-<tscreen><verb>
- pseudo-device tun 1
-</verb></tscreen>
-
- in it somewhere. The stock GENERIC kernel has this as standard, so
- if you have not installed a custom kernel or you do not have a /sys
- directory, you do not have to change anything.
- If your kernel configuration file does not have this line in it, or
- you need to configure more than one tun device (for example, if
- you are setting up a server and could have 16 dialup ppp connections
- at any one time then you will need to use ``16'' instead of ``1''),
- then you should add the line, re-compile, re-install and boot the new
- kernel. Please refer to the
- <ref id="kernelconfig" name="Configuring the FreeBSD Kernel">
- section for more information on kernel configuration.
-
-<p>You can check how many tunnel devices your current kernel has by
- typing the following:
-
-<tscreen><verb>
- # ifconfig -a
- 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=8050<POINTOPOINT,RUNNING,MULTICAST> mtu 1500
-</verb></tscreen>
-
- which in this case shows four tunnel devices, two of which are
- currently configured and being used.
-
-<p>If you have a kernel without the tun device, and you can not
- rebuild it for some reason, all is not lost. You should be
- able to dynamically load the code. Refer to the appropriate
- modload(8) and lkm(4) pages for further details.
-
-<p>You may also wish to take this opportunity to configure a firewall.
- Details can be found in the <ref id="firewalls" name="Firewalls">
- section.
-
-<sect1><heading>Check the tun device</heading>
-
-<p>Most users will only require one ``tun'' device (tun0). If you have
- used more (i.e., a number other than `1' in the pseudo-device line
- in the kernel configuration file) then alter all references to ``tun0''
- below to reflect whichever device number you are using.
-
- The easiest way to make sure that the tun0 device is configured correctly
- is to re-make it. To this end, execute the following commands:
-
-<tscreen><verb>
- # cd /dev
- # ./MAKEDEV tun0
-</verb></tscreen>
-
-<p>If you require 16 tunnel devices in your kernel, you will need to
- create more than just tun0:
-
-<tscreen><verb>
- # cd /dev
- # ./MAKEDEV tun0 tun1 tun2 tun3 tun4 tun5 tun6 tun7 tun8 tun9
- # ./MAKEDEV tun10 tun11 tun12 tun13 tun14 tun15
-</verb></tscreen>
-
-<p>Also, to confirm that the kernel is configured correctly,
- the following command should give the indicated output:
-
-<tscreen><verb>
- $ ifconfig tun0
- tun0: flags=8050<POINTOPOINT,RUNNING,MULTICAST> mtu 1500
- $
-</verb></tscreen>
-
-<sect1><heading>PPP Name Resolution Configuration</heading>
-
-<p>The resolver is the part of the networking system that turns IP
- addresses into hostnames and vice versa. It can be configured
- to look for maps that describe IP to hostname mappings in one
- of two places. The first is a file called <tt>/etc/hosts</tt>
- (<tt>man 5 hosts</tt>). The second is the Internet Domain Name
- Service (DNS), a distributed data base, the discussion of which
- is beyond the scope of this document.
-
-<p>This section describes briefly how to configure your resolver. If
- you are already running a DNS, this section may be skipped.
-
-<p>The resolver is a set of system calls that do the name mappings, but
- you have to tell them where to get their information from. You do
- this by first editing the file <tt>/etc/host.conf</tt>. Do
- <bf>not</bf> call this file <tt>/etc/hosts.conf</tt> (note the extra
- ``s'') as the results can be confusing.
-
-<sect2><heading>Edit the /etc/host.conf file</heading>
-
-<p>This file should contain the following two lines:
-
-<tscreen><verb>
- hosts
- bind
-</verb></tscreen>
- which instructs the resolver to first look in the file
- <tt>/etc/hosts</tt>, and then to consult the DNS if the
- name was not found.
-
-<sect2><heading>Edit the /etc/hosts(5) file</heading>
-
-<p>This file should contain the IP addresses and names of machines on your
- network. At a bare minimum it should contain entries for the machine
- which will be running ppp. Assuming that your machine is called
- foo.bar.com with the IP address 10.0.0.1, <tt>/etc/hosts</tt> should
- contain:
-
-<tscreen><verb>
- 127.0.0.1 localhost
- 10.0.0.1 foo.bar.com foo
-</verb></tscreen>
-
- The first line defines the alias ``localhost'' as a synonym for the
- current machine. Regardless of your own IP address, the IP address for
- this line should always be 127.0.0.1. The second line maps the name
- ``foo.bar.com'' (and the shorthand ``foo'') to the IP address 10.0.0.1.
-
- If your provider allocates you a static IP address then use this in place
- of 10.0.0.1.
-
-<sect2><heading>Edit the /etc/resolv.conf file</heading>
-
-<p><tt>/etc/resolv.conf</tt> contains some extra information required when
- you are not running a nameserver. It points the resolver routines at real
- nameservers, and specifies some other information.
-
- At the very least, <tt>/etc/resolv.conf</tt> should contain one line with
- a nameserver which can be queried, but two nameservers are preferable.
- You should enter these as IP addresses, for example:
-
-<tscreen><verb>
- nameserver 1.2.3.4
- nameserver 1.2.3.5
-</verb></tscreen>
-
- Add as many ``nameserver'' lines as your ISP provides nameservers.
- Refer to the resolv.conf manual page for further details of entries
- in this file.
-
-<sect1><heading>PPP Configuration</heading>
-
-<p>Both user ppp and pppd (the kernel level implementation of PPP)
- use configuration files located in the <tt>/etc/ppp</tt> directory.
- The sample configuration files provided are a good reference for
- user ppp, so don't delete them.
-
-<p>Configuring ppp requires that you edit up to three files, depending
- on your requirements. What you put in them depends to some extent
- on whether your ISP allocates IP addresses statically (i.e., you get
- given one IP address, and always use that one) or dynamically (i.e.,
- your IP address can be different during different PPP sessions).
-
-<sect2><heading>PPP and static IP addresses</heading>
-
-<p>You will need to create three files in the <tt>/etc/ppp</tt>
- directory.
-
-<p>The first of these files is <tt>ppp.conf</tt>. It should look
- similar to the example below. Note that lines that end in a
- ``:'' start in column 1, all other lines should be indented as
- shown using spaces or tabs.
-
- <tt>/etc/ppp/ppp.conf</tt>
-<tscreen><verb>
-1 default:
-2 set device /dev/cuaa0
-3 set speed 38400
-4 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK
-\\dATDT\\T TIMEOUT 40 CONNECT"
-5 provider:
-6 set phone 01234567890
-7 set login "TIMEOUT 10 gin:-BREAK-gin: foo word: bar col: ppp"
-8 set timeout 120
-9 set ifaddr x.x.x.x y.y.y.y
-10 delete ALL
-11 add 0 0 y.y.y.y
-12 set openmode active
-</verb></tscreen>
- Do not include the line numbers, they are just for reference in
- this discussion.
-
-<descrip>
-<tag/Line 1:/ Identifies the default entry. Commands in this entry are
- executed automatically when ppp is run.
-
-<tag/Line 2:/ Identifies the device to which the modem is connected.
- COM1: is <tt>/dev/cuaa0</tt> and COM2: is <tt>/dev/cuaa1</tt>.
-
-<tag/Line 3:/ Sets the speed you want to connect at.
-
-<tag/Line 4:/ The dial string. User ppp uses an expect-send syntax similar
- to the <tt>chat(8)</tt> program. Refer to the manual page
- for information on the features of this language.
-
-<tag/Line 5:/ Identifies an entry for a provider called ``provider''.
-
-<tag/Line 6:/ Sets the phone number for this provider. Multiple phone
- numbers may be specified using the `:' character as a
- seperator.
-
-<tag/Line 7:/ The login string. The login string is of the same
- syntax as the dial string. In this example, the string is
- for a service who's login session looks like
-
-<tscreen><verb>
- J. Random Provider
- login: foo
- password: bar
- protocol: ppp
-</verb></tscreen>
-
- You will need to alter this script to suit your own needs.
-
-<tag/Line 8:/ Sets the default timeout (in seconds) for the connection.
- Here, the connection will be closed automatically after
- 120 seconds of inactivity.
-
-<tag/Line 9:/ Sets the interface addresses. The string x.x.x.x should be
- replaced by the IP address that your provider allocates you.
- The string y.y.y.y should be replaced by the IP address that
- your ISP indicated for their gateway (the machine to which
- you connect).
-
-<tag/Line 10:/ Deletes all existing routing table entries for the
- acquired tun device.
-
-<tag/Line 11:/ Adds a default route to your ISPs IP number. The IP
- number should always be that of your ISPs gateway.
-
-<tag/Line 12:/ Tells our side to begin negotiation. This is not always
- necessary, but it does no harm to have both sides initiating
- the Line Control Protocol (LCP).
-</descrip>
-
-<p>The second of these files is <tt>/etc/ppp/ppp.linkup</tt>:
-
-<tscreen><verb>
- x.x.x.x:
- delete ALL
- add 0 0 HISADDR
-</verb></tscreen>
-
-<p>Replace x.x.x.x with your IP address as before. This file is used to
- automatically delete all existing routes for the acquired line and
- add a default route from your ISP (who's address is automatically
- inserted with the HISADDR macro) to you.
-
-<p>With a static IP number assigned by your ISP, you don't actually
- need an entry in <tt>/etc/ppp.linkup</tt>, but again, it doesn't
- do any harm to have it.
-
-<p>Finally, the third of these files is <tt>/etc/ppp/ppp.secret</tt>.
- This file allows you to set some passwords to control access to
- your ppp server. You may or may not want to configure this file,
- depending on how many people have access to your ppp system.
-
-<p>Examples can be found in the <tt>/etc/ppp</tt> directory.
-
-<sect2><heading>PPP and Dynamic IP addresses</heading>
-
-<p>If your service provider does not assign static IP numbers,
- <tt>ppp</tt> can be configured to negotiate the local and
- remote addresses. This is done by "guessing" an IP number
- and allowing ppp to set it up correctly using the LCP at
- connection time. Otherwise, the configuration is the same as
- that of a static IP configuration.
-
-<p>Put the following lines in your <tt>ppp.conf</tt> file:
-
-<tscreen><verb>
- ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0
- delete ALL
- add 0 0 10.0.0.2
-</verb></tscreen>
-
-<p>You should NOT use 0 as either IP address. If you do, ppp will not be
- able to set up the correct initial entries in the routing table.
-
-<p>The number after the ``/'' character is the number of bits of
- the address that ppp will insist on.
-
-<p>Note also that the HISADDR macro is not yet available in
- <tt>ppp.conf</tt>, only in <tt>ppp.linkup</tt>.
-
-<p>See the pmdemand entry in the files <tt>/etc/ppp/ppp.conf.sample</tt> and
- <tt>/etc/ppp/ppp.linkup.sample</tt> for a detailed example.
-
-<sect2><heading>Receiving incoming calls with PPP</heading>
-
-<p>This section describes setting up iijppp in a server role.
-
-<p>When you configure <tt>ppp</tt> to receive incoming calls, you
- must decide whether you wish to forward packets for just
- <tt>ppp</tt> connections, for all interfaces, or not at all.
- To forward for just ppp connections, include the line
-
-<tscreen><verb>
- enable proxy
-</verb></tscreen>
-
- in your <tt>ppp.conf</tt> file. If you wish to forward packets on all
- interfaces, use the
-
-<tscreen><verb>
- gateway=YES
-</verb></tscreen>
-
- option in <tt>/etc/rc.conf</tt> (this file used to be called
- <tt>/etc/sysconfig</tt>).
-
-<sect3><heading>Which getty?</heading>
-
-<p><ref id="dialup" name="Configuring FreeBSD for Dialup Services">
- provides a good description on enabling dialup services using getty.
-
-<p>An alternative to getty is
- <url url="http://www.leo.org/~doering/mgetty/index.html" name="mgetty">,
- a smarter version of getty designed with dialup lines in mind.
-
-<p>The advantages of using mgetty is that it actively <em>talks</em> to
- modems, meaning if port is turned off in <tt>/etc/ttys</tt> then
- your modem won't answer the phone.
-
-<p>Later versions of mgetty (from 0.99beta onwards) also support the
- automatic detection of PPP streams, allowing your clients script-less
- access to your server.
-
-<p>Obtaining and configuring mgetty correctly is beyond the scope of
- this document.
-
-<sect3><heading>Setting up a PPP shell for dynamic-IP users</heading>
-
-<p>Create a file called <tt>/etc/ppp/ppp-shell</tt> containing the
- following:
-
-<tscreen><verb>
- #!/bin/sh
- IDENT=`echo $0 | sed -e 's/^.*-\(.*\)$/\1/'`
- CALLEDAS="$IDENT"
- TTY=`tty`
-
- if [ x$IDENT = xdialup ]; then
- IDENT=`basename $TTY`
- fi
-
- echo "PPP for $CALLEDAS on $TTY"
- echo "Starting PPP for $IDENT"
-
- exec /usr/sbin/ppp -direct $IDENT
-</verb></tscreen>
-
-<p>This script should be executable. Now make a symbolic link called
- <tt>ppp-dialup</tt> to this script using the following commands:
-
-<tscreen><verb>
- # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-dialup
-</verb></tscreen>
-
-<p>You should use this script as the <em>shell</em> for all your dialup
- ppp users. This is an example from <tt>/etc/password</tt>
- for a dialup PPP user with username pchilds. (remember don't directly
- edit the password file, use <tt>vipw</tt>)
-
-<tscreen><verb>
- pchilds:*:1011:300:Peter Childs PPP:/home/ppp:/etc/ppp/ppp-dialup
-</verb></tscreen>
-
-<p>Create a <tt>/home/ppp</tt> directory that is world readable
- containing the following 0 byte files
-
-<tscreen><verb>
- -r--r--r-- 1 root wheel 0 May 27 02:23 .hushlogin
- -r--r--r-- 1 root wheel 0 May 27 02:22 .rhosts
-</verb></tscreen>
-
- which prevents <tt>/etc/motd</tt> from being displayed.
-
-<sect3><heading>Setting up a PPP shell for static-IP users</heading>
-
-<p>Create the <tt>ppp-shell</tt> file as above and for each account with
- statically assigned IPs create a symbolic link to <tt>ppp-shell</tt>.
-
-<p>For example, if you have three dialup customers fred, sam, and mary,
- that you route class C networks for, you would type the following:
-
-<tscreen><verb>
- # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-fred
- # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-sam
- # ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-mary
-</verb></tscreen>
-
-<p>Each of these users dialup accounts should have their shell set
- to the symbolic link created above. (ie. mary's shell should be
- <tt>/etc/ppp/ppp-mary</tt>).
-
-<sect3><heading>Setting up ppp.conf for dynamic-IP users</heading>
-
-<p>The <tt>/etc/ppp/ppp.conf</tt> file should contain something along
- the lines of
-
-<tscreen><verb>
- default:
- set debug phase lcp chat
- set timeout 0
-
- ttyd0:
- set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
- enable proxy
-
- ttyd1:
- set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
- enable proxy
-</verb></tscreen>
-
-<p>Note the indenting is important.
-
-<p>The <tt>default:</tt> section is loaded for each session. For each
- dialup line enabled in <tt>/etc/ttys</tt> create an entry similar
- to the one for <tt>ttyd0:</tt> above. Each line should get a unique
- IP from your pool of ip address for dynamic users.
-
-<sect3><heading>Setting up ppp.conf for static-IP users</heading>
-
-<p>Along with the contents of the sample <tt>/etc/ppp/ppp.conf</tt>
- above you should add a section for each of the statically assigned
- dialup users. We will continue with our fred, sam, and mary example.
-
-<tscreen><verb>
- fred:
- set ifaddr 203.14.100.1 203.14.101.1 255.255.255.255
-
- sam:
- set ifaddr 203.14.100.1 203.14.102.1 255.255.255.255
-
- mary:
- set ifaddr 203.14.100.1 203.14.103.1 255.255.255.255
-</verb></tscreen>
-
-<p>The file <tt>/etc/ppp/ppp.linkup</tt> should also contain routing
- information for each static IP user if required. The line below
- would add a route for the <tt>203.14.101.0</tt> class C via
- the client's ppp link.
-
-<tscreen><verb>
- fred:
- add 203.14.101.0 netmask 255.255.255.0 HISADDR
-
- sam:
- add 203.14.102.0 netmask 255.255.255.0 HISADDR
-
- mary:
- add 203.14.103.0 netmask 255.255.255.0 HISADDR
-</verb></tscreen>
-
-<sect3><heading>More on mgetty, AutoPPP, and MS extensions</heading>
-
-<sect4><heading>Mgetty and AutoPPP</heading>
-
-<p>Configuring and compiling mgetty with the AUTO_PPP option enabled
- allows mgetty to detect the LCP phase of PPP connections and automatically
- spawn off a ppp shell. However, since the default login/password sequence
- does not occur it is necessary to authenticate users using either PAP
- or CHAP.
-
-<p>This section assumes the user has successfully configured, compiled, and
- installed a version of mgetty with the AUTO_PPP option (v0.99beta or later)
-
-<p>Make sure your <tt>/usr/local/etc/mgetty+sendfax/login.config</tt> file
- has the following in it:
-
-<tscreen><verb>
- /AutoPPP/ - - /etc/ppp/ppp-pap-dialup
-</verb></tscreen>
-
-<p>This will tell mgetty to run the <tt>ppp-pap-dialup</tt> script for
- detected PPP connections.
-
-<p>Create a file called <tt>/etc/ppp/ppp-pap-dialup</tt> containing the
- following (the file should be executable):
-
-<tscreen><verb>
- #!/bin/sh
- TTY=`tty`
- IDENT=`basename $TTY`
- exec /usr/sbin/ppp -direct pap$IDENT
-</verb></tscreen>
-
-<p>For each dialup line enabled in <tt>/etc/ttys</tt> create a corresponding
- entry in <tt>/etc/ppp/ppp.conf</tt>. This will happily co-exist with
- the definitions we created above.
-
-<tscreen><verb>
- papttyd0:
- enable pap
- set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
- enable proxy
-
- papttyd1:
- enable pap
- set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
- enable proxy
-</verb></tscreen>
-
-<p>Each user logging in with this method will need to have a username/password
- in <tt>/etc/ppp/ppp.secret</tt> file, or alternatively add the
-
-<tscreen><verb>
- enable passwdauth
-</verb></tscreen>
-
- option to authenticate users via pap from the <tt>/etc/password</tt>d
- file. (*)
-
-<p>(*) Note this option only available in 2.2-961014-SNAP or later, or by
- getting the updated ppp code for 2.1.x. (see MS extensions below for details)
-
-<sect4><heading>MS extentions</heading>
-
-<p>From 2.2-961014-SNAP onwards it is possible to allow the automatic
- negotiation of DNS and NetBIOS name servers with clients supporting
- this feature (namely Win95/NT clients). See RFC1877 for more details
- on the protocol.
-
-<p>An example of enabling these extensions in your
- <tt>/etc/ppp/ppp.conf</tt> file is illustrated below.
-
-<tscreen><verb>
- default:
- set debug phase lcp chat
- set timeout 0
- enable msext
- set ns 203.14.100.1 203.14.100.2
- set nbns 203.14.100.5
-</verb></tscreen>
-
-<p>This will tell the clients the primary and secondary
- name server addresses, and a netbios nameserver host.
-
-<sect1><heading>Final system configuration</heading>
-
-<p>You now have PPP configured, but there are a few more things to
- do before it is ready to work. They all involve editing the
- <tt>/etc/rc.conf</tt> file (was <tt>/etc/sysconfig</tt>).
-
- Working from the top down in this file, make sure the ``hostname='' line
- is set, e.g.:
-
-<tscreen><verb>
- hostname=foo.bar.com
-</verb></tscreen>
-
-<p>Look for the network_interfaces variable. If you want to configure
- your system to dial your ISP on demand, make sure the tun0 device is
- added to the list, otherwise remove it.
-
-<tscreen><verb>
- network_interfaces="lo0 tun0"
- ifconfig_tun0=
-</verb></tscreen>
-
- Note, the <tt>ifconfig_tun0</tt> variable should be empty, and
- a file called /etc/start_if.tun0 should be created. This file
- should contain the line
-
-<tscreen><verb>
- ppp -auto mysystem
-</verb></tscreen>
-
- This script is executed at network configuration time, starting
- your ppp daemon in automatic mode.
-
-<p>Set the router program to ``NO'' with the line
-
-<tscreen><verb>
- router_enable=NO (/etc/rc.conf)
- router=NO (/etc/sysconfig)
-</verb></tscreen>
-
- It is important that the <tt>routed</tt> daemon is not started
- (the default) as <tt>routed</tt> tends to delete the default
- routing table entries created by ppp.
-
-<p>It is probably worth your while ensuring that the ``sendmail_flags'' line
- does not include the ``-q'' option, otherwise sendmail will attempt to do
- a network lookup every now and then, possibly causing your machine to dial
- out. You may try:
-
-<tscreen><verb>
- sendmail_flags="-bd"
-</verb></tscreen>
-
- The upshot of this is that you must force sendmail to re-examine the
- mail queue whenever the ppp link is up by typing:
-
-<tscreen><verb>
- # /usr/sbin/sendmail -q
-</verb></tscreen>
-
- If you don't like this, it is possible to set up a "dfilter" to block
- SMTP traffic. Refer to the sample files for further details. You
- can also use a script in the <tt>ppp.linkup</tt> file to execute this
- command.
-
- All that is left is to reboot the machine.
-
- You can now either type
-<tscreen><verb>
- # ppp
-</verb></tscreen>
-
- and then ``dial provider'' to start the PPP session, or, if you
- want ppp to establish sessions automatically when there is outbound
- traffic (and you havn't created the start_if.tun0 script) , type
-
-<tscreen><verb>
- # ppp -auto provider
-</verb></tscreen>
-
-<sect1><heading>Summary</heading>
-
-<p>To recap, the following steps are necessary when setting up ppp
- for the first time:
-
-<p>Client side:
-
-<itemize>
- <item>Ensure that the tun device is built into your kernel.
- <item>Ensure that the tunX device file is available in the
- <tt>/dev</tt> directory.
- <item>Create an entry in <tt>/etc/ppp.conf</tt>. The
- <tt>pmdemand</tt> example should suffice for most
- ISPs.
- <item>Create an entry in <tt>/etc/ppp.linkup</tt>.
- <item>Update your rc.conf (or sysconfig) file.
- <item>Create a start_if.tun0 script if you require demand
- dialing.
-</itemize>
-
-<p>Server side:
-<itemize>
- <item>Ensure that the tun device is built into your kernel.
- <item>Ensure that the tunX device file is available in the
- <tt>/dev</tt> directory.
- <item>Create an entry in /etc/passwd (using the vipw(8)
- program).
- <item>Create a profile in this users home directory that
- runs ``ppp -direct direct-server'' or similar.
- <item>Create an entry in <tt>/etc/ppp.conf</tt>. The
- <tt>direct-server</tt> example should suffice.
- <item>Create an entry in <tt>/etc/ppp.linkup</tt>.
- <item>Update your rc.conf (or sysconfig) file.
-</itemize>
-
-<sect1><heading>Acknowledgments</heading>
-
-<p>Thanks to the following for their comments & suggestions:
-
-<p>&a.nik
-<p>&a.dirkvangulik
-<p>&a.pjc
OpenPOWER on IntegriCloud