summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason McIntyre <jmc@cvs.openbsd.org>2004-07-13 13:44:26 +0000
committerJason McIntyre <jmc@cvs.openbsd.org>2004-07-13 13:44:26 +0000
commita05972145b227fa9159f06d260a6b0dc5786230d (patch)
treef948800fdbc1559dc48909284fd4f6d886f2d131
parent5e3584bb013cf6b858c56cf75960503442db68a3 (diff)
stuff from me and claudio@:
- remove references to stuff we don't support (libalias, libradius, etc.) - consistent quoting - macro fixes - grammar, punctuation, etc. - use .Ic for commands to reduce amount of quoting more work needed here. this page is just too much...
-rw-r--r--usr.sbin/ppp/ppp/ppp.8.m41970
1 files changed, 962 insertions, 1008 deletions
diff --git a/usr.sbin/ppp/ppp/ppp.8.m4 b/usr.sbin/ppp/ppp/ppp.8.m4
index 8337fbe4198..786075f7673 100644
--- a/usr.sbin/ppp/ppp/ppp.8.m4
+++ b/usr.sbin/ppp/ppp/ppp.8.m4
@@ -25,7 +25,7 @@ changecom(,)dnl
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $OpenBSD: ppp.8.m4,v 1.17 2004/05/25 11:29:27 jmc Exp $
+.\" $OpenBSD: ppp.8.m4,v 1.18 2004/07/13 13:44:25 jmc Exp $
.\"
.Dd September 20, 1995
.Dt PPP 8
@@ -52,24 +52,20 @@ and it's thus somewhat hard to debug and/or modify its behaviour.
However, in this implementation
.Em PPP
is done as a user process with the help of the
-tunnel device driver
-.Pq Xr tun 4 .
+tunnel device driver,
+.Xr tun 4 .
.Pp
The
.Fl nat
flag does the equivalent of a
.Dq nat enable yes ,
enabling
-.Nm Ns No 's
+.Nm Ns 's
network address translation features.
This allows
.Nm
to act as a NAT or masquerading engine for all machines on an internal
LAN.
-ifdef({LOCALNAT},{},{Refer to
-.Xr libalias 3
-for details on the technical side of the NAT engine.
-})dnl
Refer to the
.Sx NETWORK ADDRESS TRANSLATION (PACKET ALIASING)
section of this manual page for details on how to configure NAT in
@@ -98,10 +94,8 @@ by one each time until it succeeds.
If it fails three times in a row
because the device file is missing, it gives up.
.Pp
-The following
-.Va mode Ns No s
-are understood by
-.Nm ppp :
+The following modes are understood by
+.Nm :
.Bl -tag -width XXX -offset XXX
.It Fl auto
.Nm
@@ -115,15 +109,15 @@ Packets received (including the first one) while
is trying to bring the link up will remain queued for a default of
2 minutes.
See the
-.Dq set choked
+.Ic set choked
command below.
.Pp
In
.Fl auto
mode, at least one
-.Dq system
+.Ic system
must be given on the command line (see below) and a
-.Dq set ifaddr
+.Ic set ifaddr
must be done in the system profile that specifies a peer IP address to
use when configuring the interface.
Something like
@@ -152,19 +146,19 @@ attempts to establish a connection with the peer immediately, but never
becomes a daemon.
The link is created in background mode.
This is useful if you wish to control
-.Nm Ns No 's
+.Nm ppp Ns 's
invocation from another process.
.It Fl direct
This is used for receiving incoming connections.
.Nm
ignores the
-.Dq set device
+.Ic set device
line and uses descriptor 0 as the link.
.Pp
If callback is configured,
.Nm
will use the
-.Dq set device
+.Ic set device
information when dialing back.
.It Fl dedicated
This option is designed for machines connected with a dedicated
@@ -205,7 +199,7 @@ the status of the connection and close the connection.
All functions can also be optionally password protected for security.
.It Supports both manual and automatic dialing.
Interactive mode has a
-.Dq term
+.Ic term
command which enables you to talk to the device directly.
When you are connected to the remote peer and it starts to talk
.Em PPP ,
@@ -239,7 +233,7 @@ A third
mode is also available.
This mode is targeted at a dedicated link between two machines.
.Nm
-will never voluntarily quit from dedicated mode - you must send it the
+will never voluntarily quit from dedicated mode \- you must send it the
.Dq quit all
command via its diagnostic socket.
A
@@ -274,7 +268,7 @@ In direct mode,
acts as server which accepts incoming
.Em PPP
connections on stdin/stdout.
-.It "Supports PAP and CHAP (rfc 1994, 2433 and 2759) authentication.
+.It "Supports PAP and CHAP (RFC 1994, 2433, and 2759) authentication.
With PAP or CHAP, it is possible to skip the Unix style
.Xr login 1
procedure, and use the
@@ -284,25 +278,17 @@ If the peer requests Microsoft CHAP authentication and
.Nm
is compiled with DES support, an appropriate MD4/DES response will be
made.
-.It Supports RADIUS (rfc 2138 & 2548) authentication.
+.It Supports RADIUS (RFC 2138 & 2548) authentication.
An extension to PAP and CHAP,
-.Em \&R Ns No emote
-.Em \&A Ns No ccess
-.Em \&D Ns No ial
-.Em \&I Ns No n
-.Em \&U Ns No ser
-.Em \&S Ns No ervice
+.Em \&R Ns emote
+.Em \&A Ns ccess
+.Em \&D Ns ial
+.Em \&I Ns n
+.Em \&U Ns ser
+.Em \&S Ns ervice
allows authentication information to be stored in a central or
distributed database along with various per-user framed connection
characteristics.
-ifdef({LOCALRAD},{},{If
-.Xr libradius 3
-is available at compile time,
-.Nm
-will use it to make
-.Em RADIUS
-requests when configured to do so.
-})dnl
.It Supports Proxy Arp.
.Nm
can be configured to make one or more proxy arp entries on behalf of
@@ -316,7 +302,7 @@ filter for incoming packets, the
.Em out
filter for outgoing packets, the
.Em dial
-filter to {define} a dialing trigger packet and the
+filter to {define} a dialing trigger packet, and the
.Em alive
filter for keeping a connection alive with the trigger packet.
.It Tunnel driver supports bpf.
@@ -327,7 +313,7 @@ to check the packet flow over the
link.
.It Supports PPP over TCP and PPP over UDP.
If a device name is specified as
-.Em host Ns No : Ns Em port Ns
+.Em host : Ns Em port Ns
.Xo
.Op / Ns tcp|udp ,
.Xc
@@ -337,38 +323,10 @@ conventional serial device.
UDP connections force
.Nm
into synchronous mode.
-.It Supports PPP over ISDN.
-If
-.Nm
-is given a raw B-channel i4b device to open as a link, it's able to talk
-to the
-.Xr isdnd 8
-daemon to establish an ISDN connection.
-.It Supports PPP over Ethernet (rfc 2516).
-If
-.Nm
-is given a device specification of the format
-.No PPPoE: Ns Ar iface Ns Xo
-.Op \&: Ns Ar provider Ns
-.Xc
-and if
-.Xr netgraph 4
-is available,
-.Nm
-will attempt talk
-.Em PPP
-over Ethernet to
-.Ar provider
-using the
-.Ar iface
-network interface.
-.Pp
-On systems that do not support
-.Xr netgraph 4 ,
-an external program such as
-.Xr pppoe 8
-may be used.
-.It "Supports IETF draft Predictor-1 (rfc 1978) and DEFLATE (rfc 1979) compression."
+.It Supports PPP over Ethernet (RFC 2516).
+PPP over Ethernet is supported with the external program
+.Xr pppoe 8 .
+.It "Supports IETF draft Predictor-1 (RFC 1978) and DEFLATE (RFC 1979) compression."
.Nm
supports not only VJ-compression but also Predictor-1 and DEFLATE compression.
Normally, a modem has built-in compression (e.g., v42.bis) and the system
@@ -381,17 +339,17 @@ Unlike VJ-compression, Predictor-1 and DEFLATE compression pre-compresses
.Em all
network traffic flowing through the link, thus reducing overheads to a
minimum.
-.It Supports Microsoft's IPCP extensions (rfc 1877).
+.It Supports Microsoft's IPCP extensions (RFC 1877).
Name Server Addresses and NetBIOS Name Server Addresses can be negotiated
with clients using the Microsoft
.Em PPP
stack (i.e., Win95, WinNT)
-.It Supports Multi-link PPP (rfc 1990)
+.It Supports Multi-link PPP (RFC 1990).
It is possible to configure
.Nm
to open more than one physical connection to the peer, combining the
bandwidth of all links for better throughput.
-.It Supports MPPE (draft-ietf-pppext-mppe)
+.It Supports MPPE (draft-ietf-pppext-mppe).
MPPE is Microsoft Point to Point Encryption scheme.
It is possible to configure
.Nm
@@ -401,31 +359,36 @@ For now,
can only get encryption keys from CHAP 81 authentication.
.Nm
must be compiled with DES for MPPE to operate.
-.It Supports IPV6CP (rfc 2023).
+.It Supports IPV6CP (RFC 2023).
An IPv6 connection can be made in addition to or instead of the normal
IPv4 connection.
.El
.Sh PERMISSIONS
.Nm
is installed as user
-.Dv root
+.Dq root
and group
-.Dv network ,
+.Dq network ,
with permissions
-.Dv 04554 .
+.Dv 04550 .
By default,
.Nm
will not run if the invoking user ID is not zero.
This may be overridden by using the
-.Dq allow users
+.Ic allow users
command in
.Pa /etc/ppp/ppp.conf .
When running as a normal user,
.Nm
switches to user ID 0 in order to alter the system routing table, set up
system lock files and read the ppp configuration files.
-All external commands (executed via the "shell" or "!bg" commands) are executed
-as the user ID that invoked
+All external commands
+(executed via the
+.Ic shell
+or
+.No !\& Ns Ic bg
+commands)
+are executed as the user ID that invoked
.Nm ppp .
Refer to the
.Sq ID0
@@ -434,7 +397,7 @@ zero.
.Sh GETTING STARTED
When you first run
.Nm
-you may need to deal with some initial configuration details.
+you may need to deal with some initial configuration details:
.Bl -bullet
.It
Your kernel must {include} a tunnel device (the GENERIC kernel includes
@@ -476,7 +439,7 @@ Refer to the
.Xr group 5
manual page for details.
Each of these users must also be given access using the
-.Dq allow users
+.Ic allow users
command in
.Pa /etc/ppp/ppp.conf .
.It
@@ -520,13 +483,13 @@ after altering
.Pa /etc/syslog.conf .
.It
Although not strictly relevant to
-.Nm Ns No 's
+.Nm ppp Ns 's
operation, you should configure your resolver so that it works correctly.
This can be done by configuring a local DNS
(using
.Xr named 8 )
or by adding the correct
-.Sq nameserver
+.Dq nameserver
lines to the file
.Pa /etc/resolv.conf .
Refer to the
@@ -540,14 +503,14 @@ update
.Pa /etc/resolv.conf
automatically.
Refer to the
-.Dq enable dns
+.Ic enable dns
and
-.Dq resolv
+.Ic resolv
commands below for details.
.El
.Sh MANUAL DIALING
In the following examples, we assume that your machine name is
-.Dv awfulhak .
+.Dq awfulhak .
When you invoke
.Nm
(see
@@ -579,20 +542,20 @@ certain circumstances (as may happen when you are connected directly
to certain PPP-capable terminal servers), this may result in
.Nm
hanging as soon as it tries to write data to your communications link
-as it is waiting for the CTS (clear to send) signal - which will never
+as it is waiting for the CTS (clear to send) signal \- which will never
come.
Thus, if you have a direct line and can't seem to make a
connection, try turning CTS/RTS off with
.Dq set ctsrts off .
If you need to do this, check the
.Dq set accmap
-description below too - you'll probably need to
+description below too \- you'll probably need to
.Dq set accmap 000a0000 .
.Pp
Usually, parity is set to
.Dq none ,
and this is
-.Nm Ns No 's
+.Nm ppp Ns 's
default.
Parity is a rather archaic error checking mechanism that is no
longer used because modern modems do their own error checking, and most
@@ -637,7 +600,9 @@ Overall 0 bytes/sec
ppp ON awfulhak>
.Ed
.Pp
-The term command can now be used to talk directly to the device:
+The
+.Ic term
+command can now be used to talk directly to the device:
.Bd -literal -offset indent
ppp ON awfulhak> term
at
@@ -667,7 +632,7 @@ To force
to start sending
.Em PPP
configuration packets to the peer, use the
-.Dq ~p
+.Ic ~p
command to drop out of terminal mode and enter packet mode.
.Pp
If you never even receive a login prompt, it is quite likely that the
@@ -700,19 +665,19 @@ Note that
.Sq PPP
in the prompt has changed to capital letters to indicate that you have
a peer connection.
-If only some of the three Ps go uppercase, wait until
-either everything is uppercase or lowercase.
-If they revert to lowercase, it means that
+If only some of the three Ps go upper case, wait until
+either everything is upper case or lower case.
+If they revert to lower case, it means that
.Nm
couldn't successfully negotiate with the peer.
-A good first step for troubleshooting at this point would be to
+A good first step for troubleshooting at this point would be:
.Bd -literal -offset indent
ppp ON awfulhak> set log local phase lcp ipcp
.Ed
.Pp
-and try again.
+\&...and try again.
Refer to the
-.Dq set log
+.Ic set log
command description below for further details.
If things fail at this point,
it is quite important that you turn logging on and try again.
@@ -720,8 +685,9 @@ It is also
important that you note any prompt changes and report them to anyone trying
to help you.
.Pp
-When the link is established, the show command can be used to see how
-things are going:
+When the link is established, the
+.Ic show
+command can be used to see how things are going:
.Bd -literal -offset indent
PPP ON awfulhak> show physical
* Modem related information is shown here *
@@ -753,12 +719,13 @@ PPP ON awfulhak> add default HISADDR
.Ed
.Pp
The string
-.Sq HISADDR
+.Dq HISADDR
represents the IP address of the connected peer.
If the
-.Dq add
+.Ic add
command fails due to an existing route, you can overwrite the existing
route using
+.Ic add! :
.Bd -literal -offset indent
PPP ON awfulhak> add! default HISADDR
.Ed
@@ -768,15 +735,15 @@ If a new IP address is negotiated at connection time,
.Nm
will update your default route accordingly.
.Pp
-You can now use your network applications (ping, telnet, ftp, etc.)
+You can now use your network applications (ping, telnet, ftp, etc.)\&
in other windows or terminals on your machine.
If you wish to reuse the current terminal, you can put
.Nm
into the background using your standard shell suspend and background
commands (usually
-.Dq ^Z
+.Sq ^Z
followed by
-.Dq bg ) .
+.Sq bg ) .
.Pp
Refer to the
.Sx PPP COMMAND LIST
@@ -788,17 +755,17 @@ See the example definitions in
(the format of
.Pa /etc/ppp/ppp.conf
is pretty simple).
-Each line contains one comment, inclusion, label or command:
+Each line contains one comment, inclusion, label, or command:
.Bl -bullet
.It
A line starting with a
-.Pq Dq #
+.Sq #
character is treated as a comment line.
Leading whitespace is ignored when identifying comment lines.
.It
An inclusion is a line beginning with the word
-.Sq {!include} .
-It must have one argument - the file to {include}.
+.Dq {!include} .
+It must have one argument \- the file to {include}.
You may wish to
.Dq {!include} ~/.ppp.conf
for compatibility with older versions of
@@ -806,7 +773,7 @@ for compatibility with older versions of
.It
A label name starts in the first column and is followed by
a colon
-.Pq Dq \&: .
+.Pq Sq \&: .
.It
A command line must contain a space or tab in the first column.
.El
@@ -836,7 +803,9 @@ When
is started with no arguments, the
.Dq default
section is still executed.
-The load command can be used to manually load a section from the
+The
+.Ic load
+command can be used to manually load a section from the
.Pa /etc/ppp/ppp.conf
file:
.Bd -literal -offset indent
@@ -847,7 +816,7 @@ Note, no action is taken by
.Nm
after a section is loaded, whether it's the result of passing a label on
the command line or using the
-.Dq load
+.Ic load
command.
Only the commands specified for that label in the configuration
file are executed.
@@ -862,13 +831,13 @@ switches, the link mode tells
.Nm
to establish a connection.
Refer to the
-.Dq set mode
+.Ic set mode
command below for further details.
.Pp
Once the connection is made, the
-.Sq ppp
+.Dq ppp
portion of the prompt will change to
-.Sq PPP :
+.Dq PPP :
.Bd -literal -offset indent
# ppp MyISP
\&...
@@ -901,9 +870,9 @@ example in
.Pa /etc/ppp/ppp.conf.sample
which runs a script in the background after the connection is established
(refer to the
-.Dq shell
+.Ic shell
and
-.Dq bg
+.Ic bg
commands below for a description of possible substitution strings).
Similarly, when a connection is closed, the contents of the
.Pa /etc/ppp/ppp.linkdown
@@ -922,7 +891,7 @@ supports
where all routes that contain the
.Dv HISADDR ,
.Dv MYADDR ,
-.Dv HISADDR6
+.Dv HISADDR6 ,
or
.Dv MYADDR6
literals will automatically be updated when the values of these variables
@@ -934,7 +903,7 @@ non-interactively (such as from a
.Xr crontab 5
entry or an
.Xr at 1
-job) you should use the
+job), you should use the
.Fl background
option.
When
@@ -964,10 +933,10 @@ You must also specify the destination label in
.Pa /etc/ppp/ppp.conf
to use.
It must contain the
-.Dq set ifaddr
-command to {define} the remote peer's IP address.
+.Ic set ifaddr
+command to {define} the remote peer's IP address
(refer to
-.Pa /etc/ppp/ppp.conf.sample )
+.Pa /etc/ppp/ppp.conf.sample ) .
.Bd -literal -offset indent
# ppp -auto pmdemand
.Ed
@@ -980,11 +949,11 @@ is specified,
.Nm
runs as a daemon but you can still configure or examine its
configuration by using the
-.Dq set server
+.Ic set server
command in
-.Pa /etc/ppp/ppp.conf ,
+.Pa /etc/ppp/ppp.conf
(for example,
-.Dq Li "set server +3000 mypasswd" )
+.Dq Li set server +3000 mypasswd )
and connecting to the diagnostic port as follows:
.Bd -literal -offset indent
# pppctl 3000 (assuming tun0)
@@ -994,7 +963,7 @@ tcp (127.0.0.1:1028) *
.Ed
.Pp
The
-.Dq show who
+.Ic show who
command lists users that are currently connected to
.Nm
itself.
@@ -1014,25 +983,26 @@ to be down.
If the connect fails, the default behaviour is to wait 30 seconds
and then attempt to connect when another outgoing packet is detected.
This behaviour can be changed using the
-.Dq set redial
+.Ic set redial
command:
-.Pp
-.No set redial Ar secs Ns Xo
+.Bd -ragged -offset indent
+.Ic set redial Ar secs Ns Xo
.Oo + Ns Ar inc Ns
.Op - Ns Ar max Ns
.Oc Ns Op . Ns Ar next
.Op Ar attempts
.Xc
+.Ed
.Pp
.Bl -tag -width attempts -compact
.It Ar secs
-is the number of seconds to wait before attempting
+The number of seconds to wait before attempting
to connect again.
If the argument is the literal string
.Sq Li random ,
the delay period is a random value between 1 and 30 seconds inclusive.
.It Ar inc
-is the number of seconds that
+The number of seconds that
.Ar secs
should be incremented each time a new dial attempt is made.
The timeout reverts to
@@ -1042,7 +1012,7 @@ The default value for
.Ar inc
is zero.
.It Ar max
-is the maximum number of times
+The maximum number of times
.Nm
should increment
.Ar secs .
@@ -1050,16 +1020,16 @@ The default value for
.Ar max
is 10.
.It Ar next
-is the number of seconds to wait before attempting
+The number of seconds to wait before attempting
to dial the next number in a list of numbers (see the
-.Dq set phone
+.Ic set phone
command).
The default is 3 seconds.
Again, if the argument is the literal string
.Sq Li random ,
the delay period is a random value between 1 and 30 seconds.
.It Ar attempts
-is the maximum number of times to try to connect for each outgoing packet
+The maximum number of times to try to connect for each outgoing packet
that triggers a dial.
The previous value is unchanged if this parameter is omitted.
If a value of zero is specified for
@@ -1073,7 +1043,7 @@ So, for example:
set redial 10.3 4
.Ed
.Pp
-will attempt to connect 4 times for each outgoing packet that causes
+\&...will attempt to connect 4 times for each outgoing packet that causes
a dial attempt with a 3 second delay between each number and a 10 second
delay after all numbers have been tried.
If multiple phone numbers
@@ -1085,7 +1055,7 @@ Alternatively,
set redial 10+10-5.3 20
.Ed
.Pp
-tells
+\&...tells
.Nm
to attempt to connect 20 times.
After the first attempt,
@@ -1096,7 +1066,7 @@ and so on until after the sixth attempt it pauses for 1 minute.
The next 14 pauses will also have a duration of one minute.
If
.Nm
-connects, disconnects and fails to connect again, the timeout starts again
+connects, disconnects, and fails to connect again, the timeout starts again
at 10 seconds.
.Pp
Modifying the dial delay is very useful when running
@@ -1128,14 +1098,11 @@ For example,
set reconnect 3 5
.Ed
.Pp
-tells
+\&...tells
.Nm
that on an unexpected loss of carrier, it should wait
-.Ar 3
-seconds before attempting to reconnect.
-This may happen up to
-.Ar 5
-times before
+3 seconds before attempting to reconnect.
+This may happen up to 5 times before
.Nm
gives up.
The default value of ntries is zero (no reconnect).
@@ -1151,19 +1118,19 @@ If the
flag is specified, all phone numbers are dialed at most once until
a connection is made.
The next number redial period specified with the
-.Dq set redial
+.Ic set redial
command is honoured, as is the reconnect tries value.
If your redial
value is less than the number of phone numbers specified, not all
the specified numbers will be tried.
-To terminate the program, type
+To terminate the program, type:
.Bd -literal -offset indent
PPP ON awfulhak> close
ppp ON awfulhak> quit all
.Ed
.Pp
A simple
-.Dq quit
+.Ic quit
command will terminate the
.Xr pppctl 8
or
@@ -1172,7 +1139,7 @@ connection but not the
.Nm
program itself.
You must use
-.Dq quit all
+.Ic quit all
to terminate
.Nm
as well.
@@ -1182,9 +1149,8 @@ To handle an incoming
connection request, follow these steps:
.Bl -enum
.It
-Make sure the modem and (optionally)
-.Pa /etc/rc.serial
-are configured correctly.
+Make sure the modem
+is configured correctly:
.Pp
.Bl -bullet -compact
.It
@@ -1276,9 +1242,9 @@ for details.
.It
Support for IPCP Domain Name Server and NetBIOS Name Server negotiation
can be enabled using the
-.Dq accept dns
+.Ic accept dns
and
-.Dq set nbns
+.Ic set nbns
commands.
Refer to their descriptions below.
.El
@@ -1292,16 +1258,16 @@ to authenticate the connection rather than
Configure your default section in
.Pa /etc/gettytab
with automatic ppp recognition by specifying the
-.Dq pp
+.Sq pp
capability:
-.Bd -literal
+.Bd -literal -offset indent
default:\\
:pp=/usr/local/bin/ppplogin:\\
.....
.Ed
.It
Configure your serial device(s), enable a
-.Xr getty 8
+.Xr getty 8 ,
and create
.Pa /usr/local/bin/ppplogin
as in the first three steps for method 1 above.
@@ -1314,7 +1280,7 @@ or
to
.Pa /etc/ppp/ppp.conf
under the
-.Sq incoming
+.Dq incoming
label (or whatever label
.Pa ppplogin
uses).
@@ -1322,7 +1288,7 @@ uses).
Create an entry in
.Pa /etc/ppp/ppp.secret
for each incoming user:
-.Bd -literal
+.Bd -literal -offset indent
Pfred<TAB>xxxx
Pgeorge<TAB>yyyy
.Ed
@@ -1331,7 +1297,7 @@ Pgeorge<TAB>yyyy
Now, as soon as
.Xr getty 8
detects a ppp connection (by recognising the HDLC frame headers), it runs
-.Dq /usr/local/bin/ppplogin .
+.Pa /usr/local/bin/ppplogin .
.Pp
It is
.Em VITAL
@@ -1348,9 +1314,9 @@ This may be done using
but alternatively, you can use PAP or CHAP.
CHAP is the more secure of the two, but some clients may not support it.
Once you decide which you wish to use, add the command
-.Sq enable chap
+.Dq enable chap
or
-.Sq enable pap
+.Dq enable pap
to the relevant section of
.Pa ppp.conf .
.Pp
@@ -1359,10 +1325,11 @@ You must then configure the
file.
This file contains one line per possible client, each line
containing up to five fields:
-.Pp
+.Bd -ragged -offset indent
.Ar name Ar key Oo
.Ar hisaddr Op Ar label Op Ar callback-number
.Oc
+.Ed
.Pp
The
.Ar name
@@ -1372,14 +1339,14 @@ specify the client username and password.
If
.Ar key
is
-.Dq \&*
+.Sq \&*
and PAP is being used,
.Nm
will look up the password database
.Pq Xr passwd 5
when authenticating.
If the client does not offer a suitable response based on any
-.Ar name Ns No / Ns Ar key
+.Ar name Ns / Ns Ar key
combination in
.Pa ppp.secret ,
authentication fails.
@@ -1389,7 +1356,7 @@ If authentication is successful,
(if specified)
is used when negotiating IP numbers.
See the
-.Dq set ifaddr
+.Ic set ifaddr
command for details.
.Pp
If authentication is successful and
@@ -1412,18 +1379,18 @@ the client will be called back on the given number.
If CBCP is being used,
.Ar callback-number
may also contain a list of numbers or a
-.Dq \&* ,
+.Sq \&* ,
as if passed to the
.Dq set cbcp
command.
The value will be used in
-.Nm Ns No 's
+.Nm ppp Ns 's
subsequent CBCP phase.
-.Sh PPP OVER TCP and UDP (a.k.a Tunnelling)
+.Sh PPP OVER TCP and UDP (a.k.a. Tunnelling)
Instead of running
.Nm
over a serial link, it is possible to
-use a TCP connection instead by specifying the host, port and protocol as the
+use a TCP connection instead by specifying the host, port, and protocol as the
device:
.Pp
.Dl set device ui-gate:6669/tcp
@@ -1501,7 +1468,7 @@ MyAuthName MyAuthPasswd
If
.Ar MyAuthPasswd
is a
-.Dq * ,
+.Sq * ,
the password is looked up in the
.Xr passwd 5
database.
@@ -1519,7 +1486,7 @@ ui-gate:
set ifaddr 10.0.4.2 10.0.4.1
.Ed
.Pp
-with the route setup in
+\&...with the route setup in
.Pa /etc/ppp/ppp.linkup :
.Bd -literal -offset indent
ui-gate:
@@ -1543,7 +1510,7 @@ To open the connection, just type
The result will be an additional "route" on awfulhak to the
10.0.2.0/24 network via the TCP connection, and an additional
"route" on ui-gate to the 10.0.1.0/24 network.
-The networks are effectively bridged - the underlying TCP
+The networks are effectively bridged \- the underlying TCP
connection may be across a public network (such as the
Internet), and the
.Em PPP
@@ -1552,10 +1519,10 @@ traffic is conceptually encapsulated
the two gateways.
.Pp
The major disadvantage of this mechanism is that there are two
-"guaranteed delivery" mechanisms in place - the underlying TCP
+"guaranteed delivery" mechanisms in place \- the underlying TCP
stream and whatever protocol is used over the
.Em PPP
-link - probably TCP again.
+link \- probably TCP again.
If packets are lost, both levels will
get in each others way trying to negotiate sending of the missing
packet.
@@ -1569,7 +1536,7 @@ will operate in synchronous mode.
This is another gain as the incoming
data does not have to be rearranged into packets.
.Pp
-Care should be taken when adding a default route through a tunneled
+Care should be taken when adding a default route through a tunnelled
setup like this.
It is quite common for the default route
(added in
@@ -1606,7 +1573,7 @@ on the server:
deny deflate pred1
.Ed
.Pp
-ensuring that you've put the requisite entry in
+Ensure that you've put the requisite entry in
.Pa /etc/ppp/ppp.secret
(MSCHAPv2 is challenge based, so
.Xr passwd 5
@@ -1642,8 +1609,8 @@ option should be switched on, and network applications (web browser,
.Xr telnet 1 ,
.Xr ftp 1 ,
.Xr ping 8 ,
-.Xr traceroute 8 )
-should be checked on the
+.Xr traceroute 8 ,
+etc.) should be checked on the
.Nm
host.
Finally, the same or similar applications should be checked on other
@@ -1667,7 +1634,7 @@ filter, the
.Em out
filter, the
.Em dial
-filter and the
+filter, and the
.Em alive
filter.
Here are the basics:
@@ -1675,7 +1642,7 @@ Here are the basics:
.It
A filter definition has the following syntax:
.Pp
-set filter
+.Ic set filter
.Ar name
.Ar rule-no
.Ar action
@@ -1695,34 +1662,29 @@ set filter
.It
.Ar Name
should be one of
-.Sq in ,
-.Sq out ,
-.Sq dial
+.Dq in ,
+.Dq out ,
+.Dq dial ,
or
-.Sq alive .
+.Dq alive .
.It
.Ar Rule-no
-is a numeric value between
-.Sq 0
-and
-.Sq 39
+is a numeric value between 0 and 39
specifying the rule number.
Rules are specified in numeric order according to
.Ar rule-no ,
-but only if rule
-.Sq 0
-is defined.
+but only if rule 0 is defined.
.It
.Ar Action
may be specified as
-.Sq permit
+.Dq permit
or
-.Sq deny ,
-in which case, if a given packet matches the rule, the associated action
+.Dq deny ,
+in which case if a given packet matches the rule, the associated action
is taken immediately.
.Ar Action
can also be specified as
-.Sq clear
+.Dq clear
to clear the action associated with that particular rule, or as a new
rule number greater than the current rule.
In this case, if a given
@@ -1732,7 +1694,7 @@ the new rule number (rather than the next rule number).
The
.Ar action
may optionally be followed with an exclamation mark
-.Pq Dq !\& ,
+.Pq Sq !\& ,
telling
.Nm
to reverse the sense of the following match.
@@ -1753,16 +1715,16 @@ or
may be given the values
.Dv MYADDR ,
.Dv HISADDR ,
-.Dv MYADDR6
+.Dv MYADDR6 ,
or
.Dv HISADDR6
(refer to the description of the
-.Dq bg
+.Ic bg
command for a description of these values).
When these values are used,
the filters will be updated any time the values change.
This is similar to the behaviour of the
-.Dq add
+.Ic add
command below.
.It
.Ar Proto
@@ -1772,12 +1734,12 @@ may be any protocol from
.Ar Cmp
is one of
.Sq \&lt ,
-.Sq \&eq
+.Sq \&eq ,
or
.Sq \&gt ,
-meaning less-than, equal and greater-than respectively.
+meaning less-than, equal, and greater-than, respectively.
.Ar Port
-can be specified as a numeric port or by service name from
+can be specified as a numeric port or by a service name from
.Pa /etc/services .
.It
The
@@ -1789,7 +1751,7 @@ flags are only allowed when
.Ar proto
is set to
.Sq tcp ,
-and represent the TH_ACK, TH_SYN and TH_FIN or TH_RST TCP flags respectively.
+and represent the TH_ACK, TH_SYN, and TH_FIN or TH_RST TCP flags, respectively.
.It
The timeout value adjusts the current idle timeout to at least
.Ar secs
@@ -1820,7 +1782,7 @@ See the
option below for further details.
.It
Use
-.Dq set filter Ar name No -1
+.Dq Li set filter name \-1
to flush all rules.
.El
.Pp
@@ -1828,9 +1790,9 @@ See
.Pa /etc/ppp/ppp.conf.sample .
.Sh SETTING THE IDLE TIMER
To check/set the idle timer, use the
-.Dq show bundle
+.Ic show bundle
and
-.Dq set timeout
+.Ic set timeout
commands:
.Bd -literal -offset indent
ppp ON awfulhak> set timeout 600
@@ -1839,7 +1801,7 @@ ppp ON awfulhak> set timeout 600
The timeout period is measured in seconds, the default value for which
is 180 seconds
(or 3 min).
-To disable the idle timer function, use the command
+To disable the idle timer function, use the following command:
.Bd -literal -offset indent
ppp ON awfulhak> set timeout 0
.Ed
@@ -1869,9 +1831,9 @@ when the peer agrees
The deflate protocol is preferred by
.Nm ppp .
Refer to the
-.Dq disable
+.Ic disable
and
-.Dq deny
+.Ic deny
commands if you wish to disable this functionality.
.Pp
It is possible to use a different compression algorithm in each direction
@@ -1885,7 +1847,7 @@ By default, when negotiating DEFLATE,
.Nm
will use a window size of 15.
Refer to the
-.Dq set deflate
+.Ic set deflate
command if you wish to change this behaviour.
.Pp
A special algorithm called DEFLATE24 is also available, and is disabled
@@ -1914,10 +1876,10 @@ both sides of the connection agree to accept the received request (and
send an ACK), IPCP is set to the open state and a network level connection
is established.
To control this IPCP behaviour, this implementation has the
-.Dq set ifaddr
+.Ic set ifaddr
command for defining the local and remote IP address:
.Bd -ragged -offset indent
-.No set ifaddr Oo Ar src_addr Ns
+.Ic set ifaddr Oo Ar src_addr Ns
.Op / Ns Ar \&nn
.Oo Ar dst_addr Ns Op / Ns Ar \&nn
.Oo Ar netmask
@@ -1927,23 +1889,22 @@ command for defining the local and remote IP address:
.Oc
.Ed
.Pp
-where
-.Sq src_addr
+.Ar src_addr
is the IP address that the local side is willing to use,
-.Sq dst_addr
-is the IP address which the remote side should use and
-.Sq netmask
+.Ar dst_addr
+is the IP address which the remote side should use, and
+.Ar netmask
is the netmask that should be used.
-.Sq Src_addr
+.Ar src_addr
defaults to the current
.Xr hostname 1 ,
-.Sq dst_addr
+.Ar dst_addr
defaults to 0.0.0.0, and
-.Sq netmask
+.Ar netmask
defaults to whatever mask is appropriate for
-.Sq src_addr .
+.Ar src_addr .
It is only possible to make
-.Sq netmask
+.Ar netmask
smaller than the default.
The usual value is 255.255.255.255, as
most kernels ignore the netmask of a POINTOPOINT interface.
@@ -1952,9 +1913,9 @@ Some incorrect
.Em PPP
implementations require that the peer negotiates a specific IP
address instead of
-.Sq src_addr .
+.Ar src_addr .
If this is the case,
-.Sq trigger_addr
+.Ar trigger_addr
may be used to specify this IP number.
This will not affect the
routing table unless the other side agrees with this proposed number.
@@ -1981,13 +1942,13 @@ This is all fine when each side has a pre-determined IP address, however
it is often the case that one side is acting as a server which controls
all IP addresses and the other side should go along with it.
In order to allow more flexible behaviour, the
-.Dq set ifaddr
+.Ic set ifaddr
command allows the user to specify IP addresses more loosely:
.Pp
.Dl set ifaddr 192.244.177.38/24 192.244.177.2/20
.Pp
A number followed by a slash
-.Pq Dq /
+.Pq Sq /
represents the number of bits significant in the IP address.
The above example means:
.Pp
@@ -2019,15 +1980,15 @@ The following steps should be taken when connecting to your ISP:
.Bl -enum
.It
Describe your providers phone number(s) in the dial script using the
-.Dq set phone
+.Ic set phone
command.
This command allows you to set multiple phone numbers for
dialing and redialing separated by either a pipe
-.Pq Dq \&|
+.Pq Sq \&|
or a colon
-.Pq Dq \&: :
+.Pq Sq \&: :
.Bd -ragged -offset indent
-.No set phone Ar telno Ns Xo
+.Ic set phone Ar telno Ns Xo
.Oo \&| Ns Ar backupnumber
.Oc Ns ... Ns Oo : Ns Ar nextnumber
.Oc Ns ...
@@ -2051,8 +2012,10 @@ fails.
On the dial after this, the 3456789 number is used.
The 4567890
number is only used if the dial or login script using the 3456789 fails.
-If the login script of the 2345678 number fails, the next number is still the
-3456789 number.
+Irrespective of whether the login script of the 2345678 number
+succeeds or fails,
+the next number is still the 3456789 number.
+.Pp
As many pipes and colons can be used as are necessary
(although a given site would usually prefer to use either the pipe or the
colon, but not both).
@@ -2060,11 +2023,11 @@ The next number redial timeout is used between all numbers.
When the end of the list is reached, the normal redial period is
used before starting at the beginning again.
The selected phone number is substituted for the \\\\T string in the
-.Dq set dial
+.Ic set dial
command (see below).
.It
Set up your redial requirements using
-.Dq set redial .
+.Ic set redial .
For example, if you have a bad telephone line or your provider is
usually engaged (not so common these days), you may want to specify
the following:
@@ -2076,12 +2039,12 @@ This says that up to 4 phone calls should be attempted with a pause of 10
seconds before dialing the first number again.
.It
Describe your login procedure using the
-.Dq set dial
+.Ic set dial
and
-.Dq set login
+.Ic set login
commands.
The
-.Dq set dial
+.Ic set dial
command is used to talk to your modem and establish a link with your
ISP, for example:
.Bd -literal -offset indent
@@ -2146,7 +2109,7 @@ Expect "HELLO".
.El
.Pp
The
-.Dq set authkey
+.Ic set authkey
command is logged specially.
When
.Ar command
@@ -2162,9 +2125,9 @@ If you're setting one up for the first time,
so that you can see if your script is behaving as you expect.
.It
Use
-.Dq set device
+.Ic set device
and
-.Dq set speed
+.Ic set speed
to specify your serial line and speed, for example:
.Bd -literal -offset indent
set device /dev/cua00
@@ -2187,7 +2150,7 @@ if you have a modem capable of bit rates of 28800 or more.
In general, the serial speed should be about four times the modem speed.
.It
Use the
-.Dq set ifaddr
+.Ic set ifaddr
command to {define} the IP address.
.Bl -bullet
.It
@@ -2207,39 +2170,37 @@ something in the class C network 1.2.3.0, you could specify 1.2.3.1/24.
If you find that your ISP accepts the first IP number that you suggest,
specify third and forth arguments of
.Dq 0.0.0.0 .
-This will force your ISP to assign a number.
-(The third argument will
+This will force your ISP to assign a number
+(the third argument will
be ignored as it is less restrictive than the default mask for your
.Sq src_addr ) .
.El
.Pp
An example for a connection where you don't know your IP number or your
-ISPs IP number would be:
+ISP's IP number would be:
.Bd -literal -offset indent
set ifaddr 10.0.0.1/0 10.0.0.2/0 0.0.0.0 0.0.0.0
.Ed
.Pp
.It
In most cases, your ISP will also be your default router.
-If this is the case, add the line
-.Bd -literal -offset indent
-add default HISADDR
-.Ed
-.Pp
-to
+If this is the case, add the following line to
.Pa /etc/ppp/ppp.conf
(or to
.Pa /etc/ppp/ppp.linkup
for setups that don't use
.Fl auto
-mode).
+mode):
+.Bd -literal -offset indent
+add default HISADDR
+.Ed
.Pp
This tells
.Nm
to add a default route to whatever the peer address is
(10.0.0.2 in this example).
This route is
-.Sq sticky ,
+.Dq sticky ,
meaning that should the value of
.Dv HISADDR
change, the route will be updated accordingly.
@@ -2260,7 +2221,8 @@ will provide whatever your ISP requires.
It should be noted that a login script is rarely (if ever) required
when PAP or CHAP are in use.
.It
-Ask your ISP to authenticate your nameserver address(es) with the line
+Ask your ISP to authenticate your nameserver address(es)
+with the following line:
.Bd -literal -offset indent
enable dns
.Ed
@@ -2290,13 +2252,18 @@ The pmdemand label should be appropriate for most ISPs.
is able to generate the following log info either via
.Xr syslog 3
or directly to the screen:
-.Pp
-.Bl -tag -width XXXXXXXXX -offset XXX -compact
+.Bl -tag -width XXXXXXXXX -offset indent
.It Li All
Enable all logging facilities.
This generates a lot of log.
-The most common use of 'all' is as a basis, where you remove some facilities
-after enabling 'all' ('debug' and 'timer' are usually best disabled.)
+The most common use of
+.Dq all
+is as a basis, where you remove some facilities after enabling
+.Dq all
+.Pf ( Dq debug
+and
+.Dq timer
+are usually best disabled).
.It Li Async
Dump async level packet in hex.
.It Li CBCP
@@ -2305,11 +2272,11 @@ Generate CBCP (CallBack Control Protocol) logs.
Generate a CCP packet trace.
.It Li Chat
Generate
-.Sq dial ,
-.Sq login ,
-.Sq logout
+.Dq dial ,
+.Dq login ,
+.Dq logout ,
and
-.Sq hangup
+.Dq hangup
chat script trace logs.
.It Li Command
Log commands executed either from the command line or any of the configuration
@@ -2343,15 +2310,17 @@ Dump all TCP/IP packets.
.It Li Timer
Log timer manipulation.
.It Li TUN
-Include the tun device on each log line.
+Include the
+.Xr tun 4
+device on each log line.
.It Li Warning
Output to the terminal device.
If there is currently no terminal,
-output is sent to the log file using syslogs
+output is sent to the log file using syslog's
.Dv LOG_WARNING .
.It Li Error
Output to both the terminal device
-and the log file using syslogs
+and the log file using syslog's
.Dv LOG_ERROR .
.It Li Alert
Output to the log file using
@@ -2359,7 +2328,7 @@ Output to the log file using
.El
.Pp
The
-.Dq set log
+.Ic set log
command allows you to set the logging output level.
Multiple levels can be specified on a single command line.
The default is equivalent to
@@ -2372,9 +2341,9 @@ should immediately follow
.Dq set log .
The default is
.Dq set log local
-(i.e., only the un-maskable warning, error and alert output).
+(i.e., only the un-maskable warning, error, and alert output).
.Pp
-If The first argument to
+If the first argument to
.Dq set log Op local
begins with a
.Sq +
@@ -2394,7 +2363,7 @@ Log: Phase TCP/IP Warning Error Alert
Local: Command Warning Error Alert
.Ed
.Pp
-Log messages of level Warning, Error and Alert are not controllable
+Log messages of level Warning, Error, and Alert are not controllable
using
.Dq set log Op local .
.Pp
@@ -2416,7 +2385,7 @@ to exit unless it is in
or
.Fl ddial
mode.
-.It HUP, TERM & QUIT
+.It HUP, TERM, & QUIT
These signals tell
.Nm
to exit.
@@ -2452,9 +2421,9 @@ at least one is specified, otherwise there is no way of ensuring that
all links are actually connected to the same peer program, and some
confusing lock-ups may result.
Locally, these identification variables are specified using the
-.Dq set enddisc
+.Ic set enddisc
and
-.Dq set authname
+.Ic set authname
commands.
The
.Sq authname
@@ -2463,42 +2432,42 @@ The
must be agreed in advance with the peer.
.Pp
Multi-link capabilities are enabled using the
-.Dq set mrru
+.Ic set mrru
command (set maximum reconstructed receive unit).
Once multi-link is enabled,
.Nm
will attempt to negotiate a multi-link connection with the peer.
.Pp
By default, only one
-.Sq link
+.Dq link
is available
(called
-.Sq deflink ) .
+.Dq deflink ) .
To create more links, the
-.Dq clone
+.Ic clone
command is used.
This command will clone existing links, where all
characteristics are the same except:
.Bl -enum
.It
The new link has its own name as specified on the
-.Dq clone
+.Ic clone
command line.
.It
The new link is an
-.Sq interactive
+.Dq interactive
link.
Its mode may subsequently be changed using the
-.Dq set mode
+.Ic set mode
command.
.It
The new link is in a
-.Sq closed
+.Dq closed
state.
.El
.Pp
A summary of all available links can be seen using the
-.Dq show links
+.Ic show links
command.
.Pp
Once a new link has been created, command usage varies.
@@ -2511,9 +2480,9 @@ is smart enough not to require the
.Dq link Ar name
prefix.
.Pp
-Some commands can still be used without specifying a link - resulting
+Some commands can still be used without specifying a link \- resulting
in an operation at the
-.Sq bundle
+.Dq bundle
level.
For example, once two or more links are available, the command
.Dq show ccp
@@ -2538,22 +2507,22 @@ mp:
set authkey ppppassword
set mrru 1500
- clone 1,2,3 # Create 3 new links - duplicates of the default
- link deflink remove # Delete the default link (called ``deflink'')
+ clone 1,2,3 # Create 3 new links - duplicates of the default
+ link deflink remove # Delete the default link (called ``deflink'')
.Ed
.Pp
Note how all cloning is done at the end of the configuration.
-Usually, the link will be configured first, then cloned.
+Usually the link will be configured first, then cloned.
If you wish all links
to be up all the time, you can add the following line to the end of your
-configuration.
+configuration:
.Bd -literal -offset indent
- link 1,2,3 set mode ddial
+link 1,2,3 set mode ddial
.Ed
.Pp
If you want the links to dial on demand, this command could be used:
.Bd -literal -offset indent
- link * set mode auto
+link * set mode auto
.Ed
.Pp
Links may be tied to specific names by removing the
@@ -2562,17 +2531,17 @@ line above, and specifying the following after the
.Dq clone
command:
.Bd -literal -offset indent
- link 1 set device /dev/cua00
- link 2 set device /dev/cua01
- link 3 set device /dev/cua02
+link 1 set device /dev/cua00
+link 2 set device /dev/cua01
+link 3 set device /dev/cua02
.Ed
.Pp
Use the
-.Dq help
+.Ic help
command to see which commands require context (using the
-.Dq link
-command), which have optional
-context and which should not have any context.
+.Ic link
+command), which have optional context,
+and which should not have any context.
.Pp
When
.Nm
@@ -2586,7 +2555,7 @@ the actual link file descriptor) between different
.Nm
invocations.
This facilitates
-.Nm Ns No 's
+.Nm ppp Ns 's
ability to be run from a
.Xr getty 8
or directly from
@@ -2613,12 +2582,18 @@ or
.Xr telnet 1
session.
.Bl -tag -width 2n
-.It accept|deny|enable|disable Ar option....
+.It Xo
+.Ic accept No \&|
+.Ic deny No \&|
+.Ic enable No \&|
+.Ic disable
+.Ar option....
+.Xc
These directives tell
.Nm
how to negotiate the initial connection with the peer.
Each
-.Dq option
+.Ar option
has a default of either accept or deny and enable or disable.
.Dq Accept
means that the option will be ACK'd if the peer asks for it.
@@ -2629,7 +2604,7 @@ means that the option will be requested by us.
.Dq Disable
means that the option will not be requested by us.
.Pp
-.Dq Option
+.Ar option
may be one of the following:
.Bl -tag -width 2n
.It acfcomp
@@ -2642,9 +2617,7 @@ If this option is
negotiated, these two bytes are simply not sent, thus minimising
traffic.
.Pp
-See
-.Pa rfc1662
-for details.
+See RFC 1662 for details.
.It chap Ns Op \&05
Default: Disabled and Accepted.
CHAP stands for Challenge Handshake Authentication Protocol.
@@ -2692,7 +2665,7 @@ Note: There is a problem negotiating
.Ar deflate
capabilities with
.Xr pppd 8
-- a
+\- a
.Em PPP
implementation available under many operating systems.
.Nm pppd
@@ -2702,23 +2675,18 @@ compression using type
.Em 24
as the CCP configuration type rather than type
.Em 26
-as specified in
-.Pa rfc1979 .
+as specified in RFC 1979.
Type
.Ar 24
is actually specified as
.Dq PPP Magna-link Variable Resource Compression
-in
-.Pa rfc1975 Ns !
+in RFC 1975!
.Nm
is capable of negotiating with
.Nm pppd ,
but only if
.Dq deflate24
-is
-.Ar enable Ns No d
-and
-.Ar accept Ns No ed .
+is enabled and accepted.
.It deflate24
Default: Disabled and Denied.
This is a variance of the
@@ -2729,14 +2697,12 @@ program.
Refer to the
.Ar deflate
section above for details.
-It is disabled by default as it violates
-.Pa rfc1975 .
+It is disabled by default as it violates RFC 1975.
.It dns
Default: Disabled and Denied.
This option allows DNS negotiation.
.Pp
-If
-.Dq enable Ns No d,
+If enabled,
.Nm
will request that the peer confirms the entries in
.Pa /etc/resolv.conf .
@@ -2744,22 +2710,21 @@ If the peer NAKs our request (suggesting new IP numbers),
.Pa /etc/resolv.conf
is updated and another request is sent to confirm the new entries.
.Pp
-If
-.Dq accept Ns No ed,
+If accepted,
.Nm
will answer any DNS queries requested by the peer rather than rejecting
them.
The answer is taken from
.Pa /etc/resolv.conf
unless the
-.Dq set dns
+.Ic set dns
command is used as an override.
.It enddisc
Default: Enabled and Accepted.
This option allows control over whether we
negotiate an endpoint discriminator.
We only send our discriminator if
-.Dq set enddisc
+.Ic set enddisc
is used and
.Ar enddisc
is enabled.
@@ -2774,7 +2739,7 @@ implementing two different mechanisms (LANMan & NT) under the guise of
a single CHAP type (0x80).
.Dq LANMan
uses a simple DES encryption mechanism and is the least secure of the
-CHAP alternatives (although is still more secure than PAP).
+CHAP alternatives (although still more secure than PAP).
.Pp
Refer to the
.Dq MSChap
@@ -2784,7 +2749,7 @@ Default: Disabled and Accepted.
This option decides if Link Quality Requests will be sent or accepted.
LQR is a protocol that allows
.Nm
-to determine that the link is down without relying on the modems
+to determine that the link is down without relying on the modem's
carrier detect.
When LQR is enabled,
.Nm
@@ -2817,16 +2782,16 @@ connection.
Default: Enabled and Accepted.
This is Microsoft Point to Point Encryption scheme.
MPPE key size can be
-40-, 56- and 128-bits.
-Refer to
-.Dq set mppe
+40-, 56-, and 128-bits.
+Refer to the
+.Ic set mppe
command.
.It MSChapV2|chap81
Default: Disabled and Accepted.
It is very similar to standard CHAP (type 0x05)
except that it issues challenges of a fixed 16 bytes in length and uses a
-combination of MD4, SHA-1 and DES to encrypt the challenge rather than using the
-standard MD5 mechanism.
+combination of MD4, SHA-1, and DES
+to encrypt the challenge rather than using the standard MD5 mechanism.
.It MSChap|chap80nt
Default: Disabled and Accepted.
The use of this authentication protocol
@@ -2837,16 +2802,15 @@ It is very similar to standard CHAP (type 0x05)
except that it issues challenges of a fixed 8 bytes in length and uses a
combination of MD4 and DES to encrypt the challenge rather than using the
standard MD5 mechanism.
-CHAP type 0x80 for LANMan is also supported - see
+CHAP type 0x80 for LANMan is also supported \- see
.Dq enable LANMan
for details.
.Pp
Because both
.Dq LANMan
and
-.Dq NT
-use CHAP type 0x80, when acting as authenticator with both
-.Dq enable Ns No d ,
+.Sq NT
+use CHAP type 0x80, when acting as authenticator with both enabled,
.Nm
will rechallenge the peer up to three times if it responds using the wrong
one of the two protocols.
@@ -2854,8 +2818,7 @@ This gives the peer a chance to attempt using both protocols.
.Pp
Conversely, when
.Nm
-acts as the authenticatee with both protocols
-.Dq accept Ns No ed ,
+acts as the authenticatee with both protocols accepted,
the protocols are used alternately in response to challenges.
.Pp
Note: If only LANMan is enabled,
@@ -2879,9 +2842,9 @@ in
and have an entry in
.Pa /etc/ppp/ppp.secret
for the peer (although see the
-.Dq passwdauth
+.Ic passwdauth
and
-.Dq set radius
+.Ic set radius
options below).
.Pp
When using PAP as the client, you need only specify
@@ -2905,7 +2868,7 @@ Default: Enabled and Accepted.
This option determines if
.Nm
will request and accept requests for short
-(12 bit)
+(12-bit)
sequence numbers when negotiating multi-link mode.
This is only applicable if our MRRU is set (thus enabling multi-link).
.It vjcomp
@@ -2945,7 +2908,7 @@ invocation with the udp link.
Default: Enabled.
When
.Nm
-exchanges low-level LCP, CCP and IPCP configuration traffic, the
+exchanges low-level LCP, CCP, and IPCP configuration traffic, the
.Em Identifier
field of any replies is expected to be the same as that of the request.
By default,
@@ -2969,10 +2932,7 @@ The option can only be enabled if network address translation is enabled
.Pp
With this option enabled,
.Nm
-will pass traffic for old interface addresses through the NAT
-ifdef({LOCALNAT},{engine,},{engine
-(see
-.Xr libalias 3 ) ,})
+will pass traffic for old interface addresses through the NAT engine,
resulting in the ability (in
.Fl auto
mode) to properly connect the process that caused the PPP link to
@@ -2981,7 +2941,7 @@ come up in the first place.
Disabling NAT with
.Dq nat enable no
will also disable
-.Sq iface-alias .
+.Dq iface-alias .
.It ipcp
Default: Enabled.
This option allows
@@ -3016,7 +2976,7 @@ and wait for the controlling
.Nm
to finish with the link and deliver a signal back to the idle process.
This prevents the confusion that results from
-.Nm Ns No 's
+.Nm ppp Ns 's
parent considering the link resource available again.
.Pp
For tty devices that have entries in
@@ -3062,7 +3022,7 @@ is always checked first.
If you wish to use passwords from
.Xr passwd 5 ,
but also to specify an IP number or label for a given client, use
-.Dq \&*
+.Sq \&*
as the client password in
.Pa /etc/ppp/ppp.secret .
.It proxy
@@ -3079,7 +3039,7 @@ and the
address of the local network in which
.Dv HISADDR
appears.
-This allows other machines connecteed to the LAN to talk to
+This allows other machines connected to the LAN to talk to
the peer as if the peer itself was connected to the LAN.
The proxy entry cannot be made unless
.Dv HISADDR
@@ -3093,30 +3053,30 @@ smaller subnets routed via the tun interface.
.Pp
Proxy arp entries are only made for sticky routes that are added
using the
-.Dq add
+.Ic add
command.
No proxy arp entries are made for the interface address itself
(as created by the
-.Dq set ifaddr
+.Ic set ifaddr
command).
.It sroutes
Default: Enabled.
When the
-.Dq add
+.Ic add
command is used with the
.Dv HISADDR ,
.Dv MYADDR ,
-.Dv HISADDR6
+.Dv HISADDR6 ,
or
.Dv MYADDR6
values, entries are stored in the
-.Sq sticky route
+.Dq sticky route
list.
Each time these variables change, this list is re-applied to the routing table.
.Pp
Disabling this option will prevent the re-application of sticky routes,
although the
-.Sq stick route
+.Dq sticky route
list will still be maintained.
.It Op tcp Ns Xo
.No mssfixup
@@ -3132,11 +3092,11 @@ This option tells
.Nm
to gather throughput statistics.
Input and output is sampled over
-a rolling 5 second window, and current, best and total figures are retained.
+a rolling 5 second window, and current, best, and total figures are retained.
This data is output when the relevant
.Em PPP
layer shuts down, and is also available using the
-.Dq show
+.Ic show
command.
Throughput statistics are available at the
.Dq IPCP
@@ -3156,8 +3116,7 @@ not to make any utmp or wtmp entries.
This is usually only necessary if
you require the user to both login and authenticate themselves.
.El
-.Pp
-.It add Ns Xo
+.It Ic add Ns Xo
.Op !\&
.Ar dest Ns Op / Ns Ar nn
.Op Ar mask
@@ -3166,7 +3125,7 @@ you require the user to both login and authenticate themselves.
.Ar Dest
is the destination IP address.
The netmask is specified either as a number of bits with
-.Ar /nn
+.No / Ns Ar nn
or as an IP number using
.Ar mask .
.Ar 0 0
@@ -3174,7 +3133,7 @@ or simply
.Ar 0
with no mask refers to the default route.
It is also possible to use the literal name
-.Sq default
+.Dq default
instead of
.Ar 0 .
.Ar Gateway
@@ -3186,33 +3145,33 @@ Refer to the
command for further details.
.Pp
It is possible to use the symbolic names
-.Sq MYADDR ,
-.Sq HISADDR ,
-.Sq MYADDR6
+.Dq MYADDR ,
+.Dq HISADDR ,
+.Dq MYADDR6 ,
or
-.Sq HISADDR6
+.Dq HISADDR6
as the destination, and
-.Sq HISADDR
+.Dq HISADDR
or
-.Sq HISADDR6
+.Dq HISADDR6
as the
.Ar gateway .
-.Sq MYADDR
+.Dq MYADDR
is replaced with the interface IP address,
-.Sq HISADDR
+.Dq HISADDR
is replaced with the interface IP destination (peer) address,
-.Sq MYADDR6
+.Dq MYADDR6
is replaced with the interface IPv6 address, and
-.Sq HISADDR6
-is replaced with the interface IPv6 destination address,
+.Dq HISADDR6
+is replaced with the interface IPv6 destination address.
.Pp
If the
-.Ar add!\&
+.Ic add Ns !\&
command is used
(note the trailing
-.Dq !\& ) ,
+.Sq !\& ) ,
then if the route already exists, it will be updated as with the
-.Sq route change
+.Ic route change
command (see
.Xr route 8
for further details).
@@ -3226,14 +3185,14 @@ Routes that contain the
or
.Dq DNS1
constants are considered
-.Sq sticky .
+.Dq sticky .
They are stored in a list (use
-.Dq show ncp
+.Ic show ncp
to see the list), and each time the value of one of these variables
changes, the appropriate routing table entries are updated.
This facility may be disabled using
-.Dq disable sroutes .
-.It allow Ar command Op Ar args
+.Ic disable sroutes .
+.It Ic allow Ar command Op Ar args
This command controls access to
.Nm
and its configuration files.
@@ -3244,43 +3203,51 @@ is being run in.
For example, you may wish to configure
.Nm
so that only user
-.Sq fred
+.Dq fred
may access label
-.Sq fredlabel
+.Dq fredlabel
in
.Fl background
mode.
.Pp
User ID 0 is immune to these commands.
.Bl -tag -width 2n
-.It allow user Ns Xo
-.Op s
-.Ar logname Ns No ...
+.It Ic allow user Ns Xo
+.Op Ic s
+.Ar logname ...
.Xc
By default, only user ID 0 is allowed access to
.Nm ppp .
If this command is used, all of the listed users are allowed access to
the section in which the
-.Dq allow users
+.Ic allow users
command is found.
The
-.Sq default
+.Dq default
section is always checked first (even though it is only ever automatically
loaded at startup).
-.Dq allow users
+.Ic allow users
commands are cumulative in a given section, but users allowed in any given
section override users allowed in the default section, so it's possible to
allow users access to everything except a given label by specifying default
users in the
-.Sq default
+.Dq default
section, and then specifying a new user list for that label.
.Pp
If user
.Sq *
is specified, access is allowed to all users.
-.It allow mode Ns Xo
-.Op s
-.Ar mode Ns No ...
+If
+.Ar logname
+is omitted, the user access list is emptied
+(i.e. only root will have access).
+There is no difference between the forms
+.Ic allow user
+and
+.Ic allow users .
+.It Ic allow mode Ns Xo
+.Op Ic s
+.Ar mode ...
.Xc
By default, access using any
.Nm
@@ -3289,215 +3256,33 @@ If this command is used, it restricts the access
.Ar modes
allowed to load the label under which this command is specified.
Again, as with the
-.Dq allow users
+.Ic allow users
command, each
-.Dq allow modes
+.Ic allow modes
command overrides any previous settings, and the
-.Sq default
+.Dq default
section is always checked first.
.Pp
Possible modes are:
-.Sq interactive ,
-.Sq auto ,
-.Sq direct ,
-.Sq dedicated ,
-.Sq ddial ,
-.Sq background
+.Dq interactive ,
+.Dq auto ,
+.Dq direct ,
+.Dq dedicated ,
+.Dq ddial ,
+.Dq background ,
and
.Sq * .
+There is no difference between the forms
+.Ic allow mode
+and
+.Ic allow modes .
.Pp
When running in multi-link mode, a section can be loaded if it allows
.Em any
of the currently existing line modes.
.El
-.Pp
-.It nat Ar command Op Ar args
-This command allows the control of the network address translation (also
-known as masquerading or IP aliasing) facilities that are built into
-.Nm ppp .
-NAT is done on the external interface only, and is unlikely to make sense
-if used with the
-.Fl direct
-flag.
-.Pp
-If nat is enabled on your system (it may be omitted at compile time),
-the following commands are possible:
-.Bl -tag -width 2n
-.It nat enable yes|no
-This command either switches network address translation on or turns it off.
-The
-.Fl nat
-command line flag is synonymous with
-.Dq nat enable yes .
-.It nat addr Op Ar addr_local addr_alias
-This command allows data for
-.Ar addr_alias
-to be redirected to
-.Ar addr_local .
-It is useful if you own a small number of real IP numbers that
-you wish to map to specific machines behind your gateway.
-.It nat deny_incoming yes|no
-If set to yes, this command will refuse all incoming packets where an
-aliasing link doesn't already exist.
-ifdef({LOCALNAT},{},{Refer to the
-.Sx CONCEPTUAL BACKGROUND
-section of
-.Xr libalias 3
-for a description of what an
-.Dq aliasing link
-is.
-})dnl
-.Pp
-It should be noted under what circumstances an aliasing link is
-ifdef({LOCALNAT},{created.},{created by
-.Xr libalias 3 .})
-It may be necessary to further protect your network from outside
-connections using the
-.Dq set filter
-or
-.Dq nat target
-commands.
-.It nat help|?
-This command gives a summary of available nat commands.
-.It nat log yes|no
-This option causes various NAT statistics and information to
-be logged to the file
-.Pa /var/log/alias.log .
-.It nat port Ar proto Ar targetIP Ns Xo
-.No : Ns Ar targetPort Ns
-.Oo
-.No - Ns Ar targetPort
-.Oc Ar aliasPort Ns
-.Oo
-.No - Ns Ar aliasPort
-.Oc Oo Ar remoteIP : Ns
-.Ar remotePort Ns
-.Oo
-.No - Ns Ar remotePort
-.Oc Ns
-.Oc
-.Xc
-This command causes incoming
-.Ar proto
-connections to
-.Ar aliasPort
-to be redirected to
-.Ar targetPort
-on
-.Ar targetIP .
-.Ar proto
-is either
-.Dq tcp
-or
-.Dq udp .
-.Pp
-A range of port numbers may be specified as shown above.
-The ranges must be of the same size.
-.Pp
-If
-.Ar remoteIP
-is specified, only data coming from that IP number is redirected.
-.Ar remotePort
-must either be
-.Dq 0
-(indicating any source port)
-or a range of ports the same size as the other ranges.
-.Pp
-This option is useful if you wish to run things like Internet phone on
-machines behind your gateway, but is limited in that connections to only
-one interior machine per source machine and target port are possible.
-.It nat proto Ar proto localIP Oo
-.Ar publicIP Op Ar remoteIP
-.Oc
-This command tells
-.Nm
-to redirect packets of protocol type
-.Ar proto
-(see
-.Xr protocols 5 )
-to the internal address
-.Ar localIP .
-.Pp
-If
-.Ar publicIP
-is specified, only packets destined for that address are matched,
-otherwise the default alias address is used.
-.Pp
-If
-.Ar remoteIP
-is specified, only packets matching that source address are matched,
-.Pp
-This command is useful for redirecting tunnel endpoints to an internal machine,
-for example:
-.Pp
-.Dl nat proto ipencap 10.0.0.1
-.It "nat proxy cmd" Ar arg Ns No ...
-This command tells
-.Nm
-to proxy certain connections, redirecting them to a given server.
-ifdef({LOCALNAT},{},{Refer to the description of
-.Fn PacketAliasProxyRule
-in
-.Xr libalias 3
-for details of the available commands.
-})dnl
-.It nat punch_fw Op Ar base count
-This command tells
-.Nm
-to punch holes in the firewall for FTP or IRC DCC connections.
-This is done dynamically by installing termporary firewall rules which
-allow a particular connection (and only that connection) to go through
-the firewall.
-The rules are removed once the corresponding connection terminates.
-.Pp
-A maximum of
-.Ar count
-rules starting from rule number
-.Ar base
-will be used for punching firewall holes.
-The range will be cleared when the
-.Dq nat punch_fw
-command is run.
-.Pp
-If no arguments are given, firewall punching is disabled.
-.It nat same_ports yes|no
-When enabled, this command will tell the network address translation engine to
-attempt to avoid changing the port number on outgoing packets.
-This is useful
-if you want to support protocols such as RPC and LPD which require
-connections to come from a well known port.
-.It nat target Op Ar address
-Set the given target address or clear it if no address is given.
-The target address is used
-ifdef({LOCALNAT},{},{by libalias })dnl
-to specify how to NAT incoming packets by default.
-If a target address is not set or if
-.Dq default
-is given, packets are not altered and are allowed to route to the internal
-network.
-.Pp
-The target address may be set to
-.Dq MYADDR ,
-in which case
-ifdef({LOCALNAT},{all packets will be redirected},
-{libalias will redirect all packets})
-to the interface address.
-.It nat use_sockets yes|no
-When enabled, this option tells the network address translation engine to
-create a socket so that it can guarantee a correct incoming ftp data or
-IRC connection.
-.It nat unregistered_only yes|no
-Only alter outgoing packets with an unregistered source address.
-According to RFC 1918, unregistered source addresses
-are 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16.
-.El
-.Pp
-These commands are also discussed in the file
-.Pa README.nat
-which comes with the source distribution.
-.Pp
.It Op !\& Ns Xo
-.No bg Ar command
+.Ic bg Ar command
.Xc
The given
.Ar command
@@ -3508,7 +3293,7 @@ This is replaced with the local
.Ar authname
value.
See the
-.Dq set authname
+.Ic set authname
command below.
.It Li COMPILATIONDATE
This is replaced with the date on which
@@ -3520,7 +3305,7 @@ If nameservers are negotiated by IPCP, the values of these macros will change.
.It Li ENDDISC
This is replaced with the local endpoint discriminator value.
See the
-.Dq set enddisc
+.Ic set enddisc
command below.
.It Li HISADDR
This is replaced with the peer's IP number.
@@ -3557,9 +3342,9 @@ This is replaced with the last label name used.
A label may be specified on the
.Nm
command line, via the
-.Dq load
+.Ic load
or
-.Dq dial
+.Ic dial
commands and in the
.Pa ppp.secret
file.
@@ -3590,7 +3375,9 @@ This is replaced with the bundle uptime in HH:MM:SS format.
.It Li USER
This is replaced with the username that has been authenticated with PAP or
CHAP.
-Normally, this variable is assigned only in -direct mode.
+Normally, this variable is assigned only in
+.Fl direct
+mode.
This value is available irrespective of whether utmp logging is enabled.
.It Li VERSION
This is replaced with the current version number of
@@ -3598,31 +3385,39 @@ This is replaced with the current version number of
.El
.Pp
These substitutions are also done by the
-.Dq set proctitle ,
-.Dq ident
+.Ic set proctitle ,
+.Ic ident ,
and
-.Dq log
+.Ic log
commands.
.Pp
If you wish to pause
.Nm
while the command executes, use the
-.Dq shell
+.Ic shell
command instead.
-.It clear physical|ipcp|ipv6 Op current|overall|peak...
+.It Xo
+.Ic clear
+.Ic physical No \&|
+.Ic ipcp No \&|
+.Ic ipv6
+.Oo Ic current No \&|
+.Ic overall No \&|
+.Ic peak No ... Oc
+.Xc
Clear the specified throughput values at either the
.Dq physical ,
-.Dq ipcp
+.Dq ipcp ,
or
.Dq ipv6cp
level.
If
.Dq physical
is specified, context must be given (see the
-.Dq link
+.Ic link
command below).
If no second argument is given, all values are cleared.
-.It clone Ar name Ns Xo
+.It Ic clone Ar name Ns Xo
.Op \&, Ns Ar name Ns
.No ...
.Xc
@@ -3634,12 +3429,17 @@ This command must be used from the
command below unless you've only got a single link (in which case that
link becomes the default).
Links may be removed using the
-.Dq remove
-command below.
+.Ic remove
+command
+.Pq see below .
.Pp
The default link name is
.Dq deflink .
-.It close Op lcp|ccp Ns Op !\&
+.It Xo
+.Ic close
+.Oo Ic lcp Ns Oo !\& Oc |\&
+.Ic ccp Ns Op !\& Oc
+.Xc
If no arguments are given, the relevant protocol layers will be brought
down and the link will be closed.
If
@@ -3657,7 +3457,7 @@ If
.Dq ccp
is specified, only the relevant compression layer is closed.
If the
-.Dq !\&
+.Sq !\&
is used, the compression layer will remain in the closed state, otherwise
it will re-enter the STOPPED state, waiting for the peer to initiate
further CCP negotiation.
@@ -3666,9 +3466,9 @@ In any event, this command does not disconnect the user from
or exit
.Nm ppp .
See the
-.Dq quit
+.Ic quit
command below.
-.It delete Ns Xo
+.It Ic delete Ns Xo
.Op !\&
.Ar dest
.Xc
@@ -3678,33 +3478,35 @@ IP address.
If
.Ar dest
is specified as
-.Sq ALL ,
+.Dq ALL ,
all non-direct entries in the routing table for the current interface,
and all
-.Sq sticky route
+.Dq sticky route
entries are deleted.
If
.Ar dest
is specified as
-.Sq default ,
+.Dq default ,
the default route is deleted.
.Pp
If the
-.Ar delete!\&
+.Ic delete Ns !\&
command is used
(note the trailing
-.Dq !\& ) ,
+.Sq !\& ) ,
.Nm
will not complain if the route does not already exist.
-.It dial|call Op Ar label Ns Xo
-.No ...
+.It Xo
+.Ic dial No \&|
+.Ic call
+.Op Ar label ...
.Xc
This command is the equivalent of
.Dq load label
followed by
.Dq open ,
and is provided for backwards compatibility.
-.It down Op Ar lcp|ccp
+.It Ic down Op Ar lcp | ccp
Bring the relevant layer down ungracefully, as if the underlying layer
had become unavailable.
It's not considered polite to use this command on
@@ -3713,20 +3515,24 @@ If no arguments are
supplied, the entire link is closed (or if no context is given, all links
are terminated).
If
-.Sq lcp
+.Dq lcp
is specified, the
.Em LCP
layer is terminated but the device is not brought offline and the link
is not closed.
If
-.Sq ccp
+.Dq ccp
is specified, only the relevant compression layer(s) are terminated.
-.It help|? Op Ar command
+.It Xo
+.Ic help No \&|
+.Ic ?\&
+.Op Ar command
+.Xc
Show a list of available commands.
If
.Ar command
is specified, show the usage string for that command.
-.It ident Op Ar text Ns No ...
+.It Ic ident Op Ar text ...
Identify the link to the peer using
.Ar text .
If
@@ -3740,18 +3546,19 @@ Refer to the
command for details of when
.Nm
identifies itself to the peer.
-.It iface Ar command Op args
+.It Ic iface Ar command Op Ar args
This command is used to control the interface used by
-.Nm ppp .
+.Nm .
.Ar Command
may be one of the following:
-.Bl -tag -width 2n
-.It iface add Ns Xo
+.Pp
+.Bl -tag -width 2n -compact
+.It Ic iface add Ns Xo
.Op !\&
.Ar addr Ns Op / Ns Ar bits
.Op Ar peer
.Xc
-.It iface add Ns Xo
+.It Ic iface add Ns Xo
.Op !\&
.Ar addr
.Ar mask
@@ -3762,29 +3569,30 @@ Add the given
combination to the interface.
Instead of specifying
.Ar mask ,
-.Ar /bits
+.No / Ns Ar bits
can be used
(with no space between it and
.Ar addr ) .
If the given address already exists, the command fails unless the
-.Dq !\&
-is used - in which case the previous interface address entry is overwritten
+.Sq !\&
+is used \- in which case the previous interface address entry is overwritten
with the new one, allowing a change of netmask or peer address.
.Pp
If only
.Ar addr
is specified,
.Ar bits
-defaults to
-.Dq 32
-and
+defaults to 32 and
.Ar peer
-defaults to
-.Dq 255.255.255.255 .
+defaults to 255.255.255.255.
This address (the broadcast address) is the only duplicate peer address that
.Nm
allows.
-.It iface clear Op INET | INET6
+.Pp
+.It Xo
+.Ic iface clear
+.Op Ic INET No \&| Ic INET6
+.Xc
If this command is used while
.Nm
is in the OPENED state or while in
@@ -3800,23 +3608,26 @@ mode, all interface addresses are deleted.
If the INET or INET6 arguments are used, only addresses for that address
family are cleared.
.Pp
-.It iface delete Ns Xo
-.Op !\& Ns
-.No |rm Ns Op !\&
+.It Xo
+.Ic iface
+.Ic delete Ns Oo !\& Oc \&|
+.Ic rm Ns Op !\&
.Ar addr
.Xc
This command deletes the given
.Ar addr
from the interface.
If the
-.Dq !\&
+.Sq !\&
is used, no error is given if the address isn't currently assigned to
the interface (and no deletion takes place).
-.It iface show
+.Pp
+.It Ic iface show
Shows the current state and current addresses for the interface.
It is much the same as running
.Dq ifconfig INTERFACE .
-.It iface help Op Ar sub-command
+.Pp
+.It Ic iface help Op Ar sub-command
This command, when invoked without
.Ar sub-command ,
will show a list of possible
@@ -3826,8 +3637,8 @@ When invoked with
.Ar sub-command ,
only the synopsis for the given sub-command is shown.
.El
-.It Op data Ns Xo
-.No link
+.It Op Ic data Ns Xo
+.Ic link
.Ar name Ns Op , Ns Ar name Ns
.No ... Ar command Op Ar args
.Xc
@@ -3835,7 +3646,7 @@ This command may prefix any other command if the user wishes to
specify which link the command should affect.
This is only applicable after multiple links have been created in Multi-link
mode using the
-.Dq clone
+.Ic clone
command.
.Pp
.Ar Name
@@ -3848,14 +3659,14 @@ is executed on each link.
If
.Ar name
is
-.Dq * ,
+.Sq * ,
.Ar command
is executed on all links.
-.It load Op Ar label Ns Xo
+.It Ic load Op Ar label Ns Xo
.No ...
.Xc
Load the given
-.Ar label Ns No (s)
+.Ar label Ns (s)
from the
.Pa ppp.conf
file.
@@ -3868,27 +3679,194 @@ label is used.
Unless the
.Ar label
section uses the
-.Dq set mode ,
-.Dq open
+.Ic set mode ,
+.Ic open ,
or
-.Dq dial
+.Ic dial
commands,
.Nm
will not attempt to make an immediate connection.
-.It log Ar word Ns No ...
+.It Ic log Ar word Ns ...
Send the given word(s) to the log file with the prefix
.Dq LOG: .
Word substitutions are done as explained under the
-.Dq !bg
+.No !\& Ns Ic bg
command above.
-.It open Op lcp|ccp|ipcp
+.It Ic nat Ar command Op Ar args
+This command allows the control of the network address translation (also
+known as masquerading or IP aliasing) facilities that are built into
+.Nm .
+NAT is done on the external interface only, and is unlikely to make sense
+if used with the
+.Fl direct
+flag.
+.Pp
+If nat is enabled on your system (it may be omitted at compile time),
+the following commands are possible:
+.Bl -tag -width 2n
+.It Ic nat enable Ar yes | no
+This command either switches network address translation on or turns it off.
+The
+.Fl nat
+command line flag is synonymous with
+.Dq nat enable yes .
+.It Ic nat addr Op Ar addr_local addr_alias
+This command allows data for
+.Ar addr_alias
+to be redirected to
+.Ar addr_local .
+It is useful if you own a small number of real IP numbers that
+you wish to map to specific machines behind your gateway.
+.It Ic nat deny_incoming Ar yes | no
+If set to yes, this command will refuse all incoming packets where an
+aliasing link doesn't already exist.
+.Pp
+It should be noted under what circumstances an aliasing link is created.
+It may be necessary to further protect your network from outside
+connections using the
+.Ic set filter
+or
+.Ic nat target
+commands.
+.It Ic nat help No \&| Ic ?\&
+This command gives a summary of available nat commands.
+.It Ic nat log Ar yes | no
+This option causes various NAT statistics and information to
+be logged to the file
+.Pa /var/log/alias.log .
+.It Ic nat port Ar proto Ar targetIP Ns Xo
+.No : Ns Ar targetPort Ns
+.Oo
+.No - Ns Ar targetPort
+.Oc Ar aliasPort Ns
+.Oo
+.No - Ns Ar aliasPort
+.Oc Oo Ar remoteIP : Ns
+.Ar remotePort Ns
+.Oo
+.No - Ns Ar remotePort
+.Oc Ns
+.Oc
+.Xc
+This command causes incoming
+.Ar proto
+connections to
+.Ar aliasPort
+to be redirected to
+.Ar targetPort
+on
+.Ar targetIP .
+.Ar proto
+is either
+.Dq tcp
+or
+.Dq udp .
+.Pp
+A range of port numbers may be specified as shown above.
+The ranges must be of the same size.
+.Pp
+If
+.Ar remoteIP
+is specified, only data coming from that IP number is redirected.
+.Ar remotePort
+must either be 0
+(indicating any source port)
+or a range of ports the same size as the other ranges.
+.Pp
+This option is useful if you wish to run things like an Internet phone on
+machines behind your gateway, but it is limited in that connections to only
+one interior machine per source machine and target port are possible.
+.It Ic nat proto Ar proto localIP Oo
+.Ar publicIP Op Ar remoteIP
+.Oc
+This command tells
+.Nm
+to redirect packets of protocol type
+.Ar proto
+(see
+.Xr protocols 5 )
+to the internal address
+.Ar localIP .
+.Pp
+If
+.Ar publicIP
+is specified, only packets destined for that address are matched,
+otherwise the default alias address is used.
+.Pp
+If
+.Ar remoteIP
+is specified, only packets matching that source address are matched.
+.Pp
+This command is useful for redirecting tunnel endpoints to an internal machine,
+for example:
+.Pp
+.Dl nat proto ipencap 10.0.0.1
+.It Ic nat proxy cmd Ar arg ...
+This command tells
+.Nm
+to proxy certain connections, redirecting them to a given server.
+.It Ic nat punch_fw Op Ar base count
+This command tells
+.Nm
+to punch holes in the firewall for FTP or IRC DCC connections.
+This is done dynamically by installing temporary firewall rules which
+allow a particular connection (and only that connection) to go through
+the firewall.
+The rules are removed once the corresponding connection terminates.
+.Pp
+A maximum of
+.Ar count
+rules starting from rule number
+.Ar base
+will be used for punching firewall holes.
+The range will be cleared when the
+.Ic nat punch_fw
+command is run.
+.Pp
+If no arguments are given, firewall punching is disabled.
+.It Ic nat same_ports Ar yes | no
+When enabled, this command tells the network address translation engine to
+attempt to avoid changing the port number on outgoing packets.
+This is useful
+if you want to support protocols such as RPC and LPD which require
+connections to come from a well known port.
+.It Ic nat target Op Ar address
+Set the given target address or clear it if no address is given.
+The target address is used to specify how to NAT incoming packets by default.
+If a target address is not set or if
+.Dq default
+is given, packets are not altered and are allowed to route to the internal
+network.
+.Pp
+The target address may be set to
+.Dq MYADDR ,
+in which case all packets will be redirected to the interface address.
+.It Ic nat use_sockets Ar yes | no
+When enabled, this option tells the network address translation engine to
+create a socket so that it can guarantee a correct incoming FTP data or
+IRC connection.
+.It Ic nat unregistered_only Ar yes | no
+Only alter outgoing packets with an unregistered source address.
+According to RFC 1918, unregistered source addresses
+are 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16.
+.El
+.Pp
+These commands are also discussed in the file
+.Pa README.nat
+which comes with the source distribution.
+.It Xo
+.Ic open
+.Oo Ic lcp No \&|
+.Ic ccp No \&|
+.Ic ipcp Oc
+.Xc
This is the opposite of the
-.Dq close
+.Ic close
command.
All closed links are immediately brought up apart from second and subsequent
.Ar demand-dial
-links - these will come up based on the
-.Dq set autoload
+links \- these will come up based on the
+.Ic set autoload
command that has been used.
.Pp
If the
@@ -3917,45 +3895,50 @@ like this as it's possible that the peer will not behave correctly.
It
.Em is
however useful as a way of forcing the CCP or VJ dictionaries to be reset.
-.It passwd Ar pass
+.It Ic passwd Ar pass
Specify the password required for access to the full
.Nm
command set.
This password is required when connecting to the diagnostic port (see the
-.Dq set server
+.Ic set server
command).
.Ar Pass
is specified on the
-.Dq set server
+.Ic set server
command line.
The value of
.Ar pass
is not logged when
.Ar command
logging is active, instead, the literal string
-.Sq ********
+.Dq ********
is logged.
-.It quit|bye Op all
+.It Xo
+.Ic quit No \&|
+.Ic bye
+.Op Ic all
+.Xc
If
-.Dq quit
+.Ic quit
is executed from the controlling connection or from a command file,
-ppp will exit after closing all connections.
+.Nm
+will exit after closing all connections.
Otherwise, if the user
is connected to a diagnostic socket, the connection is simply dropped.
.Pp
If the
-.Ar all
-argument is given,
+.Ic all
+keyword is given,
.Nm
will exit despite the source of the command after closing all existing
connections.
-.It remove|rm
+.It Ic remove No \&| Ic rm
This command removes the given link.
It is only really useful in multi-link mode.
A link must be in the
.Dv CLOSED
state before it is removed.
-.It rename|mv Ar name
+.It Ic rename No \&| Ic mv Ar name
This command renames the given link to
.Ar name .
It will fail if
@@ -3963,16 +3946,16 @@ It will fail if
is already used by another link.
.Pp
The default link name is
-.Sq deflink .
+.Dq deflink .
Renaming it to
-.Sq modem ,
-.Sq cua00
+.Dq modem ,
+.Dq cua00 ,
or
-.Sq USR
+.Dq USR
may make the log file more readable.
-.It resolv Ar command
+.It Ic resolv Ar command
This command controls
-.Nm Ns No 's
+.Nm ppp Ns 's
manipulation of the
.Xr resolv.conf 5
file.
@@ -3983,7 +3966,7 @@ image for future use.
.Ar command
is one of the following:
.Bl -tag -width readonly
-.It Em readonly
+.It Ic readonly
Treat
.Pa /etc/resolv.conf
as read only.
@@ -3998,36 +3981,36 @@ and
.Dv DNS1
macros.
This is the opposite of the
-.Dq resolv writable
+.Ic resolv writable
command.
-.It Em reload
+.It Ic reload
Reload
.Pa /etc/resolv.conf
into memory.
-This may be necessary if for example a DHCP client overwrote
+This may be necessary if, for example, a DHCP client overwrote
.Pa /etc/resolv.conf .
-.It Em restore
+.It Ic restore
Replace
.Pa /etc/resolv.conf
with the version originally read at startup or with the last
-.Dq resolv reload
+.Ic resolv reload
command.
This is sometimes a useful command to put in the
.Pa /etc/ppp/ppp.linkdown
file.
-.It Em rewrite
+.It Ic rewrite
Rewrite the
.Pa /etc/resolv.conf
file.
This command will work even if the
-.Dq resolv readonly
+.Ic resolv readonly
command has been used.
It may be useful as a command in the
.Pa /etc/ppp/ppp.linkup
file if you wish to defer updating
.Pa /etc/resolv.conf
until after other commands have finished.
-.It Em writable
+.It Ic writable
Allow
.Nm
to update
@@ -4038,12 +4021,12 @@ is enabled and
.Nm
successfully negotiates a DNS.
This is the opposite of the
-.Dq resolv readonly
+.Ic resolv readonly
command.
.El
-.It save
-This option is not (yet) implemented.
-.It sendident
+.\" .It save
+.\" This option is not (yet) implemented.
+.It Ic sendident
This command tells
.Nm
to identify itself to the peer.
@@ -4057,18 +4040,18 @@ will fail.
When an identity has been set,
.Nm
will automatically identify itself when it sends or receives a configure
-reject, when negotiation fails or when LCP reaches the opened state.
+reject, when negotiation fails, or when LCP reaches the opened state.
.Pp
Received identification packets are logged to the LCP log (see
.Ic set log
for details) and are never responded to.
-.It set Ns Xo
-.Op up
+.It Ic set Ns Xo
+.Op Ic up
.Ar var value
.Xc
This option allows the setting of any of the following variables:
.Bl -tag -width 2n
-.It set accmap Ar hex-value
+.It Ic set accmap Ar hex-value
ACCMap stands for Asynchronous Control Character Map.
This is always
negotiated with the peer, and defaults to a value of 00000000 in hex.
@@ -4077,8 +4060,8 @@ certain characters from end to end (such as XON/XOFF etc).
.Pp
For the XON/XOFF scenario, use
.Dq set accmap 000a0000 .
-.It set Op auth Ns Xo
-.No key Ar value
+.It Ic set Op Ic auth Ns Xo
+.Ic key Ar value
.Xc
This sets the authentication key (or password) used in client mode
PAP or CHAP negotiation to the given value.
@@ -4093,13 +4076,13 @@ or
logging is in effect,
.Ar value
is logged as
-.Sq ********
+.Dq ********
for security reasons.
.Pp
If the first character of
.Ar value
is an exclamation mark
-.Pq Dq !\& ,
+.Pq Sq !\& ,
.Nm
treats the remainder of the string as a program that must be executed
to determine the
@@ -4109,17 +4092,17 @@ and
values.
.Pp
If the
-.Dq !\&
+.Sq !\&
is doubled up
(to
-.Dq !! ) ,
+.Sq !! ) ,
it is treated as a single literal
-.Dq !\& ,
+.Sq !\& ,
otherwise, ignoring the
-.Dq !\& ,
+.Sq !\& ,
.Ar value
is parsed as a program to execute in the same was as the
-.Dq !bg
+.No !\& Ns Ic bg
command above, substituting special names in the same manner.
Once executed,
.Nm
@@ -4154,7 +4137,7 @@ in this manner, it's expected that the host challenge is a series of ASCII
digits or characters.
An encryption device or Secure ID card is usually
required to calculate the secret appropriate for the given challenge.
-.It set authname Ar ID
+.It Ic set authname Ar ID
This sets the authentication ID used in client mode PAP or CHAP negotiation.
.Pp
If used in
@@ -4163,11 +4146,11 @@ mode with CHAP enabled,
.Ar ID
is used in the initial authentication challenge and should normally be set to
the local machine name.
-.It set autoload Xo
+.It Ic set autoload Xo
.Ar min-percent max-percent period
.Xc
-These settings apply only in multi-link mode and default to zero, zero and
-five respectively.
+These settings apply only in multi-link mode and default to zero, zero, and
+five, respectively.
When more than one
.Ar demand-dial
(also known as
@@ -4199,48 +4182,44 @@ links to simply come up one at a time.
.Pp
Certain devices cannot determine their physical bandwidth, so it
is sometimes necessary to use the
-.Dq set bandwidth
+.Ic set bandwidth
command (described below) to make
-.Dq set autoload
+.Ic set autoload
work correctly.
-.It set bandwidth Ar value
+.It Ic set bandwidth Ar value
This command sets the connection bandwidth in bits per second.
.Ar value
must be greater than zero.
It is currently only used by the
-.Dq set autoload
+.Ic set autoload
command above.
-.It set callback Ar option Ns No ...
+.It Ic set callback Ar option ...
If no arguments are given, callback is disabled, otherwise,
.Nm
will request (or in
.Fl direct
-mode, will accept) one of the given
-.Ar option Ns No s .
+mode, will accept) one of the given options.
In client mode, if an
.Ar option
is NAK'd
.Nm
will request a different
.Ar option ,
-until no options remain at which point
+until no options remain; at which point
.Nm
will terminate negotiations (unless
.Dq none
-is one of the specified
-.Ar option ) .
+is one of the specified options).
In server mode,
.Nm
-will accept any of the given protocols - but the client
+will accept any of the given protocols \- but the client
.Em must
request one of them.
If you wish callback to be optional, you must {include}
.Ar none
as an option.
.Pp
-The
-.Ar option Ns No s
-are as follows (in this order of preference):
+The options are as follows (in this order of preference):
.Bl -tag -width Ds
.It auth
The callee is expected to decide the callback number based on
@@ -4253,7 +4232,7 @@ the peer's entry in
.It cbcp
Microsoft's callback control protocol is used.
See
-.Dq set cbcp
+.Ic set cbcp
below.
.Pp
If you wish to negotiate
@@ -4275,14 +4254,14 @@ If
is the callee,
.Ar number
should be either a comma separated list of allowable numbers or a
-.Dq \&* ,
+.Sq \&* ,
meaning any number is permitted.
If
.Nm
is the caller, only a single number should be specified.
.Pp
Note, this option is very unsafe when used with a
-.Dq \&*
+.Sq \&*
as a malicious caller can tell
.Nm
to call any (possibly international) number without first authenticating
@@ -4296,38 +4275,37 @@ This is required (in addition to one or more other callback
options) if you wish callback to be optional.
.El
.Pp
-.It set cbcp Oo
+.It Ic set cbcp Oo
.No *| Ns Ar number Ns Oo
.No , Ns Ar number Ns ...\& Oc
.Op Ar delay Op Ar retry
.Oc
If no arguments are given, CBCP (Microsoft's CallBack Control Protocol)
-is disabled - ie, configuring CBCP in the
+is disabled \- i.e., configuring CBCP in the
.Dq set callback
command will result in
.Nm
requesting no callback in the CBCP phase.
Otherwise,
.Nm
-attempts to use the given phone
-.Ar number Ns No (s).
+attempts to use the given phone number(s).
.Pp
In server mode
.Pq Fl direct ,
.Nm
will insist that the client uses one of these numbers, unless
-.Dq \&*
+.Sq \&*
is used in which case the client is expected to specify the number.
.Pp
In client mode,
.Nm
will attempt to use one of the given numbers (whichever it finds to
be agreeable with the peer), or if
-.Dq \&*
+.Sq \&*
is specified,
.Nm
will expect the peer to specify the number.
-.It set cd Oo
+.It Ic set cd Oo
.No off| Ns Ar seconds Ns Op !\&
.Oc
Normally,
@@ -4342,7 +4320,7 @@ If it's not set,
assumes that this is because the device doesn't support carrier (which
is true for most
.Dq laplink
-NULL-modem cables), logs the fact and stops checking
+NULL-modem cables), logs the fact, and stops checking
for carrier.
.Pp
As ptys don't support the TIOCMGET ioctl, the tty device will switch all
@@ -4368,13 +4346,13 @@ result in a warning when the device is opened.
Some modems take more than one second after connecting to assert the carrier
signal.
If this delay isn't increased, this will result in
-.Nm Ns No 's
+.Nm ppp Ns 's
inability to detect when the link is dropped, as
.Nm
assumes that the device isn't asserting carrier.
.Pp
The
-.Dq set cd
+.Ic set cd
command overrides the default carrier behaviour.
.Ar seconds
specifies the maximum number of seconds that
@@ -4401,7 +4379,7 @@ values.
If
.Ar seconds
is followed immediately by an exclamation mark
-.Pq Dq !\& ,
+.Pq Sq !\& ,
.Nm
will
.Em require
@@ -4409,7 +4387,7 @@ carrier.
If carrier is not detected after
.Ar seconds
seconds, the link will be disconnected.
-.It set choked Op Ar timeout
+.It Ic set choked Op Ar timeout
This sets the number of seconds that
.Nm
will keep a choked output queue before dropping all pending output packets.
@@ -4440,65 +4418,48 @@ seconds have passed or at least one packet has been sent.
If
.Ar timeout
seconds pass, all pending output packets are dropped.
-.It set ctsrts|crtscts on|off
+.It Xo
+.Ic set ctsrts Ns \&| Ns Ic crtscts
+.Ic on Ns \&| Ns Ic off
+.Xc
This sets hardware flow control.
Hardware flow control is
.Ar on
by default.
-.It set deflate Ar out-winsize Op Ar in-winsize
-This sets the DEFLATE algorithms default outgoing and incoming window
+.It Ic set deflate Ar out-winsize Op Ar in-winsize
+This sets the DEFLATE algorithm's default outgoing and incoming window
sizes.
Both
.Ar out-winsize
and
.Ar in-winsize
-must be values between
-.Em 8
-and
-.Em 15 .
+must be values between 8 and 15.
If
.Ar in-winsize
is specified,
.Nm
will insist that this window size is used and will not accept any other
values from the peer.
-.It set dns Op Ar primary Op Ar secondary
-This command specifies DNS overrides for the
-.Dq accept dns
-command.
-Refer to the
-.Dq accept
-command description above for details.
-This command does not affect the IP numbers requested using
-.Dq enable dns .
-.It set device|line Xo
-.Ar value Ns No ...
+.It Ic set device No \&| Ic line Xo
+.Ar value ...
.Xc
This sets the device(s) to which
.Nm
will talk to the given
-.Dq value .
+.Ar value .
.Pp
-All ISDN and serial device names are expected to begin with
+All serial device names are expected to begin with
.Pa /dev/ .
-ISDN devices are usually called
-.Pa i4brbchX
-and serial devices are usually called
+Serial devices are usually called
.Pa cuaXX .
.Pp
If
-.Dq value
+.Ar value
does not begin with
.Pa /dev/ ,
it must either begin with an exclamation mark
-.Pq Dq !\& ,
-be of the format
-.No PPPoE: Ns Ar iface Ns Xo
-.Op \&: Ns Ar provider Ns
-.Xc
-(on
-.Xr netgraph 4
-enabled systems), or be of the format
+.Pq Sq !\&
+or be of the format
.Sm off
.Ar host : port Op /tcp|udp .
.Sm on
@@ -4506,51 +4467,12 @@ enabled systems), or be of the format
If it begins with an exclamation mark, the rest of the device name is
treated as a program name, and that program is executed when the device
is opened.
-Standard input, output and error are fed back to
+Standard input, output, and error are fed back to
.Nm
and are read and written as if they were a regular device.
.Pp
If a
-.No PPPoE: Ns Ar iface Ns Xo
-.Op \&: Ns Ar provider Ns
-.Xc
-specification is given,
-.Nm
-will attempt to create a
-.Em PPP
-over Ethernet connection using the given
-.Ar iface
-interface by using
-.Xr netgraph 4 .
-If
-.Xr netgraph 4
-is not available,
-.Nm
-will attempt to load it using
-.Xr kldload 2 .
-If this fails, an external program must be used such as the
-.Xr pppoe 8
-program available under
-.Ox .
-The given
-.Ar provider
-is passed as the service name in the PPPoE Discovery Initiation (PADI)
-packet.
-If no provider is given, an empty value will be used.
-.Pp
-When a PPPoE connection is established,
-.Nm
-will place the name of the Access Concentrator in the environment variable
-.Ev ACNAME .
-.Pp
-Refer to
-.Xr netgraph 4
-and
-.Xr ng_pppoe 4
-for further details.
-.Pp
-If a
-.Ar host Ns No : Ns Ar port Ns Oo
+.Ar host : Ns Ar port Ns Oo
.No /tcp|udp
.Oc
specification is given,
@@ -4569,37 +4491,35 @@ Refer to the section on
.Em PPP OVER TCP and UDP
above for further details.
.Pp
-If multiple
-.Dq values
-are specified,
+If multiple values are specified,
.Nm
will attempt to open each one in turn until it succeeds or runs out of
devices.
-.It set dial Ar chat-script
+.It Ic set dial Ar chat-script
This specifies the chat script that will be used to dial the other
side.
See also the
-.Dq set login
+.Ic set login
command below.
Refer to
.Xr chat 8
and to the example configuration files for details of the chat script
format.
It is possible to specify some special
-.Sq values
+.Dq values
in your chat script as follows:
.Bl -tag -width 2n
.It Li \ec
When used as the last character in a
-.Sq send
+.Dq send
string, this indicates that a newline should not be appended.
.It Li \ed
When the chat script encounters this sequence, it delays two seconds.
+.It Li \en
+This is replaced with a newline character.
.It Li \ep
When the chat script encounters this sequence, it delays for one quarter of
a second.
-.It Li \en
-This is replaced with a newline character.
.It Li \er
This is replaced with a carriage return character.
.It Li \es
@@ -4608,27 +4528,27 @@ This is replaced with a space character.
This is replaced with a tab character.
.It Li \eT
This is replaced by the current phone number (see
-.Dq set phone
+.Ic set phone
below).
.It Li \eP
This is replaced by the current
.Ar authkey
value (see
-.Dq set authkey
+.Ic set authkey
above).
.It Li \eU
This is replaced by the current
.Ar authname
value (see
-.Dq set authname
+.Ic set authname
above).
.El
.Pp
Note that two parsers will examine these escape sequences, so in order to
have the
-.Sq chat parser
+.Dq chat parser
see the escape character, it is necessary to escape it from the
-.Sq command parser .
+.Dq command parser .
This means that in practice you should use two escapes, for example:
.Bd -literal -offset indent
set dial "... ATDT\\\\T CONNECT"
@@ -4637,14 +4557,14 @@ set dial "... ATDT\\\\T CONNECT"
It is also possible to execute external commands from the chat script.
To do this, the first character of the expect or send string is an
exclamation mark
-.Pq Dq !\& .
+.Pq Sq !\& .
If a literal exclamation mark is required, double it up to
-.Dq !!\&
+.Sq !!\&
and it will be treated as a single literal
-.Dq !\& .
+.Sq !\& .
When the command is executed, standard input and standard output are
directed to the open device (see the
-.Dq set device
+.Ic set device
command), and standard error is read by
.Nm
and substituted as the expect or send string.
@@ -4661,7 +4581,7 @@ word: ppp \\"!sh \\\\-c \\\\\\"echo \\\\-n label: >&2\\\\\\"\\" \e
.Ed
.Pp
would result in the following chat sequence (output using the
-.Sq set log local chat
+.Dq set log local chat
command before dialing):
.Bd -literal -offset indent
Dial attempt 1 of 1
@@ -4686,16 +4606,16 @@ login OK!
.Pp
Note (again) the use of the escape character, allowing many levels of
nesting.
-Here, there are four parsers at work.
+Here there are four parsers at work.
The first parses the original line, reading it as three arguments.
The second parses the third argument, reading it as 11 arguments.
At this point, it is
important that the
-.Dq \&-
+.Sq \&-
signs are escaped, otherwise this parser will see them as constituting
an expect-send-expect sequence.
When the
-.Dq !\&
+.Sq !\&
character is seen, the execution parser reads the first command as three
arguments, and then
.Xr sh 1
@@ -4704,7 +4624,7 @@ itself expands the argument after the
As we wish to send the output back to the modem, in the first example
we redirect our output to file descriptor 2 (stderr) so that
.Nm
-itself sends and logs it, and in the second example, we just output to stdout,
+itself sends and logs it, and in the second example we just output to stdout,
which is attached directly to the modem.
.Pp
This, of course means that it is possible to execute an entirely external
@@ -4716,12 +4636,24 @@ for a good alternative.
.Pp
The external command that is executed is subjected to the same special
word expansions as the
-.Dq !bg
+.No !\& Ns Ic bg
+command.
+.It Xo
+.Ic set dns
+.Op Ar primary Op Ar secondary
+.Xc
+This command specifies DNS overrides for the
+.Ic accept dns
command.
-.It set enddisc Op label|IP|MAC|magic|psn value
+Refer to the
+.Ic accept
+command description above for details.
+This command does not affect the IP numbers requested using
+.Ic enable dns .
+.It Ic set enddisc Op label|IP|MAC|magic|psn value
This command sets our local endpoint discriminator.
If set prior to LCP negotiation, and if no
-.Dq disable enddisc
+.Ic disable enddisc
command has been used,
.Nm
will send the information to the peer using the LCP endpoint discriminator
@@ -4751,7 +4683,7 @@ is usually done prior to any
.Dq set ifaddr
commands.
.It Li magic
-A 20 digit random number is used.
+A 20-digit random number is used.
Care should be taken when using magic numbers as restarting
.Nm
or creating a link using a different
@@ -4771,14 +4703,14 @@ country code first.
.El
.Pp
If no arguments are given, the endpoint discriminator is reset.
-.It set escape Ar value...
+.It Ic set escape Ar value...
This option is similar to the
-.Dq set accmap
+.Ic set accmap
option above.
It allows the user to specify a set of characters that will be
-.Sq escaped
+.Dq escaped
as they travel across the link.
-.It set filter dial|alive|in|out Ar rule-no Xo
+.It Ic set filter No dial|alive|in|out Ar rule-no Xo
.No permit|deny|clear| Ns Ar rule-no
.Op !\&
.Oo Op host
@@ -4796,7 +4728,7 @@ as they travel across the link.
supports four filter sets.
The
.Em alive
-filter specifies packets that keep the connection alive - resetting the
+filter specifies packets that keep the connection alive \- resetting the
idle timer.
The
.Em dial
@@ -4832,7 +4764,7 @@ In the case of
.Em alive
filters it means that the packet will not reset the idle timer (even if
the
-.Ar in Ns No / Ns Ar out
+.Ar in Ns / Ns Ar out
filter has a
.Dq timeout
value) and in the case of
@@ -4843,16 +4775,21 @@ Refer to the
section on
.Sx PACKET FILTERING
above for further details.
-.It set hangup Ar chat-script
+.It Ic set hangup Ar chat-script
This specifies the chat script that will be used to reset the device
before it is closed.
It should not normally be necessary, but can
be used for devices that fail to reset themselves properly on close.
-.It set help|? Op Ar command
-This command gives a summary of available set commands, or if
+.It Xo
+.Ic set help No \&| Ic ?\&
+.Op Ar command
+.Xc
+This command gives a summary of available
+.Ic set
+commands, or if
.Ar command
is specified, the command usage is shown.
-.It set ifaddr Oo Ar myaddr Ns
+.It Ic set ifaddr Oo Ar myaddr Ns
.Op / Ns Ar \&nn
.Oo Ar hisaddr Ns Op / Ns Ar \&nn
.Oo Ar netmask
@@ -4861,11 +4798,11 @@ is specified, the command usage is shown.
.Oc
This command specifies the IP addresses that will be used during
IPCP negotiation.
-Addresses are specified using the format
+Addresses are specified using the following format:
.Pp
.Dl a.b.c.d/nn
.Pp
-Where
+\&...where
.Dq a.b.c.d
is the preferred IP, but
.Ar nn
@@ -4873,13 +4810,13 @@ specifies how many bits of the address we will insist on.
If
.No / Ns Ar nn
is omitted, it defaults to
-.Dq /32
+.Sq /32
unless the IP address is 0.0.0.0 in which case it defaults to
-.Dq /0 .
+.Sq /0 .
.Pp
If you wish to assign a dynamic IP number to the peer,
.Ar hisaddr
-may also be specified as a range of IP numbers in the format
+may also be specified as a range of IP numbers in the following format:
.Bd -ragged -offset indent
.Ar \&IP Ns Oo \&- Ns Ar \&IP Ns Xo
.Oc Ns Oo , Ns Ar \&IP Ns
@@ -4888,11 +4825,11 @@ may also be specified as a range of IP numbers in the format
.Xc
.Ed
.Pp
-for example:
+For example:
.Pp
.Dl set ifaddr 10.0.0.1 10.0.1.2-10.0.1.10,10.0.1.20
.Pp
-will only negotiate
+\&...will only negotiate
.Dq 10.0.0.1
as the local IP number, but may assign any of the given 10 IP
numbers to the peer.
@@ -4902,7 +4839,7 @@ and that number is not already in use,
will grant the peer's request.
This is useful if the peer wants
to re-establish a link using the same IP number as was previously
-allocated (thus maintaining any existing tcp or udp connections).
+allocated (thus maintaining any existing TCP or UDP connections).
.Pp
If the peer requests an IP number that's either outside
of this range or is already in use,
@@ -4949,7 +4886,7 @@ In all cases, if the interface is already configured,
.Nm
will try to maintain the interface IP numbers so that any existing
bound sockets will remain valid.
-.It set ifqueue Ar packets
+.It Ic set ifqueue Ar packets
Set the maximum number of packets that
.Nm
will read from the tunnel interface while data cannot be sent to any of
@@ -4967,23 +4904,32 @@ This prevents any possible latency problems.
.Pp
The default value for
.Ar packets
-is
-.Dq 30 .
-.It set ccpretry|ccpretries Oo Ar timeout
-.Op Ar reqtries Op Ar trmtries
-.Oc
-.It set chapretry|chapretries Oo Ar timeout
-.Op Ar reqtries
-.Oc
-.It set ipcpretry|ipcpretries Oo Ar timeout
-.Op Ar reqtries Op Ar trmtries
-.Oc
-.It set lcpretry|lcpretries Oo Ar timeout
-.Op Ar reqtries Op Ar trmtries
-.Oc
-.It set papretry|papretries Oo Ar timeout
-.Op Ar reqtries
-.Oc
+is 30.
+.It Xo
+.Ic set ccpretry No \&|
+.Ic ccpretries Oo Ar timeout
+.Op Ar reqtries Op Ar trmtries Oc
+.Xc
+.It Xo
+.Ic set chapretry No \&|
+.Ic chapretries Oo Ar timeout
+.Op Ar reqtries Oc
+.Xc
+.It Xo
+.Ic set ipcpretry No \&|
+.Ic ipcpretries Oo Ar timeout
+.Op Ar reqtries Op Ar trmtries Oc
+.Xc
+.It Xo
+.Ic set lcpretry No \&|
+.Ic lcpretries Oo Ar timeout
+.Op Ar reqtries Op Ar trmtries Oc
+.Xc
+.It Xo
+.Ic set papretry No \&|
+.Ic papretries Oo Ar timeout
+.Op Ar reqtries Oc
+.Xc
These commands set the number of seconds that
.Nm
will wait before resending Finite State Machine (FSM) Request packets.
@@ -4998,7 +4944,7 @@ is specified, it tells
how many configuration request attempts it should make while receiving
no reply from the peer before giving up.
The default is 5 attempts for
-CCP, LCP and IPCP and 3 attempts for PAP and CHAP.
+CCP, LCP, and IPCP, and 3 attempts for PAP and CHAP.
.Pp
If
.Ar trmtries
@@ -5017,25 +4963,25 @@ In order to avoid negotiations with the peer that will never converge,
will only send at most 3 times the configured number of
.Ar reqtries
in any given negotiation session before giving up and closing that layer.
-.It set log Xo
+.It Ic set log Xo
.Op local
.Op +|- Ns
-.Ar value Ns No ...
+.Ar value Ns ...
.Xc
This command allows the adjustment of the current log level.
Refer to the Logging Facility section for further details.
-.It set login Ar chat-script
+.It Ic set login Ar chat-script
This
.Ar chat-script
compliments the dial-script.
If both are specified, the login
script will be executed after the dial script.
Escape sequences available in the dial script are also available here.
-.It set logout Ar chat-script
-This specifies the chat script that will be used to logout
+.It Ic set logout Ar chat-script
+This specifies the chat script that will be used to log out
before the hangup script is called.
It should not normally be necessary.
-.It set lqrperiod Ar frequency
+.It Ic set lqrperiod Ar frequency
This command sets the
.Ar frequency
in seconds at which
@@ -5045,19 +4991,22 @@ or
packets are sent.
The default is 30 seconds.
You must also use the
-.Dq enable lqr
+.Ic enable lqr
command if you wish to send LQR requests to the peer.
-.It set mode Ar interactive|auto|ddial|background
+.It Xo
+.Ic set mode
+.Ar interactive | auto | ddial | background
+.Xc
This command allows you to change the
-.Sq mode
+.Dq mode
of the specified link.
This is normally only useful in multi-link mode,
but may also be used in uni-link mode.
.Pp
It is not possible to change a link that is
-.Sq direct
+.Dq direct
or
-.Sq dedicated .
+.Dq dedicated .
.Pp
Note: If you issue the command
.Dq set mode auto ,
@@ -5069,15 +5018,15 @@ This will allow
to do the necessary address translations to enable the process that
triggers the connection to connect once the link is up despite the
peer assigning us a new (dynamic) IP address.
-.It set mppe Op 40|56|128|* Op stateless|stateful|*
+.It Ic set mppe Op 40|56|128|* Op stateless|stateful|*
This option selects the encryption parameters used when negotiating
MPPE.
MPPE can be disabled entirely with the
-.Dq disable mppe
+.Ic disable mppe
command.
If no arguments are given,
.Nm
-will attempt to negotiate a stateful link with a 128 bit key, but
+will attempt to negotiate a stateful link with a 128-bit key, but
will agree to whatever the peer requests (including no encryption
at all).
.Pp
@@ -5085,8 +5034,8 @@ If any arguments are given,
.Nm
will
.Em insist
-on using MPPE and will close the link if it's rejected by the peer (Note;
-this behaviour can be overridden by a configured RADIUS server).
+on using MPPE and will close the link if it's rejected by the peer.
+(Note: this behaviour can be overridden by a configured RADIUS server.)
.Pp
The first argument specifies the number of bits that
.Nm
@@ -5101,13 +5050,13 @@ the encryption dictionary is re-initialised every 256 packets or after
the loss of any data and the key is changed every 256 packets.
Stateless mode is less efficient but is better for unreliable transport
layers.
-.It set mrru Op Ar value
+.It Ic set mrru Op Ar value
Setting this option enables Multi-link PPP negotiations, also known as
Multi-link Protocol or MP.
There is no default MRRU (Maximum Reconstructed Receive Unit) value.
If no argument is given, multi-link mode is disabled.
-.It set mru Xo
-.Op max Ns Op imum
+.It Ic set mru Xo
+.Op Ic max Ns Op Ic imum
.Op Ar value
.Xc
The default MRU (Maximum Receive Unit) is 1500.
@@ -5118,24 +5067,24 @@ protocol says implementations *must* be able to accept packets of at
least 1500 octets.
.Pp
If the
-.Dq maximum
+.Ic maximum
keyword is used,
.Nm
will refuse to negotiate a higher value.
The maximum MRU can be set to 2048 at most.
Setting a maximum of less than 1500 violates the
.Em PPP
-rfc, but may sometimes be necessary.
+RFC, but may sometimes be necessary.
For example,
.Em PPPoE
imposes a maximum of 1492 due to hardware limitations.
.Pp
If no argument is given, 1500 is assumed.
A value must be given when
-.Dq maximum
+.Ic maximum
is specified.
-.It set mtu Xo
-.Op max Ns Op imum
+.It Ic set mtu Xo
+.Op Ic max Ns Op Ic imum
.Op Ar value
.Xc
The default MTU is 1500.
@@ -5154,7 +5103,7 @@ limiting your packet size (giving better bandwidth sharing at the expense
of more header data).
.Pp
If the
-.Dq maximum
+.Ic maximum
keyword is used,
.Nm
will refuse to negotiate a higher value.
@@ -5162,39 +5111,42 @@ The maximum MTU can be set to 2048 at most.
.Pp
If no
.Ar value
-is given, 1500, or whatever the peer asks for is used.
+is given, 1500, or whatever the peer asks for, is used.
A value must be given when
-.Dq maximum
+.Ic maximum
is specified.
-.It set nbns Op Ar x.x.x.x Op Ar y.y.y.y
+.It Xo
+.Ic set nbns
+.Op Ar x.x.x.x Op Ar y.y.y.y
+.Xc
This option allows the setting of the Microsoft NetBIOS name server
values to be returned at the peer's request.
If no values are given,
.Nm
will reject any such requests.
-.It set openmode active|passive Op Ar delay
+.It Xo
+.Ic set openmode
+.No active|passive Op Ar delay
+.Xc
By default,
-.Ar openmode
-is always
-.Ar active
-with a one second
+.Ic openmode
+is always active with a one second
.Ar delay .
That is,
.Nm
will always initiate LCP/IPCP/CCP negotiation one second after the line
comes up.
If you want to wait for the peer to initiate negotiations, you
-can use the value
-.Ar passive .
+can use the value passive.
If you want to initiate negotiations immediately or after more than one
second, the appropriate
.Ar delay
may be specified here in seconds.
-.It set parity odd|even|none|mark
+.It Ic set parity No odd|even|none|mark
This allows the line parity to be set.
The default value is
.Ar none .
-.It set phone Ar telno Ns Xo
+.It Ic set phone Ar telno Ns Xo
.Oo \&| Ns Ar backupnumber
.Oc Ns ... Ns Oo : Ns Ar nextnumber
.Oc Ns ...
@@ -5202,9 +5154,9 @@ The default value is
This allows the specification of the phone number to be used in
place of the \\\\T string in the dial and login chat scripts.
Multiple phone numbers may be given separated either by a pipe
-.Pq Dq \&|
+.Pq Sq \&|
or a colon
-.Pq Dq \&: .
+.Pq Sq \&: .
.Pp
Numbers after the pipe are only dialed if the dial or login
script for the previous number failed.
@@ -5216,13 +5168,13 @@ If multiple numbers are given,
.Nm
will dial them according to these rules until a connection is made, retrying
the maximum number of times specified by
-.Dq set redial
+.Ic set redial
below.
In
.Fl background
mode, each number is attempted at most once.
-.It set Op proc Ns Xo
-.No title Op Ar value
+.It Ic set Op Ic proc Ns Xo
+.Ic title Op Ar value
.Xc
The current process title as displayed by
.Xr ps 1
@@ -5233,34 +5185,33 @@ If
is not specified, the original process title is restored.
All the
word replacements done by the shell commands (see the
-.Dq bg
+.Ic bg
command above) are done here too.
.Pp
Note, if USER is required in the process title, the
-.Dq set proctitle
+.Ic set proctitle
command must appear in
.Pa ppp.linkup ,
as it is not known when the commands in
.Pa ppp.conf
are executed.
-.It set radius Op Ar config-file
+.It Ic set radius Op Ar config-file
This command enables RADIUS support (if it's compiled in).
.Ar config-file
refers to the radius client configuration file.
-If PAP, CHAP, MSCHAP or MSCHAPv2 are
-.Dq enable Ns No d ,
+If PAP, CHAP, MSCHAP, or MSCHAPv2 are enabled,
.Nm
behaves as a
-.Em \&N Ns No etwork
-.Em \&A Ns No ccess
-.Em \&S Ns No erver
+.Em \&N Ns etwork
+.Em \&A Ns ccess
+.Em \&S Ns erver
and uses the configured RADIUS server to authenticate rather than
authenticating from the
.Pa ppp.secret
file or from the passwd database.
.Pp
-If none of PAP, CHAP, MSCHAP or MSCHAPv2 are enabled,
-.Dq set radius
+If none of PAP, CHAP, MSCHAP, or MSCHAPv2 are enabled,
+.Ic set radius
will do nothing.
.Pp
.Nm
@@ -5272,12 +5223,14 @@ The peer IP address is set to the given value.
The tun interface netmask is set to the given value.
.It RAD_FRAMED_MTU
If the given MTU is less than the peer's MRU as agreed during LCP
-negotiation, *and* it is less that any configured MTU (see the
-.Dq set mru
+negotiation,
+.Em and
+it is less that any configured MTU (see the
+.Ic set mru
command), the tun interface MTU is set to the given value.
.It RAD_FRAMED_COMPRESSION
If the received compression type is
-.Dq 1 ,
+.Sq 1 ,
.Nm
will request VJ compression during IPCP negotiations despite any
.Dq disable vj
@@ -5367,22 +5320,22 @@ will insist that MPPE encryption is used (even if no
configuration command has been given with arguments).
If it is supplied with a value of 1 (Allowed), encryption is made optional
(despite any
-.Dq set mppe
+.Ic set mppe
configuration commands with arguments).
.It RAD_MICROSOFT_MS_MPPE_ENCRYPTION_TYPES
If this
.Dv RAD_VENDOR_MICROSOFT
vendor specific attribute is supplied, bits 1 and 2 are examined.
-If either or both are set, 40 bit and/or 128 bit (respectively) encryption
+If either or both are set, 40-bit and/or 128-bit (respectively) encryption
options are set, overriding any given first argument to the
-.Dq set mppe
+.Ic set mppe
command.
-Note, it is not currently possible for the RADIUS server to specify 56 bit
+Note, it is not currently possible for the RADIUS server to specify 56-bit
encryption.
.It RAD_MICROSOFT_MS_MPPE_RECV_KEY
If this
.Dv RAD_VENDOR_MICROSOFT
-vendor specific attribute is supplied, it's value is used as the master
+vendor specific attribute is supplied, its value is used as the master
key for decryption of incoming data.
When clients are authenticated using MSCHAPv2,
the RADIUS server MUST provide this attribute if inbound MPPE is
@@ -5390,7 +5343,7 @@ to function.
.It RAD_MICROSOFT_MS_MPPE_SEND_KEY
If this
.Dv RAD_VENDOR_MICROSOFT
-vendor specific attribute is supplied, it's value is used as the master
+vendor specific attribute is supplied, its value is used as the master
key for encryption of outgoing data.
When clients are authenticated using MSCHAPv2,
the RADIUS server MUST provide this attribute if outbound MPPE is
@@ -5398,8 +5351,8 @@ to function.
.El
.Pp
Values received from the RADIUS server may be viewed using
-.Dq show bundle .
-.It set reconnect Ar timeout ntries
+.Ic show bundle .
+.It Ic set reconnect Ar timeout ntries
Should the line drop unexpectedly (due to loss of CD or LQR
failure), a connection will be re-established after the given
.Ar timeout .
@@ -5413,13 +5366,13 @@ A value of
for
.Ar timeout
will result in a variable pause, somewhere between 1 and 30 seconds.
-.It set recvpipe Op Ar value
+.It Ic set recvpipe Op Ar value
This sets the routing table RECVPIPE value.
The optimum value is just over twice the MTU value.
If
.Ar value
is unspecified or zero, the default kernel controlled value is used.
-.It set redial Ar secs Ns Xo
+.It Ic set redial Ar secs Ns Xo
.Oo + Ns Ar inc Ns
.Op - Ns Ar max Ns
.Oc Ns Op . Ns Ar next
@@ -5430,7 +5383,7 @@ can be instructed to attempt to redial
.Ar attempts
times.
If more than one phone number is specified (see
-.Dq set phone
+.Ic set phone
above), a pause of
.Ar next
is taken before dialing each number.
@@ -5466,21 +5419,22 @@ delay will be effective, even after
has been exceeded, so an immediate manual dial may appear to have
done nothing.
If an immediate dial is required, a
-.Dq !\&
+.Sq !\&
should immediately follow the
-.Dq open
+.Ic open
keyword.
See the
-.Dq open
+.Ic open
description above for further details.
-.It set sendpipe Op Ar value
+.It Ic set sendpipe Op Ar value
This sets the routing table SENDPIPE value.
The optimum value is just over twice the MTU value.
If
.Ar value
is unspecified or zero, the default kernel controlled value is used.
-.It "set server|socket" Ar TcpPort Ns No \&| Ns Xo
-.Ar LocalName Ns No |none|open|closed
+.It Xo
+.Ic set server Ns \&| Ns Ic socket
+.Ar TcpPort Ns \&| Ns Ar LocalName Ns |none|open|closed
.Op password Op Ar mask
.Xc
This command tells
@@ -5525,14 +5479,14 @@ If the password is
specified as an empty string, no password is required for connecting clients.
.Pp
When specifying a local domain socket, the first
-.Dq %d
+.Sq %d
sequence found in the socket name will be replaced with the current
interface unit number.
This is useful when you wish to use the same
profile for more than one connection.
.Pp
In a similar manner TCP sockets may be prefixed with the
-.Dq +
+.Sq +
character, in which case the current interface unit number is added to
the port number.
.Pp
@@ -5540,19 +5494,19 @@ When using
.Nm
with a server socket, the
.Xr pppctl 8
-command is the preferred mechanism of communications.
+command is the preferred mechanism of communication.
Currently,
.Xr telnet 1
can also be used, but link encryption may be implemented in the future, so
.Xr telnet 1
should be avoided.
.Pp
-Note;
+Note:
.Dv SIGUSR1
and
.Dv SIGUSR2
interact with the diagnostic socket.
-.It set speed Ar value
+.It Ic set speed Ar value
This sets the speed of the serial device.
If speed is specified as
.Dq sync ,
@@ -5563,7 +5517,10 @@ Certain device types will know whether they should be specified as
synchronous or asynchronous.
These devices will override incorrect
settings and log a warning to this effect.
-.It set stopped Op Ar LCPseconds Op Ar CCPseconds
+.It Xo
+.Ic set stopped
+.Op Ar LCPseconds Op Ar CCPseconds
+.Xc
If this option is set,
.Nm
will time out after the given FSM (Finite State Machine) has been in
@@ -5587,9 +5544,9 @@ The default value is zero, where
doesn't time out in the stopped state.
.Pp
This value should not be set to less than the openmode delay (see
-.Dq set openmode
+.Ic set openmode
above).
-.It set timeout Ar idleseconds Op Ar mintimeout
+.It Ic set timeout Ar idleseconds Op Ar mintimeout
This command allows the setting of the idle timer.
Refer to the section titled
.Sx SETTING THE IDLE TIMER
@@ -5601,7 +5558,7 @@ is specified,
.Nm
will never idle out before the link has been up for at least that number
of seconds.
-.It set urgent Xo
+.It Ic set urgent Xo
.Op tcp|udp|none
.Oo Op +|- Ns
.Ar port
@@ -5626,9 +5583,8 @@ are specified,
.Dq tcp
is assumed.
.Pp
-If no
-.Ar port Ns No s
-are given, the priority port lists are cleared (although if
+If no ports are given,
+the priority port lists are cleared (although if
.Dq tcp
or
.Dq udp
@@ -5636,122 +5592,121 @@ is specified, only that list is cleared).
If the first
.Ar port
argument is prefixed with a plus
-.Pq Dq \&+
+.Pq Sq \&+
or a minus
-.Pq Dq \&- ,
+.Pq Sq \&- ,
the current list is adjusted, otherwise the list is reassigned.
-.Ar port Ns No s
-prefixed with a plus or not prefixed at all are added to the list and
-.Ar port Ns No s
-prefixed with a minus are removed from the list.
+ports prefixed with a plus or not prefixed at all are added to the list and
+ports prefixed with a minus are removed from the list.
.Pp
If
.Dq none
is specified, all priority port lists are disabled and even
.Dv IPTOS_LOWDELAY
packets are not prioritised.
-.It set vj slotcomp on|off
+.It Ic set vj slotcomp on|off
This command tells
.Nm
whether it should attempt to negotiate VJ slot compression.
By default, slot compression is turned
.Ar on .
-.It set vj slots Ar nslots
+.It Ic set vj slots Ar nslots
This command sets the initial number of slots that
.Nm
will try to negotiate with the peer when VJ compression is enabled (see the
-.Sq enable
+.Ic enable
command above).
It defaults to a value of 16.
.Ar Nslots
-must be between
-.Ar 4
-and
-.Ar 16
-inclusive.
+must be between 4 and 16 inclusive.
.El
.Pp
-.It shell|! Op Ar command
+.It Xo
+.Ic shell No \&|
+.Ic !\&
+.Op Ar command
+.Xc
If
.Ar command
-is not specified a shell is invoked according to the
+is not specified, a shell is invoked according to the
.Dv SHELL
environment variable.
Otherwise, the given
.Ar command
is executed.
Word replacement is done in the same way as for the
-.Dq !bg
+.No !\& Ns Ic bg
command as described above.
.Pp
-Use of the ! character
-requires a following space as with any of the other commands.
+Use of the
+.Sq !\&
+character requires a following space as with any of the other commands.
You should note that this command is executed in the foreground;
.Nm
will not continue running until this process has exited.
Use the
-.Dv bg
+.Ic bg
command if you wish processing to happen in the background.
-.It show Ar var
+.It Ic show Ar var
This command allows the user to examine the following:
.Bl -tag -width 2n
-.It show bundle
+.It Ic show bundle
Show the current bundle settings.
-.It show ccp
+.It Ic show ccp
Show the current CCP compression statistics.
-.It show compress
+.It Ic show compress
Show the current VJ compression statistics.
-.It show escape
+.It Ic show escape
Show the current escape characters.
-.It show filter Op Ar name
+.It Ic show filter Op Ar name
List the current rules for the given filter.
If
.Ar name
is not specified, all filters are shown.
-.It show hdlc
+.It Ic show hdlc
Show the current HDLC statistics.
-.It show help|?
+.It Ic show help No \&| Ic ?\&
Give a summary of available show commands.
-.It show iface
+.It Ic show iface
Show the current interface information
(the same as
-.Dq iface show ) .
-.It show ipcp
+.Ic iface show ) .
+.It Ic show ipcp
Show the current IPCP statistics.
-.It show layers
+.It Ic show layers
Show the protocol layers currently in use.
-.It show lcp
+.It Ic show lcp
Show the current LCP statistics.
-.It show Op data Ns Xo
-.No link
+.It Ic show Op Ic data Ns Xo
+.Ic link
.Xc
Show high level link information.
-.It show links
+.It Ic show links
Show a list of available logical links.
-.It show log
+.It Ic show log
Show the current log values.
-.It show mem
+.It Ic show mem
Show current memory statistics.
-.It show ncp
+.It Ic show ncp
Show the current NCP statistics.
-.It show physical
+.It Ic show physical
Show low level link information.
-.It show mp
+.It Ic show mp
Show Multi-link information.
-.It show proto
+.It Ic show proto
Show current protocol totals.
-.It show route
+.It Ic show route
Show the current routing tables.
-.It show stopped
+.It Ic show stopped
Show the current stopped timeouts.
-.It show timer
+.It Ic show timer
Show the active alarm timers.
-.It show version
+.It Ic show version
Show the current version number of
.Nm ppp .
.El
.Pp
-.It term
+.It Ic term
Go into terminal mode.
Characters typed at the keyboard are sent to the device.
Characters read from the device are displayed on the screen.
@@ -5768,15 +5723,16 @@ Read the example configuration files.
They are a good source of information.
.It
Use
-.Dq help ,
-.Dq nat \&? ,
-.Dq enable \&? ,
-.Dq set ?\&
+.Ic help ,
+.Ic nat \&? ,
+.Ic enable \&? ,
+.Ic set ?\& ,
and
-.Dq show ?\&
+.Ic show ?\&
to get online information about what's available.
.It
The following URLs contain useful information:
+.Pp
.Bl -bullet -compact
.It
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/faq/ppp.html
@@ -5790,7 +5746,7 @@ http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/userppp.html
refers to four files:
.Pa ppp.conf ,
.Pa ppp.linkup ,
-.Pa ppp.linkdown
+.Pa ppp.linkdown ,
and
.Pa ppp.secret .
These files are placed in the
@@ -5831,7 +5787,7 @@ is the number of the device.
The tun interface used by this port.
Again, this file is only created in
.Fl background ,
-.Fl auto
+.Fl auto ,
and
.Fl ddial
modes.
@@ -5842,7 +5798,7 @@ In multi-link mode, local domain sockets are created using the peer
authentication name
.Pq Sq authname ,
the peer endpoint discriminator class
-.Pq Sq class
+.Pq Sq class ,
and the peer endpoint discriminator value
.Pq Sq value .
As the endpoint discriminator value may be a binary value, it is turned
@@ -5857,22 +5813,21 @@ This socket is used to pass links between different instances of
.Xr gzip 1 ,
.Xr hostname 1 ,
.Xr login 1 ,
+.Xr ps 1 ,
.Xr telnet 1 ,
-.\" .Xr kldload 2 ,
-.\" ifdef({LOCALNAT},{},{.Xr libalias 3 ,
-.\" })dnl
-.\" ifdef({LOCALRAD},{},{.Xr libradius 3 ,
-.\" })dnl
+.Xr umask 2 ,
.Xr syslog 3 ,
.Xr uucplock 3 ,
-.\" .Xr netgraph 4 ,
-.\" .Xr ng_pppoe 4 ,
+.Xr com 4 ,
+.Xr pccom 4 ,
.Xr tun 4 ,
+.Xr ucom 4 ,
.Xr crontab 5 ,
.Xr group 5 ,
.Xr passwd 5 ,
.Xr protocols 5 ,
.Xr resolv.conf 5 ,
+.Xr services 5 ,
.Xr syslog.conf 5 ,
.Xr adduser 8 ,
.Xr chat 8 ,
@@ -5880,7 +5835,6 @@ This socket is used to pass links between different instances of
.Xr ifconfig 8 ,
.Xr inetd 8 ,
.Xr init 8 ,
-.\" .Xr isdn 8 ,
.Xr named 8 ,
.Xr ping 8 ,
.Xr pppctl 8 ,