6253 F_GETLK doesn't always return lock owner
[illumos-gate.git] / usr / src / man / man1m / pppd.1m
blob0e7cc95459061f4c2ba351d6b486b4e41e558110
1 '\" te
2 .\" Copyright (c) 1989 Carnegie Mellon University. All rights reserved.
3 .\" Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by Carnegie Mellon University.  The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
4 .\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
5 .\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Right Reserved.
6 .TH PPPD 1M "Nov 21, 2001"
7 .SH NAME
8 pppd \- point to point protocol daemon
9 .SH SYNOPSIS
10 .LP
11 .nf
12 \fBpppd\fR [\fItty_name\fR] [\fIspeed\fR] [\fIoptions\fR]
13 .fi
15 .SH DESCRIPTION
16 .sp
17 .LP
18 The point-to-point protocol (PPP) provides a method for transmitting datagrams
19 over serial point-to-point links. PPP is composed of three components: a
20 facility for encapsulating datagrams over serial links, an extensible link
21 control protocol (LCP), and a family of network control protocols (NCP) for
22 establishing and configuring different network-layer protocols.
23 .sp
24 .LP
25 The encapsulation scheme is provided by driver code in the kernel. \fBpppd\fR
26 provides the basic LCP authentication support and several NCPs for establishing
27 and configuring the Internet Protocol (referred to as the IP Control Protocol
28 or "IPCP") and IPv6 (IPV6CP).
29 .SH OPTIONS
30 .sp
31 .LP
32 The following sections discuss the \fBpppd\fR options:
33 .SS "Options Files"
34 .sp
35 .LP
36 Options are taken from files and the command line. \fBpppd\fR reads options
37 from the files \fB/etc/ppp/options\fR, \fB$HOME/.ppprc\fR and
38 \fB/etc/ppp/options.\fR\fIttyname\fR (in that order) before processing the
39 options on the command line. (Command-line options are scanned for the terminal
40 name before the \fBoptions\fR.\fIttyname\fR file is read.) To form the name of
41 the \fBoptions\fR.\fIttyname\fR file, the initial \fB/dev/\fR is removed from
42 the terminal name, and any remaining forward slash characters (/) are replaced
43 with dots. For example, with serial device \fB/dev/cua/a\fR, option file
44 \fB/etc/ppp/options.cua.a\fR is read.
45 .sp
46 .LP
47 An options file is parsed into a series of words that are delimited by
48 whitespace. Whitespace can be included in a word by enclosing the word in
49 double-quotes ("). A backslash (\e) quotes the succeeding character. A hash (#)
50 starts a comment, which continues until the end of the line. There is no
51 restriction on using the \fBfile\fR or \fBcall\fR options within an options
52 file.
53 .SS "Frequently Used Options"
54 .sp
55 .ne 2
56 .na
57 \fB\fB<tty_name>\fR \fR
58 .ad
59 .RS 23n
60 Communicate over the named device. The string \fB/dev/\fR is prepended if
61 necessary. If no device name is given, or if the name of the terminal connected
62 to the standard input is given, \fBpppd\fR uses that terminal and does not fork
63 to put itself in the background. A value for this option from a privileged
64 source cannot be overridden by a non-privileged user.
65 .RE
67 .sp
68 .ne 2
69 .na
70 \fB\fB<speed>\fR \fR
71 .ad
72 .RS 23n
73 Set the baud rate to <\fBspeed\fR> (a decimal number). The default is to leave
74 the baud rate unchanged. This option is normally needed for dial-out only.
75 .RE
77 .sp
78 .ne 2
79 .na
80 \fB\fBasyncmap\fR \fB\fI<map>\fR\fR \fR
81 .ad
82 .RS 23n
83 Set the \fBasync\fR character map to \fI<map>\fR\&. The map describes which
84 control characters cannot be successfully received over the serial line.
85 \fBpppd\fR asks the peer to send these characters as a 2-byte escape sequence.
86 The argument is a 32 bit hex number, with each bit representing a character to
87 escape. Bit 0 (00000001) represents the character 0x00; bit 31 (80000000)
88 represents the character 0x1f or ^_. If multiple \fBasyncmap\fR options are
89 given, the values are \fBORed\fR together. If no \fBasyncmap\fR option is
90 given, \fBpppd\fR attempts to negotiate a value of 0. If the peer agrees, this
91 disables escaping of the standard control characters. Use the
92 \fBdefault-asyncmap\fR option to disable negotiation and escape all control
93 characters.
94 .RE
96 .sp
97 .ne 2
98 .na
99 \fB\fBauth\fR \fR
101 .RS 23n
102 Require the peer to authenticate itself before allowing network packets to be
103 sent or received. This option is the default if the system has a default route.
104 If the \fBauth\fR or the \fBnoauth\fR option is not specified, \fBpppd\fR
105 allows the peer to use only those IP addresses to which the system does not
106 already have a route.
110 .ne 2
112 \fB\fBcall\fR \fB\fIname\fR\fR \fR
114 .RS 23n
115 Read options from the file \fB/etc/ppp/peers/\fR\fIname\fR. This file may
116 contain privileged options, including \fBnoauth\fR, even if \fBpppd\fR is not
117 being run by root. The \fIname\fR string may not begin with a slash ("/") or
118 include consecutive periods \fB("..")\fR as a pathname component.
122 .ne 2
124 \fB\fBcallback\fR \fB\fInumber\fR\fR \fR
126 .RS 23n
127 Request a callback to the given telephone number using Microsoft CBCP.
131 .ne 2
133 \fB\fBconnect\fR \fB\fIscript\fR\fR \fR
135 .RS 23n
136 Use the executable or shell command specified by \fIscript\fR to set up the
137 serial line. This script would typically use the \fBchat\fR(1M) program to dial
138 the modem and start the remote \fBPPP\fR session. A value for this option
139 originating from a privileged source cannot be overridden by a non-privileged
140 user.
144 .ne 2
146 \fB\fBcrtscts\fR \fR
148 .RS 23n
149 Use hardware flow control, that is, RTS/CTS, to control the flow of data on the
150 serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or
151 \fBnocdtrcts\fR option is not provided, the hardware flow control setting for
152 the serial port is left unchanged. Some serial ports lack a true RTS output and
153 use this mode to implement unidirectional flow control. The serial port
154 suspends transmission when requested by the modem by means of CTS but cannot
155 request the modem to stop sending to the computer. This mode allows the use of
156 DTR as a modem control line.
160 .ne 2
162 \fB\fBdefaultroute\fR \fR
164 .RS 23n
165 Add a default route to the system routing tables when IPCP negotiation
166 successfully completes, using the peer as the gateway. This entry is removed
167 when the \fBPPP\fR connection is broken. This option is privileged if the
168 \fBnodefaultroute\fR option is specified.
172 .ne 2
174 \fB\fBdisconnect\fR \fB \fIscript\fR\fR \fR
176 .RS 23n
177 Run the executable or shell command specified by \fIscript\fR after \fBpppd\fR
178 terminates the link. Typically, this script is used to command the modem to
179 hang up if hardware modem control signals are not available. \fBdisconnect\fR
180 is not run if the modem has already hung up. A value for this option
181 originating from a privileged source cannot be overridden by a non-privileged
182 user.
186 .ne 2
188 \fB\fBescape\fR \fB\fIxx,yy,...\fR\fR \fR
190 .RS 23n
191 Specifies that certain characters be escaped on transmission regardless of
192 whether the peer requests them to be escaped with its \fBasync\fR control
193 character map. The characters to be escaped are specified as a list of hex
194 numbers separated by commas. Note that almost any character can be specified
195 for the \fBescape\fR option, unlike the \fBasyncmap\fR option which allows only
196 control characters to be specified. Characters that cannot be escaped are those
197 containing hex values 0x20 through 0x3f and 0x5e.
201 .ne 2
203 \fB\fBfile\fR \fB\fIname\fR\fR \fR
205 .RS 23n
206 Read options from file \fIname\fR. If this option is used on the command line
207 or in \fB$HOME/.ppprc\fR, the file must be readable by the user invoking
208 \fBpppd\fR. See  for a list of files that \fBpppd\fR always reads, regardless
209 of the use of this option.
213 .ne 2
215 \fB\fBinit\fR \fB \fIscript\fR \fR \fR
217 .RS 23n
218 Run the executable or shell command specified by \fIscript\fR to initialize the
219 serial line. This script would typically use the \fBchat\fR(1M) program to
220 configure the modem to enable auto-answer. A value for this option from a
221 privileged source cannot be overridden by a non-privileged user.
225 .ne 2
227 \fB\fBlock\fR \fR
229 .RS 23n
230 Directs \fBpppd\fR to create a UUCP-style lock file for the serial device to
231 ensure exclusive access to the device.
235 .ne 2
237 \fB\fBmru\fR \fB\fIn\fR\fR \fR
239 .RS 23n
240 Set the Maximum Receive Unit (MRU) value to \fIn\fR. \fBpppd\fR asks the peer
241 to send packets of no more than \fIn\fR bytes. Minimum MRU value is 128.
242 Default MRU value is 1500. A value of 296 is recommended for slow links (40
243 bytes for TCP/IP header + 256 bytes of data). For IPv6, MRU must be at least
244 1280.
248 .ne 2
250 \fB\fBmtu\fR \fB\fIn\fR\fR \fR
252 .RS 23n
253 Set the Maximum Transmit Unit (MTU) value to \fIn\fR. Unless the peer requests
254 a smaller value via MRU negotiation, \fBpppd\fR requests the kernel networking
255 code to send data packets of no more than \fIn\fR bytes through the PPP network
256 interface. For IPv6, MTU must be at least 1280.
260 .ne 2
262 \fB\fBpassive\fR \fR
264 .RS 23n
265 Enables the "passive" option in the LCP. With this option, \fBpppd\fR attempts
266 to initiate a connection; if no reply is received from the peer, \fBpppd\fR
267 waits passively for a valid LCP packet instead of exiting, as it would without
268 this option.
271 .SS "Options"
273 .ne 2
275 \fB\fB<local_IP_address>:<remote_IP_address>\fR \fR
277 .sp .6
278 .RS 4n
279 Set the local and/or remote interface IP addresses. Either one may be omitted,
280 but the colon is required. The IP addresses are specified with a host name or
281 in decimal dot notation, for example: \fB:10.1.2.3\fR. The default local
282 address is the first IP address of the system unless the \fBnoipdefault\fR
283 option is provided. The remote address is obtained from the peer if not
284 specified in any option. Thus, in simple cases, this option is not required. If
285 a local and/or remote IP address is specified with this option, \fBpppd\fR will
286 not accept a different value from the peer in the IPCP negotiation unless the
287 \fBipcp-accept-local\fR and/or \fBipcp-accept-remote\fR options are given,
288 respectively.
292 .ne 2
294 \fB\fBallow-fcs\fR \fB\fIfcs-type\fR\fR \fR
296 .sp .6
297 .RS 4n
298 Set allowable FCS type(s) for data sent to the peer. The \fIfcs-type\fR is a
299 comma-separated list of "crc16", "crc32", "null", or integers. By default, all
300 known types are allowed. If this option is specified and the peer requests a
301 type not listed, a LCP Configure-Nak is sent to request only the listed types.
305 .ne 2
307 \fB\fBallow-ip\fR \fB\fIaddress(es)\fR\fR \fR
309 .sp .6
310 .RS 4n
311 Allow peers to use the given IP address or subnet without authenticating
312 themselves. The parameter is parsed in the same manner as each element of the
313 list of allowed IP addresses is parsed in the secrets files. See the  section
314 more more details.
318 .ne 2
320 \fB\fBbsdcomp\fR \fB\fInr,nt\fR\fR \fR
322 .sp .6
323 .RS 4n
324 Request that the peer compress packets that it sends using the BSD-Compress
325 scheme, with a maximum code size of \fInr\fR bits, and agree to compress
326 packets sent to the peer with a maximum code size of \fInt\fR bits. If \fInt\fR
327 is not specified, it defaults to the value given for \fInr\fR. Values in the
328 range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger values provide
329 better compression but consume more kernel memory for compression dictionaries.
330 Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
331 the corresponding direction. Use \fBnobsdcomp\fR or \fBbsdcomp 0\fR to disable
332 BSD-Compress compression entirely. If this option is read from a privileged
333 source, a nonprivileged user may not specify a code size larger than the value
334 from the privileged source.
338 .ne 2
340 \fB\fBcdtrcts\fR \fR
342 .sp .6
343 .RS 4n
344 Use a non-standard hardware flow control such as DTR/CTS to control the flow of
345 data on the serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR
346 or \fBnocdtrcts\fR option is not specified, the hardware flow control setting
347 for the serial port is left unchanged. Some serial ports lack a true RTS
348 output. Such serial ports use this mode to implement true bi-directional flow
349 control. Note that this flow control mode does not permit using DTR as a modem
350 control line.
354 .ne 2
356 \fB\fBchap-interval\fR \fB\fIn\fR\fR\fR
358 .sp .6
359 .RS 4n
360 If this option is given, \fBpppd\fR will rechallenge the peer every \fIn\fR
361 seconds.
365 .ne 2
367 \fB\fBchap-max-challenge\fR \fB\fIn\fR\fR \fR
369 .sp .6
370 .RS 4n
371 Set the maximum number of CHAP challenge transmissions to \fIn\fR (default 10).
375 .ne 2
377 \fB\fBchap-restart\fR \fB\fIn\fR\fR \fR
379 .sp .6
380 .RS 4n
381 Set the CHAP restart interval (retransmission timeout for challenges) to
382 \fIn\fR seconds. The default is 3.
386 .ne 2
388 \fB\fBconnect-delay\fR \fB\fIn\fR\fR \fR
390 .sp .6
391 .RS 4n
392 Wait for up to \fIn\fR milliseconds after the connect script finishes for a
393 valid PPP packet from the peer. When the wait period elapses or when a valid
394 PPP packet is received from the peer, \fBpppd\fR begins negotiation by sending
395 its first LCP packet. The default value is 1000 (1 second). A wait period
396 applies only if the \fBconnect\fR or \fBpty\fR option is used.
400 .ne 2
402 \fB\fBdatarate\fR \fB\fIn\fR\fR \fR
404 .sp .6
405 .RS 4n
406 Set maximum data rate to \fIn\fR (in bytes per second) when using the
407 \fBpty\fR, \fBnotty\fR, \fBrecord\fR, or \fBsocket\fR options.
411 .ne 2
413 \fB\fBdebug\fR \fR
415 .sp .6
416 .RS 4n
417 Enables connection debugging facilities. If this option is given, \fBpppd\fR
418 logs the contents of all control packets sent or received in a readable form.
419 The packets are logged through syslog with facility \fBdaemon\fR and level
420 \fBdebug\fR. This information can be directed to a file by configuring
421 \fB/etc/syslog.conf\fR appropriately.
425 .ne 2
427 \fB\fBdefault-asyncmap\fR \fR
429 .sp .6
430 .RS 4n
431 Disable \fBasyncmap\fR negotiation, forcing all control characters to be
432 escaped for both the transmit and the receive direction.
436 .ne 2
438 \fB\fBdefault-fcs\fR \fR
440 .sp .6
441 .RS 4n
442 Disable FCS Alternatives negotiation entirely. By default, no FCS Alternatives
443 option is sent to the peer, but the option is accepted. If this option is
444 specified by the peer, then LCP Configure-Reject is sent.
448 .ne 2
450 \fB\fBdefault-mru\fR \fR
452 .sp .6
453 .RS 4n
454 Disable MRU [Maximum Receive Unit] negotiation. With this option, \fBpppd\fR
455 uses the default MRU value of 1500 bytes for the transmit and receive
456 directions.
460 .ne 2
462 \fB\fBdeflate\fR \fB\fInr,nt,e\fR\fR \fR
464 .sp .6
465 .RS 4n
466 Request that the peer compress packets that it sends, using the \fBdeflate\fR
467 scheme, with a maximum window size of \fI2**nr\fR bytes, and agree to compress
468 packets sent to the peer with a maximum window size of \fI2**nt\fR bytes and
469 effort level of \fIe\fR (1 to 9). If \fInt\fR is not specified, it defaults to
470 the value given for \fInr\fR. If \fIe\fR is not specified, it defaults to 6.
471 Values in the range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger
472 values provide better compression but consume more kernel memory for
473 compression dictionaries. (Value 8 is not permitted due to a zlib bug.)
474 Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
475 the corresponding direction. Use \fBnodeflate\fR or \fBdeflate 0\fR to disable
476 \fBdeflate\fR compression entirely. (Note: \fBpppd\fR requests deflate
477 compression in preference to BSD-Compress if the peer can do either.) If this
478 option is read from a privileged source, a nonprivileged user may not specify a
479 code size larger than the value from the privileged source.
483 .ne 2
485 \fB\fBdemand\fR \fR
487 .sp .6
488 .RS 4n
489 Initiate the link only on demand, that is, when data traffic is present. With
490 this option, the remote IP address must be specified by the user on the command
491 line or in an options file. \fBpppd\fR initially configures and enables the
492 interface for IP traffic without connecting to the peer. When traffic is
493 available, \fBpppd\fR connects to the peer and performs negotiation,
494 authentication and other actions. When completed, \fBpppd\fR passes data
495 packets across the link. The \fBdemand\fR option implies the \fBpersist\fR
496 option. If this behavior is not desired, use the \fBnopersist\fR option after
497 the \fBdemand\fR option. The \fBidle\fR and \fBholdoff\fR options can be used
498 in conjunction with the \fBdemand\fR option.
502 .ne 2
504 \fB\fBdomain\fR \fB\fId\fR\fR \fR
506 .sp .6
507 .RS 4n
508 Append the domain name \fId\fR to the local host name for authentication
509 purposes. For example, if \fBgethostname()\fR returns the name \fBporsche\fR,
510 but the fully qualified domain name is \fBporsche.Quotron.COM\fR, you could
511 specify \fBdomain Quotron.COM\fR. With this configuration, \fBpppd\fR uses the
512 name \fBporsche.Quotron.COM\fR for accessing secrets in the secrets file and as
513 the default name when authenticating to the peer. This option is privileged.
517 .ne 2
519 \fB\fBendpoint\fR \fB\fIendpoint-value\fR\fR \fR
521 .sp .6
522 .RS 4n
523 Set the endpoint discriminator (normally used for RFC 1990 Multilink PPP
524 operation). The \fIendpoint-value\fR consists of a class identifier and a
525 class-dependent value. The class identifier is one of "null," "local," "IP,"
526 "MAC," "magic," "phone," or a decimal integer. If present, the class-dependent
527 value is separated from the identifier by a colon (":") or period (".") . This
528 value may be a standard dotted-decimal IP address for class "IP," an optionally
529 colon-or-dot separated hex Ethernet address for class "MAC" (must have 6
530 numbers), or an arbitrary string of bytes specified in hex with optional colon
531 or dot separators between bytes. Although this option is available, this
532 implementation does not support multilink.
536 .ne 2
538 \fB\fBfcs\fR \fB\fIfcs-type\fR\fR \fR
540 .sp .6
541 .RS 4n
542 Set FCS type(s) desired for data sent by the peer. The \fIfcs-type\fR is a
543 comma-separated list of \fBcrc16\fR, \fBcrc32\fR, \fBnull\fR, or integers. By
544 default, an FCS Alternatives option is not specified, and the medium-dependent
545 FCS type is used. If this option is specified and the peer sends an LCP
546 Configure-Nak, only the listed types are used. If none are in common, the FCS
547 Alternatives option is omitted from the next LCP Configure-Request to drop back
548 to the default.
552 .ne 2
554 \fB\fBhide-password\fR \fR
556 .sp .6
557 .RS 4n
558 When logging the contents of PAP packets, this option causes \fBpppd\fR to
559 exclude the password string from the log. This is the default.
563 .ne 2
565 \fB\fBholdoff\fR \fB\fIn\fR\fR \fR
567 .sp .6
568 .RS 4n
569 Specifies how many seconds to wait before re-initiating the link after it
570 terminates. This option is effective only if the \fBpersist\fR or \fBdemand\fR
571 option is used. The holdoff period is not applied if the link is terminated
572 because it was idle.
576 .ne 2
578 \fB\fBident\fR \fB\fIstring\fR\fR \fR
580 .sp .6
581 .RS 4n
582 Set the LCP Identification string. The default value is a version string
583 similar to that displayed by the \fB--version\fR option.
587 .ne 2
589 \fB\fBidle\fR \fB\fIn\fR\fR \fR
591 .sp .6
592 .RS 4n
593 Specifies that \fBpppd\fR must disconnect if the link is idle for \fIn\fR
594 seconds. The link is idle when no data packets (i.e. IP packets) are being sent
595 or received. Do not use this option with the \fBpersist\fR option but without
596 the \fBdemand\fR option.
600 .ne 2
602 \fB\fBipcp-accept-local\fR \fR
604 .sp .6
605 .RS 4n
606 With this option, \fBpppd\fR accepts the peer's idea of the local IP address,
607 even if the local IP address is specified in an option.
611 .ne 2
613 \fB\fBipcp-accept-remote\fR \fR
615 .sp .6
616 .RS 4n
617 With this option, \fBpppd\fR accepts the peer's idea of its remote IP address,
618 even if the remote IP address is specified in an option.
622 .ne 2
624 \fB\fBipcp-max-configure\fR \fB\fIn\fR\fR \fR
626 .sp .6
627 .RS 4n
628 Set the maximum number of IPCP Configure-Request transmissions to \fIn\fR
629 (default 10).
633 .ne 2
635 \fB\fBipcp-max-failure\fR \fB\fIn\fR\fR \fR
637 .sp .6
638 .RS 4n
639 Set the maximum number of IPCP Configure-NAKs sent before sending
640 Configure-Rejects instead to \fIn\fR (default 10).
644 .ne 2
646 \fB\fBipcp-max-terminate\fR \fB\fIn\fR\fR \fR
648 .sp .6
649 .RS 4n
650 Set the maximum number of IPCP terminate-request transmissions to \fIn\fR
651 (default 3).
655 .ne 2
657 \fB\fBipcp-restart\fR \fB\fIn\fR\fR \fR
659 .sp .6
660 .RS 4n
661 Set the IPCP restart interval (retransmission timeout) to \fIn\fR seconds
662 (default 3).
666 .ne 2
668 \fB\fBipparam\fR \fB\fIstring\fR\fR \fR
670 .sp .6
671 .RS 4n
672 Provides an extra parameter to the ip-up and ip-down scripts. When this option
673 is given, the \fIstring\fR supplied is given as the sixth parameter to those
674 scripts. See the  section.
678 .ne 2
680 \fB\fBipv6\fR
681 \fB\fI<local_interface_identifier>\fR,\fI<remote_interface_identifier>\fR\fR
684 .sp .6
685 .RS 4n
686 Set the local and/or remote 64-bit interface identifier. Either one may be
687 omitted. The identifier must be specified in standard ASCII notation of IPv6
688 addresses (for example: \fB::dead:beef\fR). If the \fBipv6cp-use-ipaddr\fR
689 option is given, the local and remote identifiers are derived from the
690 respective IPv4 addresses (see above). The \fBipv6cp-use-persistent\fR option
691 can be used instead of the \fBipv6 <local>,<remote>\fR option.
695 .ne 2
697 \fB\fBipv6cp-accept-local\fR \fR
699 .sp .6
700 .RS 4n
701 Accept peer's interface identifier for the local link identifier.
705 .ne 2
707 \fB\fBipv6cp-max-configure\fR \fB\fIn\fR\fR \fR
709 .sp .6
710 .RS 4n
711 Set the maximum number of IPv6CP Configure-Request transmissions to \fIn\fR
712 (default 10).
716 .ne 2
718 \fB\fBipv6cp-max-failure\fR \fB\fIn\fR\fR \fR
720 .sp .6
721 .RS 4n
722 Set the maximum number of IPv6CP Configure-NAKs sent before sending
723 Configure-Rejects instead to \fIn\fR (default 10).
727 .ne 2
729 \fB\fBipv6cp-max-terminate\fR \fB\fIn\fR\fR \fR
731 .sp .6
732 .RS 4n
733 Set the maximum number of IPv6CP terminate-request transmissions to \fIn\fR
734 (default 3).
738 .ne 2
740 \fB\fBipv6cp-restart\fR \fB\fIn\fR\fR \fR
742 .sp .6
743 .RS 4n
744 Set the IPv6CP restart interval (retransmission timeout) to \fIn\fR seconds
745 (default 3).
749 .ne 2
751 \fB\fBipv6cp-use-ipaddr\fR \fR
753 .sp .6
754 .RS 4n
755 If either the local or remote IPv6 address is unspecified, use the
756 corresponding configured IPv4 address as a default interface identifier. (This
757 option uses the configured addresses, not the negotiated addresses. Do not use
758 it with \fBipcp-accept-local\fR if the local IPv6 identifier is unspecified or
759 with \fBipcp-accept-remote\fR if the remote IPv6 identifier is unspecified.)
763 .ne 2
765 \fB\fBipv6cp-use-persistent\fR \fR
767 .sp .6
768 .RS 4n
769 Use uniquely-available persistent value for link local address.
773 .ne 2
775 \fB\fBkdebug\fR \fB\fIn\fR\fR \fR
777 .sp .6
778 .RS 4n
779 Enable debugging code in the kernel-level PPP driver. Argument \fIn\fR is the
780 sum of the following values: \fB1\fR to enable general debug messages, \fB2\fR
781 to request that contents of received packets be printed, and \fB4\fR to request
782 contents of transmitted packets be printed. Messages printed by the kernel are
783 logged by \fBsyslogd\fR(1M) to a file directed in the \fB/etc/syslog.conf\fR
784 configuration file. Do not use the \fBkdebug\fR option to debug failed links.
785 Use the \fBdebug\fR option instead.
789 .ne 2
791 \fB\fBlcp-echo-failure\fR \fB\fIn\fR\fR \fR
793 .sp .6
794 .RS 4n
795 If this option is given, \fBpppd\fR presumes the peer to be dead if \fIn\fR LCP
796 Echo-Requests are sent without receiving a valid LCP Echo-Reply. If this
797 happens, \fBpppd\fR terminates the connection. This option requires a non-zero
798 value for the \fBlcp-echo-interval\fR parameter. This option enables \fBpppd\fR
799 to terminate after the physical connection is broken (for example, if the modem
800 has hung up) in situations where no hardware modem control lines are available.
804 .ne 2
806 \fB\fBlcp-echo-interval\fR \fB\fIn\fR\fR \fR
808 .sp .6
809 .RS 4n
810 If this option is given, \fBpppd\fR sends an LCP Echo-Request frame to the peer
811 every \fIn\fR seconds. Normally the peer responds to the Echo-Request by
812 sending an Echo-Reply. This option can be used with the \fBlcp-echo-failure\fR
813 option to detect that the peer is no longer connected.
817 .ne 2
819 \fB\fBlcp-max-configure\fR \fB\fIn\fR\fR \fR
821 .sp .6
822 .RS 4n
823 Set the maximum number of LCP Configure-Request transmissions to \fIn\fR
824 (default 10).
828 .ne 2
830 \fB\fBlcp-max-failure\fR \fB\fIn\fR\fR \fR
832 .sp .6
833 .RS 4n
834 Set the maximum number of LCP Configure-NAKs sent before starting to send
835 Configure-Rejects instead to \fIn\fR (default 10).
839 .ne 2
841 \fB\fBlcp-max-terminate\fR \fB\fIn\fR\fR \fR
843 .sp .6
844 .RS 4n
845 Set the maximum number of LCP Terminate-Request transmissions to \fIn\fR
846 (default 3).
850 .ne 2
852 \fB\fBlcp-restart\fR \fB\fIn\fR\fR \fR
854 .sp .6
855 .RS 4n
856 Set the LCP restart interval (retransmission timeout) to \fIn\fR seconds
857 (default 3).
861 .ne 2
863 \fB\fBlinkname\fR \fB\fIname\fR\fR \fR
865 .sp .6
866 .RS 4n
867 Sets the logical name of the link to \fIname\fR. \fBpppd\fR creates a file
868 named \fBppp-\fR\fIname\fR\fB\&.pid\fR in \fB/var/run\fR containing its process
869 ID. This is useful in determining which instance of \fBpppd\fR is responsible
870 for the link to a given peer system. This is a privileged option.
874 .ne 2
876 \fB\fBlocal\fR \fR
878 .sp .6
879 .RS 4n
880 Do not use modem control lines. With this option, \fBpppd\fR ignores the state
881 of the CD (Carrier Detect) signal from the modem and does not change the state
882 of the DTR (Data Terminal Ready) signal.
886 .ne 2
888 \fB\fBlogfd\fR \fB\fIn\fR\fR \fR
890 .sp .6
891 .RS 4n
892 Send log messages to file descriptor \fIn\fR. \fBpppd\fR sends log messages to
893 (at most) one file or file descriptor (as well as sending the log messages to
894 syslog), so this option and the \fBlogfile\fR option are mutually exclusive. By
895 default \fBpppd\fR sends log messages to \fBstdout\fR (file descriptor 1)
896 unless the serial port is open on stdout.
900 .ne 2
902 \fB\fBlogfile\fR \fB\fIfilename\fR\fR \fR
904 .sp .6
905 .RS 4n
906 Append log messages to the file \fIfilename\fR (and send the log messages to
907 syslog). The file is opened in append mode with the privileges of the user who
908 invoked \fBpppd\fR.
912 .ne 2
914 \fB\fBlogin\fR \fR
916 .sp .6
917 .RS 4n
918 Use the system password database for authenticating the peer using PAP, and
919 record the user in the system \fBwtmp\fR file. Note that the peer must have an
920 entry in the \fB/etc/ppp/pap-secrets\fR file and the system password database
921 to be allowed access.
925 .ne 2
927 \fB\fBmaxconnect\fR \fB\fIn\fR\fR \fR
929 .sp .6
930 .RS 4n
931 Terminate the connection after it has been available for network traffic for
932 \fIn\fR seconds (that is, \fIn\fR seconds after the first network control
933 protocol starts). An LCP Time-Remaining message is sent when the first NCP
934 starts, and again when 5, 2, and 0.5 minutes are remaining.
938 .ne 2
940 \fB\fBmaxfail\fR \fB\fIn\fR\fR \fR
942 .sp .6
943 .RS 4n
944 Terminate after \fIn\fR consecutive failed connection attempts. A value of 0
945 means no limit. The default value is 10.
949 .ne 2
951 \fB\fBmodem\fR \fR
953 .sp .6
954 .RS 4n
955 Use the modem control lines. This option is the default. With this option,
956 \fBpppd\fR waits for the CD (Carrier Detect) signal from the modem to be
957 asserted when opening the serial device (unless a connect script is specified),
958 and drops the DTR (Data Terminal Ready) signal briefly when the connection is
959 terminated and before executing the connect script.
963 .ne 2
965 \fB\fBms-dns\fR \fB\fI<addr>\fR\fR \fR
967 .sp .6
968 .RS 4n
969 If \fBpppd\fR is acting as a server for Microsoft Windows clients, this option
970 allows \fBpppd\fR to supply one or two DNS (Domain Name Server) addresses to
971 the clients. The first instance of this option specifies the primary DNS
972 address; the second instance (if given) specifies the secondary DNS address. If
973 the first instance specifies a name that resolves to multiple IP addresses,
974 then the first two addresses are used. (This option is present in some older
975 versions of \fBpppd\fR under the name \fBdns-addr\fR.)
979 .ne 2
981 \fB\fBms-lanman\fR \fR
983 .sp .6
984 .RS 4n
985 If \fBpppd\fR connects as a client to a Microsoft server and uses MS-CHAPv1 for
986 authentication, this option selects the LAN Manager password style instead of
987 Microsoft NT.
991 .ne 2
993 \fB\fBms-wins\fR \fB\fI<addr>\fR\fR \fR
995 .sp .6
996 .RS 4n
997 If \fBpppd\fR acts as a server for Microsoft Windows or Samba clients, this
998 option allows \fBpppd\fR to supply one or two WINS (Windows Internet Name
999 Services) server addresses to the clients. The first instance of this option
1000 specifies the primary WINS address; the second instance (if given) specifies
1001 the secondary WINS address. As with \fBms-dns\fR, if the name specified
1002 resolves to multiple IP addresses, then the first two will be taken as primary
1003 and secondary.
1007 .ne 2
1009 \fB\fBname\fR \fB\fIname\fR\fR \fR
1011 .sp .6
1012 .RS 4n
1013 Set the name of the local system for authentication purposes to \fIname\fR.
1014 This is a privileged option. With this option, \fBpppd\fR uses lines in the
1015 secrets files that have \fIname\fR as the second field to look for a secret to
1016 use in authenticating the peer. In addition, unless overridden with the
1017 \fBuser\fR option, \fIname\fR is used as the name to send to the peer when
1018 authenticating the local system. (Note that \fBpppd\fR does not append the
1019 domain name to \fIname\fR.)
1023 .ne 2
1025 \fB\fBno-accm-test\fR \fR
1027 .sp .6
1028 .RS 4n
1029 Disable use of \fBasyncmap\fR (ACCM) checking using LCP Echo-Request messages.
1030 If the \fBlcp-echo-failure\fR is used on an asynchronous line, \fBpppd\fR
1031 includes all control characters in the first \fIn\fR LCP Echo-Request messages.
1032 If the \fBasyncmap\fR is set incorrectly, the link drops rather than continue
1033 operation with random failures. This option disables that feature.
1037 .ne 2
1039 \fB\fBnoaccomp\fR \fR
1041 .sp .6
1042 .RS 4n
1043 Disable HDLC Address/Control compression in both directions (send and receive).
1047 .ne 2
1049 \fB\fBnoauth\fR \fR
1051 .sp .6
1052 .RS 4n
1053 Do not require the peer to authenticate itself. This option is privileged.
1057 .ne 2
1059 \fB\fBnobsdcomp\fR \fR
1061 .sp .6
1062 .RS 4n
1063 Disables BSD-Compress compression; \fBpppd\fR will not request or agree to
1064 compress packets using the BSD-Compress scheme. This option is not necessary if
1065 \fBnoccp\fR is specified.
1069 .ne 2
1071 \fB\fBnoccp\fR \fR
1073 .sp .6
1074 .RS 4n
1075 Disable CCP (Compression Control Protocol) negotiation. This option should only
1076 be required if the peer has bugs or becomes confused by requests from
1077 \fBpppd\fR for CCP negotiation. If CCP is disabled, then BSD and deflate
1078 compression do not need to be separately disabled.
1082 .ne 2
1084 \fB\fBnocrtscts\fR \fR
1086 .sp .6
1087 .RS 4n
1088 Disable hardware flow control (i.e. RTS/CTS) on the serial port. If the
1089 \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or \fBnocdtrcts\fR options are
1090 not given, the hardware flow control setting for the serial port is left
1091 unchanged.
1095 .ne 2
1097 \fB\fBnocdtrcts\fR \fR
1099 .sp .6
1100 .RS 4n
1101 This option is a synonym for \fBnocrtscts\fR. Either option will disable both
1102 forms of hardware flow control.
1106 .ne 2
1108 \fB\fBnodefaultroute\fR \fR
1110 .sp .6
1111 .RS 4n
1112 Disable the \fBdefaultroute\fR option. You can prevent non-root users from
1113 creating default routes with \fBpppd\fR by placing this option in the
1114 \fB/etc/ppp/options\fR file.
1118 .ne 2
1120 \fB\fBnodeflate\fR \fR
1122 .sp .6
1123 .RS 4n
1124 Disables deflate compression; \fBpppd\fR will not request or agree to compress
1125 packets using the deflate scheme. This option is not necessary if \fBnoccp\fR
1126 is specified.
1130 .ne 2
1132 \fB\fBnodeflatedraft\fR \fR
1134 .sp .6
1135 .RS 4n
1136 Do not use Internet Draft (incorrectly assigned) algorithm number for deflate
1137 compression. This option is not necessary if \fBnoccp\fR is specified.
1141 .ne 2
1143 \fB\fBnodetach\fR \fR
1145 .sp .6
1146 .RS 4n
1147 Do not detach from the controlling terminal. Without this option, \fBpppd\fR
1148 forks to become a background process if a serial device other than the terminal
1149 on the standard input is specified.
1153 .ne 2
1155 \fB\fBnoendpoint\fR \fR
1157 .sp .6
1158 .RS 4n
1159 Do not send or accept the Multilink Endpoint Discriminator option.
1163 .ne 2
1165 \fB\fBnoident\fR \fR
1167 .sp .6
1168 .RS 4n
1169 Disable use of LCP Identification. LCP Identification messages will not be sent
1170 to the peer, but received messages will be logged. (Specify this option twice
1171 to completely disable LCP Identification. In this case, \fBpppd\fR sends LCP
1172 Code-Reject in response to received LCP Identification messages.)
1176 .ne 2
1178 \fB\fBnoip\fR \fR
1180 .sp .6
1181 .RS 4n
1182 Disable IPCP negotiation and IP communication. Use this option only if the peer
1183 has bugs or becomes confused by requests from \fBpppd\fR for IPCP negotiation.
1187 .ne 2
1189 \fB\fBnoipv6\fR \fR
1191 .sp .6
1192 .RS 4n
1193 Disable IPv6CP negotiation and IPv6 communication. IPv6 is not enabled by
1194 default.
1198 .ne 2
1200 \fB\fBnoipdefault\fR \fR
1202 .sp .6
1203 .RS 4n
1204 Disables the default behavior when no local IP address is specified, which is
1205 to determine (if possible) the local IP address from the hostname. With this
1206 option, the peer must supply the local IP address during IPCP negotiation
1207 (unless it specified explicitly on the command line or in an options file).
1211 .ne 2
1213 \fB\fBnolog\fR \fR
1215 .sp .6
1216 .RS 4n
1217 Do not send log messages to a file or file descriptor. This option cancels the
1218 \fBlogfd\fR and \fBlogfile\fR options. \fBnologfd\fR acts as an alias for this
1219 option.
1223 .ne 2
1225 \fB\fBnomagic\fR \fR
1227 .sp .6
1228 .RS 4n
1229 Disable magic number negotiation. With this option, \fBpppd\fR cannot detect a
1230 looped-back line. Use this option only if the peer has bugs. Do not use this
1231 option to work around the "Serial line is looped back" error message.
1235 .ne 2
1237 \fB\fBnopam\fR \fR
1239 .sp .6
1240 .RS 4n
1241 This privileged option disables use of pluggable authentication modules. If
1242 this option is specified, \fBpppd\fR reverts to standard authentication
1243 mechanisms. The default is not to use PAM.
1247 .ne 2
1249 \fB\fBnopcomp\fR \fR
1251 .sp .6
1252 .RS 4n
1253 Disable protocol field compression negotiation in the receive and the transmit
1254 direction.
1258 .ne 2
1260 \fB\fBnopersist\fR \fR
1262 .sp .6
1263 .RS 4n
1264 Exit once a connection has been made and terminated. This is the default unless
1265 the \fBpersist\fR or \fBdemand\fR option is specified.
1269 .ne 2
1271 \fB\fBnoplink\fR \fR
1273 .sp .6
1274 .RS 4n
1275 Cause \fBpppd\fR to use I_LINK instead of I_PLINK. This is the default. When
1276 I_LINK is used, the system cleans up terminated interfaces (even when SIGKILL
1277 is used) but does not allow \fBifconfig\fR(1M) to unplumb PPP streams or insert
1278 or remove modules dynamically. Use the \fBplink\fR option if \fBifconfig\fR(1M)
1279 modinsert, modremove or unplumb support is needed.
1283 .ne 2
1285 \fB\fBnopredictor1\fR \fR
1287 .sp .6
1288 .RS 4n
1289 Do not accept or agree to Predictor-1 compression. (This option is accepted for
1290 compatibility. The implementation does not support Predictor-1 compression.)
1294 .ne 2
1296 \fB\fBnoproxyarp\fR \fR
1298 .sp .6
1299 .RS 4n
1300 Disable the \fBproxyarp\fR option. If you want to prevent users from creating
1301 proxy ARP entries with \fBpppd\fR, place this option in the
1302 \fB/etc/ppp/options\fR file.
1306 .ne 2
1308 \fB\fBnotty\fR \fR
1310 .sp .6
1311 .RS 4n
1312 Normally, \fBpppd\fR requires a terminal device. With this option, \fBpppd\fR
1313 allocates itself a pseudo-tty master/slave pair and uses the slave as its
1314 terminal device. \fBpppd\fR creates a child process to act as a character shunt
1315 to transfer characters between the pseudo-tty master and its standard input and
1316 output. Thus, \fBpppd\fR transmits characters on its standard output and
1317 receives characters on its standard input even if they are not terminal
1318 devices. This option increases the latency and CPU overhead of transferring
1319 data over the ppp interface as all of the characters sent and received must
1320 flow through the character shunt process. An explicit device name may not be
1321 given if this option is used.
1325 .ne 2
1327 \fB\fBnovj\fR \fR
1329 .sp .6
1330 .RS 4n
1331 Disable Van Jacobson style TCP/IP header compression in both the transmit and
1332 the receive direction.
1336 .ne 2
1338 \fB\fBnovjccomp\fR \fR
1340 .sp .6
1341 .RS 4n
1342 Disable the connection-ID compression option in Van Jacobson style TCP/IP
1343 header compression. With this option, \fBpppd\fR does not omit the
1344 connection-ID byte from Van Jacobson compressed TCP/IP headers, nor does it ask
1345 the peer to do so. This option is unnecessary if \fBnovj\fR is specified.
1349 .ne 2
1351 \fB\fBpam\fR \fR
1353 .sp .6
1354 .RS 4n
1355 This privileged option enables use of PAM. If this is specified, \fBpppd\fR
1356 uses the \fBpam\fR(3PAM) framework for user authentication with a service name
1357 of "ppp" if the \fBlogin\fR option and PAP authentication are used. The default
1358 is not to use PAM.
1362 .ne 2
1364 \fB\fBpapcrypt\fR \fR
1366 .sp .6
1367 .RS 4n
1368 Indicates that \fBpppd\fR should not accept a password which, before
1369 encryption, is identical to the secret from the \fB/etc/ppp/pap-secrets\fR
1370 file. Use this option if the secrets in the \fBpap-secrets\fR file are in
1371 \fBcrypt\fR(3C) format.
1375 .ne 2
1377 \fB\fBpap-max-authreq\fR \fB\fIn\fR\fR \fR
1379 .sp .6
1380 .RS 4n
1381 Set the maximum number of PAP authenticate-request transmissions to \fIn\fR
1382 (default 10).
1386 .ne 2
1388 \fB\fBpap-restart\fR \fB\fIn\fR\fR \fR
1390 .sp .6
1391 .RS 4n
1392 Set the PAP restart interval (retransmission timeout) to \fIn\fR seconds
1393 (default 3).
1397 .ne 2
1399 \fB\fBpap-timeout\fR \fB\fIn\fR\fR \fR
1401 .sp .6
1402 .RS 4n
1403 Set the maximum time that \fBpppd\fR waits for the peer to authenticate itself
1404 with PAP to \fIn\fR seconds (0= no limit). The default is 30 seconds.
1408 .ne 2
1410 \fB\fBpassword\fR \fB\fIstring\fR\fR \fR
1412 .sp .6
1413 .RS 4n
1414 Password string for authentication to the peer.
1418 .ne 2
1420 \fB\fBpersist\fR \fR
1422 .sp .6
1423 .RS 4n
1424 Do not exit after a connection is terminated; instead try to reopen the
1425 connection.
1429 .ne 2
1431 \fB\fBplink\fR \fR
1433 .sp .6
1434 .RS 4n
1435 Cause \fBpppd\fR to use I_PLINK instead of I_LINK. The default is to use
1436 I_LINK, which cleans up terminated interface (even if SIGKILL is used), but
1437 does not allow \fBifconfig\fR(1M) to unplumb PPP streams or insert or remove
1438 modules dynamically. Use this option if \fBifconfig\fR(1M)
1439 modinsert/modremove/unplumb support is needed. See also the \fBplumbed\fR
1440 option.
1444 .ne 2
1446 \fB\fBplugin\fR \fB\fIfilename\fR\fR \fR
1448 .sp .6
1449 .RS 4n
1450 Load the shared library object file \fIfilename\fR as a plugin. This is a
1451 privileged option. Unless the filename specifies an explicit path,
1452 \fB/etc/ppp/plugins\fR and \fB/usr/lib/inet/ppp\fR will be searched for the
1453 object to load in that order.
1457 .ne 2
1459 \fB\fBplumbed\fR \fR
1461 .sp .6
1462 .RS 4n
1463 This option indicates that \fBpppd\fR should find a plumbed interface and use
1464 that for the session. If IPv4 addresses or IPv6 interface IDs or link MTU are
1465 otherwise unspecified, they are copied from the interface selected. This mode
1466 mimics some of the functionality of the older \fBaspppd\fR implementation and
1467 may be helpful when \fBpppd\fR is used with external applications that use
1468 \fBifconfig\fR(1M).
1472 .ne 2
1474 \fB\fBpppmux\fR \fB\fItimer\fR\fR \fR
1476 .sp .6
1477 .RS 4n
1478 Enable PPP Multiplexing option negotiation and set transmit multiplexing
1479 timeout to \fItimer\fR microseconds.
1483 .ne 2
1485 \fB\fBprivgroup\fR \fB\fIgroup-name\fR\fR \fR
1487 .sp .6
1488 .RS 4n
1489 Allows members of group \fIgroup-name\fR to use privileged options. This is a
1490 privileged option. Because there is no guarantee that members of
1491 \fIgroup-name\fR cannot use \fBpppd\fR to become root themselves, you should be
1492 careful using this option. Consider it equivalent to putting the members of
1493 \fIgroup-name\fR in the \fBroot\fR or \fBsys\fR group.
1497 .ne 2
1499 \fB\fBproxyarp\fR \fR
1501 .sp .6
1502 .RS 4n
1503 Add an entry to the system's Address Resolution Protocol (ARP) table with the
1504 IP address of the peer and the Ethernet address of this system. When you use
1505 this option, the peer appears to other systems to be on the local Ethernet. The
1506 remote address on the PPP link must be in the same subnet as assigned to an
1507 Ethernet interface.
1511 .ne 2
1513 \fB\fBpty\fR \fB \fIscript\fR\fR \fR
1515 .sp .6
1516 .RS 4n
1517 Specifies that the command \fIscript\fR, and not a specific terminal device is
1518 used for serial communication. \fBpppd\fR allocates itself a pseudo-tty
1519 master/slave pair and uses the slave as its terminal device. \fIscript\fR runs
1520 in a child process with the pseudo-tty master as its standard input and output.
1521 An explicit device name may not be given if this option is used. (Note: if the
1522 \fBrecord\fR option is used in conjunction with the \fBpty\fR option, the child
1523 process will have pipes on its standard input and output.)
1527 .ne 2
1529 \fB\fBreceive-all\fR \fR
1531 .sp .6
1532 .RS 4n
1533 With this option, \fBpppd\fR accepts all control characters from the peer,
1534 including those marked in the receive \fBasyncmap\fR. Without this option,
1535 \fBpppd\fR discards those characters as specified in \fIRFC 1662\fR. This
1536 option should be used only if the peer has bugs, as is often found with
1537 dial-back implementations.
1541 .ne 2
1543 \fB\fBrecord\fR \fB\fIfilename\fR\fR \fR
1545 .sp .6
1546 .RS 4n
1547 Directs \fBpppd\fR to record all characters sent and received to a file named
1548 \fIfilename\fR. \fIfilename\fR is opened in append mode, using the user's
1549 user-ID and permissions. Because this option uses a pseudo-tty and a process to
1550 transfer characters between the pseudo-tty and the real serial device, it
1551 increases the latency and CPU overhead of transferring data over the PPP
1552 interface. Characters are stored in a tagged format with timestamps that can be
1553 displayed in readable form using the \fBpppdump\fR(1M) program. This option is
1554 generally used when debugging the kernel portion of \fBpppd\fR (especially CCP
1555 compression algorithms) and not for debugging link configuration problems. See
1556 the \fBdebug\fR option.
1560 .ne 2
1562 \fB\fBremotename\fR \fB\fIname\fR\fR \fR
1564 .sp .6
1565 .RS 4n
1566 Set the assumed name of the remote system for authentication purposes to
1567 \fIname\fR. Microsoft WindowsNT does not provide a system name in its CHAP
1568 Challenge messages, and this option is often used to work around this problem.
1572 .ne 2
1574 \fB\fBrefuse-chap\fR \fR
1576 .sp .6
1577 .RS 4n
1578 With this option, \fBpppd\fR will not agree to authenticate itself to the peer
1579 using standard Challenge Handshake Authentication Protocol (CHAP). (MS-CHAP is
1580 not affected.)
1584 .ne 2
1586 \fB\fBrefuse-mschap\fR \fR
1588 .sp .6
1589 .RS 4n
1590 Do not agree to authenticate to peer with MS-CHAPv1. If this option is
1591 specified, requests for MS-CHAPv1 authentication from the peer are declined
1592 with LCP Configure-Nak. That option does not disable any other form of CHAP.
1596 .ne 2
1598 \fB\fBrefuse-mschapv2\fR \fR
1600 .sp .6
1601 .RS 4n
1602 Do not agree to authenticate to peer with MS-CHAPv2. If specified, this option
1603 requests that MS-CHAPv2 authentication from the peer be declined with LCP
1604 Configure-Nak. That option does not disable any other form of CHAP.
1608 .ne 2
1610 \fB\fBrefuse-pap\fR \fR
1612 .sp .6
1613 .RS 4n
1614 With this option, \fBpppd\fR will not agree to authenticate itself to the peer
1615 using Password Authentication Protocol (PAP).
1619 .ne 2
1621 \fB\fBrequire-chap\fR \fR
1623 .sp .6
1624 .RS 4n
1625 Require the peer to authenticate itself using standard CHAP authentication.
1626 MS-CHAP is not affected.
1630 .ne 2
1632 \fB\fBrequire-mschap\fR \fR
1634 .sp .6
1635 .RS 4n
1636 Require the peer to authenticate itself using MS-CHAPv1 authentication.
1640 .ne 2
1642 \fB\fBrequire-mschapv2\fR \fR
1644 .sp .6
1645 .RS 4n
1646 Require the peer to authenticate itself using MS-CHAPv2 authentication.
1650 .ne 2
1652 \fB\fBrequire-pap\fR \fR
1654 .sp .6
1655 .RS 4n
1656 Require the peer to authenticate itself using PAP authentication.
1660 .ne 2
1662 \fB\fBshow-password\fR \fR
1664 .sp .6
1665 .RS 4n
1666 When logging contents of PAP packets, this option causes \fBpppd\fR to show the
1667 password string in the log message.
1671 .ne 2
1673 \fB\fBsilent\fR \fR
1675 .sp .6
1676 .RS 4n
1677 With this option, \fBpppd\fR will not transmit LCP packets to initiate a
1678 connection until a valid LCP packet is received from the peer. This is like the
1679 "passive" option with older versions of \fBpppd\fR and is retained for
1680 compatibility, but the current \fBpassive\fR option is preferred.
1684 .ne 2
1686 \fB\fBsmall-accm-test\fR \fR
1688 .sp .6
1689 .RS 4n
1690 When checking the \fBasyncmap\fR (ACCM) setting, \fBpppd\fR uses all 256
1691 possible values by default. See \fBno-accm-test\fR. This option restricts the
1692 test so that only the 32 values affected by standard ACCM negotiation are
1693 tested. This option is useful on very slow links.
1697 .ne 2
1699 \fB\fBsocket\fR \fB\fIhost\fR:\fIport\fR\fR \fR
1701 .sp .6
1702 .RS 4n
1703 Connect to given host and port using TCP and run PPP over this connection.
1707 .ne 2
1709 \fB\fBsync\fR \fR
1711 .sp .6
1712 .RS 4n
1713 Use synchronous HDLC serial encoding instead of asynchronous. The device used
1714 by \fBpppd\fR with this option must have sync support. Currently supports
1715 \fBzs\fR, \fBse\fR, and \fBhsi\fR drivers.
1719 .ne 2
1721 \fB\fBunit\fR \fB\fIn\fR\fR \fR
1723 .sp .6
1724 .RS 4n
1725 Set PPP interface unit number to \fIn\fR, if possible.
1729 .ne 2
1731 \fB\fBupdetach\fR \fR
1733 .sp .6
1734 .RS 4n
1735 With this option, \fBpppd\fR detaches from its controlling terminal after
1736 establishing the PPP connection. When this is specified, messages sent to
1737 \fBstderr\fR by the connect script, usually \fBchat\fR(1M), and debugging
1738 messages from the debug option are directed to \fBpppd\fR's standard output.
1742 .ne 2
1744 \fB\fBusehostname\fR \fR
1746 .sp .6
1747 .RS 4n
1748 Enforce the use of the hostname with domain name appended, if given, as the
1749 name of the local system for authentication purposes. This overrides the
1750 \fBname\fR option. Because the \fBname\fR option is privileged, this option is
1751 normally not needed.
1755 .ne 2
1757 \fB\fBusepeerdns\fR \fR
1759 .sp .6
1760 .RS 4n
1761 Ask the peer for up to two DNS server addresses. Addresses supplied by the
1762 peer, if any, are passed to the \fB/etc/ppp/ip-up\fR script in the environment
1763 variables DNS1 and DNS2. In addition, \fBpppd\fR creates an
1764 \fB/etc/ppp/resolv.conf\fR file containing one or two nameserver lines with the
1765 address(es) supplied by the peer.
1769 .ne 2
1771 \fB\fBuser\fR \fB\fIname\fR\fR \fR
1773 .sp .6
1774 .RS 4n
1775 Sets the name used for authenticating the local system to the peer to
1776 \fIname\fR.
1780 .ne 2
1782 \fB\fBvj-max-slots\fR \fB\fIn\fR\fR \fR
1784 .sp .6
1785 .RS 4n
1786 Sets the number of connection slots to be used by the Van Jacobson TCP/IP
1787 header compression and decompression code to \fIn\fR, which must be between 2
1788 and 16 (inclusive).
1792 .ne 2
1794 \fB\fBwelcome\fR \fB\fIscript\fR\fR \fR
1796 .sp .6
1797 .RS 4n
1798 Run the executable or shell command specified by \fIscript\fR before initiating
1799 PPP negotiation, after the connect script, if any, has completed. A value for
1800 this option from a privileged source cannot be overridden by a non-privileged
1801 user.
1805 .ne 2
1807 \fB\fBxonxoff\fR \fR
1809 .sp .6
1810 .RS 4n
1811 Use software flow control, that is, XON/XOFF, to control the flow of data on
1812 the serial port.
1815 .SS "Obsolete Options"
1818 The following options are obsolete:
1820 .ne 2
1822 \fB\fB+ua\fR \fB\fIname\fR\fR\fR
1824 .RS 14n
1825 Read a PAP user name and password from the file \fIname\fR. This file must have
1826 two lines for name and password. Name and password are sent to the peer when
1827 the peer requests PAP authentication.
1831 .ne 2
1833 \fB\fB+ipv6\fR \fR
1835 .RS 14n
1836 Enable IPv6 and IPv6CP without specifying interface identifiers.
1840 .ne 2
1842 \fB\fB--version\fR \fR
1844 .RS 14n
1845 Show version number and exit.
1849 .ne 2
1851 \fB\fB--help\fR \fR
1853 .RS 14n
1854 Show brief help message and exit.
1857 .SH EXTENDED DESCRIPTION
1860 The following sections discuss miscellaneous features of \fBpppd\fR:
1861 .SS "Security"
1864 \fBpppd\fR allows system administrators to provide legitimate users with PPP
1865 access to a server machine without fear of compromising the security of the
1866 server or the network it runs on. Access control is provided by restricting IP
1867 addresses the peer may use based on its authenticated identity (if any), and
1868 through restrictions on options a non-privileged user may use. Options that
1869 permit potentially insecure configurations are privileged. Privileged options
1870 are accepted only in files that are under the control of the system
1871 administrator or when \fBpppd\fR is being run by root.
1874 By default, \fBpppd\fR allows an unauthenticated peer to use a given IP address
1875 only if the system does not already have a route to that IP address. For
1876 example, a system with a permanent connection to the wider Internet will
1877 normally have a default route, meaning all peers must authenticate themselves
1878 to set up a connection. On such a system, the \fBauth\fR option is the default.
1879 Conversely, a system with a PPP link that comprises the only connection to the
1880 Internet probably does not possess a default route, so the peer can use
1881 virtually any IP address without authenticating itself.
1884 Security-sensitive options are privileged and cannot be accessed by a
1885 non-privileged user running \fBpppd\fR, either on the command line, in the
1886 user's \fB$HOME/.ppprc\fR file, or in an options file read using the \fBfile\fR
1887 option. Privileged options may be used in \fB/etc/ppp/options\fR file or in an
1888 options file read using the \fBcall\fR option. If \fBpppd\fR is run by the root
1889 user, privileged options can be used without restriction. If the
1890 \fB/etc/ppp/options\fR file does not exist, then only root may invoke
1891 \fBpppd\fR. The \fB/etc/ppp/options\fR file must be created (but may be empty)
1892 to allow ordinary non-root users to access \fBpppd\fR.
1895 When opening the device, \fBpppd\fR uses the invoking user's user ID or the
1896 root UID (that is, 0), depending if the device name was specified by the user
1897 or the system administrator. If the device name comes from a privileged source,
1898 that is, \fB/etc/ppp/options\fR or an options file read using the \fBcall\fR
1899 option, \fBpppd\fR uses full root privileges when opening the device. Thus, by
1900 creating an appropriate file under \fB/etc/ppp/peers\fR, the system
1901 administrator can allow users to establish a PPP connection via a device that
1902 they would not normally have access to. Otherwise \fBpppd\fR uses the invoking
1903 user's real UID when opening the device.
1904 .SS "Authentication"
1907 During the authentication process, one peer convinces the other of its identity
1908 by sending its name and some secret information to the other. During
1909 authentication, the first peer becomes the "client" and the second becomes the
1910 "server." Authentication names can (but are not required to) correspond to the
1911 peer's Internet hostnames.
1914 \fBpppd\fR supports four authentication protocols: the Password Authentication
1915 Protocol (PAP) and three forms of the Challenge Handshake Authentication
1916 Protocol (CHAP). With the PAP protocol, the client sends its name and a
1917 cleartext password to the server to authenticate itself. With CHAP, the server
1918 initiates the authentication exchange by sending a challenge to the client who
1919 must respond with its name and a hash value derived from the shared secret and
1920 the challenge.
1923 The PPP protocol is symmetrical, meaning that each peer may be required to
1924 authenticate itself to the other. Different authentication protocols and names
1925 can be used for each exchange.
1928 By default, \fBpppd\fR authenticates if requested and does not require
1929 authentication from the peer. However, \fBpppd\fR does not authenticate itself
1930 with a specific protocol if it has no secrets that can do so.
1933 \fBpppd\fR stores authentication secrets in the \fB/etc/ppp/pap-secrets\fR (for
1934 PAP), and \fB/etc/ppp/chap-secrets\fR (for CHAP) files. Both files use the same
1935 format. \fBpppd\fR uses secrets files to authenticate itself to other systems
1936 and to authenticate other systems to itself.
1939 Secrets files contain one secret per line. Secrets are specific to a particular
1940 combination of client and server and can only be used by that client to
1941 authenticate itself to that server. Each line in a secrets file has a minimum
1942 of three fields that contain the client and server names followed by the
1943 secret. Often, these three fields are followed by IP addresses that are used by
1944 clients to connect to a server.
1947 A secrets file is parsed into words, with client name, server name and secrets
1948 fields allocated one word each. Embedded spaces or other special characters
1949 within a word must be quoted or escaped. Case is significant in all three
1950 fields.
1953 A secret beginning with an at sign ("@") is followed by the name of a file
1954 containing the secret. An asterisk (*) as the client or server name matches any
1955 name. When choosing a match, \fBpppd\fR selects the one with the fewest
1956 wildcards. Succeeding words on a line are interpreted by \fBpppd\fR as
1957 acceptable IP addresses for that client. IP Addresses are disallowed if they
1958 appear in lines that contain only three words or lines whose first word begins
1959 with a hyphen ("-"). To allow any address, use "*". An address starting with an
1960 exclamation point ("!") indicates that the specified address is not acceptable.
1961 An address may be followed by "/" and a number \fIn\fR to indicate a whole
1962 subnet (all addresses that have the same value in the most significant \fIn\fR
1963 bits). In this form, the address may be followed by a plus sign ("+") to
1964 indicate that one address from the subnet is authorized, based on the ppp
1965 network interface unit number in use. In this case, the host part of the
1966 address is set to the unit number, plus one.
1969 When authenticating the peer, \fBpppd\fR chooses a secret with the peer's name
1970 in the first field of the secrets file and the name of the local system in the
1971 second field. The local system name defaults to the hostname, with the domain
1972 name appended if the \fBdomain\fR option is used. The default can be overridden
1973 with the \fBname\fR option unless the \fBusehostname\fR option is used.
1976 When authenticating to the peer, \fBpppd\fR first determines the name it will
1977 use to identify itself to the peer. This name is specified with the \fBuser\fR
1978 option. If the \fBuser\fR option is not used, the name defaults to the host
1979 name of the local system. \fBpppd\fR then selects a secret from the secrets
1980 file by searching for an entry with a local name in the first field and the
1981 peer's name in the second field. \fBpppd\fR will know the name of the peer if
1982 standard CHAP authentication is used because the peer will have sent it in the
1983 Challenge packet. However, if MS-CHAP or PAP is being used, \fBpppd\fR must
1984 determine the peer's name from the options specified by the user. The user can
1985 specify the peer's name directly with the \fBremotename\fR option. Otherwise,
1986 if the remote IP address was specified by a name, rather than in numeric form,
1987 that name will be used as the peer's name. If that fails, \fBpppd\fR uses the
1988 null string as the peer's name.
1991 When authenticating the peer with PAP, the supplied password is compared with
1992 data in the secrets file. If the password and secret do not match, the password
1993 is encrypted using \fBcrypt()\fR and checked against the secret again. If the
1994 \fBpapcrypt\fR option is given, the first unencrypted comparison is omitted for
1995 better security, and entries must thus be in encrypted \fBcrypt\fR(3C) form.
1998 If the \fBlogin\fR option is specified, the username and password are also
1999 checked against the system password database. This allows you to set up the
2000 \fBpap-secrets\fR file to enable PPP access only to certain users, and to
2001 restrict the set of IP addresses available to users. Typically, when using the
2002 \fBlogin\fR option, the secret in \fB/etc/ppp/pap-secrets\fR would be "", which
2003 matches any password supplied by the peer. This makes having the same secret in
2004 two places unnecessary. When \fBlogin\fR is used, the \fBpam\fR option enables
2005 access control through \fBpam\fR(3PAM).
2008 Authentication must be completed before IPCP (or other network protocol) can be
2009 started. If the peer is required to authenticate itself and fails, \fBpppd\fR
2010 closes LCP and terminates the link. If IPCP negotiates an unacceptable IP
2011 address for the remote host, IPCP is closed. IP packets are sent or received
2012 only when IPCP is open.
2015 To allow hosts that cannot authenticate themselves to connect and use one of a
2016 restricted set of IP addresses, add a line to the \fBpap-secrets\fR file
2017 specifying the empty string for the client name and secret.
2020 Additional \fBpppd\fR options for a given peer may be specified by placing them
2021 at the end of the secrets entry, separated by two dashes (--). For example
2023 .in +2
2025 peername servername secret ip-address -- novj
2027 .in -2
2029 .SS "Routing"
2032 When IPCP negotiation is complete, \fBpppd\fR informs the kernel of the local
2033 and remote IP addresses for the PPP interface and creates a host route to the
2034 remote end of the link that enables peers to exchange IP packets. Communication
2035 with other machines generally requires further modification to routing tables
2036 and/or Address Resolution Protocol (ARP) tables. In most cases the
2037 \fBdefaultroute\fR and/or \fBproxyarp\fR options are sufficient for this, but
2038 further intervention may be necessary. If further intervention is required, use
2039 the \fB/etc/ppp/ip-up\fR script or a routing protocol daemon.
2042 To add a default route through the remote host, use the \fBdefaultroute\fR
2043 option. This option is typically used for "client" systems; that is, end-nodes
2044 that use the PPP link for access to the general Internet.
2047 In some cases it is desirable to use proxy ARP, for example on a server machine
2048 connected to a LAN, to allow other hosts to communicate with the remote host.
2049 \fBproxyarp\fR instructs \fBpppd\fR to look for a network interface on the same
2050 subnet as the remote host. That is, an interface supporting broadcast and ARP
2051 that is not a point-to-point or loopback interface and that is currently up. If
2052 found, \fBpppd\fR creates a permanent, published ARP entry with the IP address
2053 of the remote host and the hardware address of the network interface.
2056 When the \fBdemand\fR option is used, the interface IP addresses are already
2057 set at the time when IPCP comes up. If \fBpppd\fR cannot negotiate the same
2058 addresses it used to configure the interface, it changes the interface IP
2059 addresses to the negotiated addresses. This may disrupt existing connections.
2060 Using demand dialing with peers that perform dynamic IP address assignment is
2061 not recommended.
2062 .SS "Scripts"
2065 \fBpppd\fR invokes scripts at various stages during processing that are used to
2066 perform site-specific ancillary processing. These scripts may be shell scripts
2067 or executable programs. \fBpppd\fR does not wait for the scripts to finish. The
2068 scripts are executed as \fBroot\fR (with the real and effective user-id set to
2069 0), enabling them to update routing tables, run privileged daemons, or perform
2070 other tasks. Be sure that the contents of these scripts do not compromise your
2071 system's security. \fBpppd\fR runs the scripts with standard input, output and
2072 error redirected to \fB/dev/null\fR, and with an environment that is empty
2073 except for some environment variables that give information about the link. The
2074 \fBpppd\fR environment variables are:
2076 .ne 2
2078 \fB\fBDEVICE\fR \fR
2080 .RS 15n
2081 Name of the serial tty device.
2085 .ne 2
2087 \fB\fBIFNAME\fR \fR
2089 .RS 15n
2090 Name of the network interface.
2094 .ne 2
2096 \fB\fBIPLOCAL\fR \fR
2098 .RS 15n
2099 IP address for the link's local end. This is set only when IPCP has started.
2103 .ne 2
2105 \fB\fBIPREMOTE\fR \fR
2107 .RS 15n
2108 IP address for the link's remote end. This is set only when IPCP has started.
2112 .ne 2
2114 \fB\fBPEERNAME\fR \fR
2116 .RS 15n
2117 Authenticated name of the peer. This is set only if the peer authenticates
2118 itself.
2122 .ne 2
2124 \fB\fBSPEED\fR \fR
2126 .RS 15n
2127 Baud rate of the tty device.
2131 .ne 2
2133 \fB\fBORIG_UID\fR \fR
2135 .RS 15n
2136 Real user-id of user who invoked \fBpppd\fR.
2140 .ne 2
2142 \fB\fBPPPLOGNAME\fR \fR
2144 .RS 15n
2145 Username of the real user-id who invoked \fBpppd\fR. This is always set.
2150 \fBpppd\fR also sets the following variables for the ip-down and auth-down
2151 scripts:
2153 .ne 2
2155 \fB\fBCONNECT_TIME\fR \fR
2157 .RS 17n
2158 Number of seconds between the start of PPP negotiation and connection
2159 termination.
2163 .ne 2
2165 \fB\fBBYTES_SENT\fR \fR
2167 .RS 17n
2168 Number of bytes sent at the level of the serial port during the connection.
2172 .ne 2
2174 \fB\fBBYTES_RCVD\fR \fR
2176 .RS 17n
2177 Number of bytes received at the level of the serial port during the connection.
2181 .ne 2
2183 \fB\fBLINKNAME\fR \fR
2185 .RS 17n
2186 Logical name of the link, set with the \fBlinkname\fR option.
2191 If they exist, \fBpppd\fR invokes the following scripts. It is not an error if
2192 they do not exist.
2194 .ne 2
2196 \fB\fB/etc/ppp/auth-up\fR \fR
2198 .RS 23n
2199 Program or script executed after the remote system successfully authenticates
2200 itself. It is executed with five command-line arguments: \fBinterface-name
2201 peer-name user-name tty-device speed\fR. Note that this script is not executed
2202 if the peer does not authenticate itself, for example, when the \fBnoauth\fR
2203 option is used.
2207 .ne 2
2209 \fB\fB/etc/ppp/auth-down\fR \fR
2211 .RS 23n
2212 Program or script executed when the link goes down if \fB/etc/ppp/auth-up\fR
2213 was previously executed. It is executed in the same manner with the same
2214 parameters as \fB/etc/ppp/auth-up\fR.
2218 .ne 2
2220 \fB\fB/etc/ppp/ip-up\fR \fR
2222 .RS 21n
2223 A program or script that is executed when the link is available for sending and
2224 receiving IP packets (that is, IPCP has come up). It is executed with six
2225 command-line arguments: \fBinterface-name tty-device speed local-IP-address
2226 remote-IP-address ipparam\fR.
2230 .ne 2
2232 \fB\fB/etc/ppp/ip-down\fR \fR
2234 .RS 21n
2235 A program or script which is executed when the link is no longer available for
2236 sending and receiving IP packets. This script can be used for undoing the
2237 effects of the \fB/etc/ppp/ip-up\fR script. It is invoked in the same manner
2238 and with the same parameters as the \fBip-up\fR script.
2242 .ne 2
2244 \fB\fB/etc/ppp/ipv6-up\fR \fR
2246 .RS 21n
2247 Similar to \fB/etc/ppp/ip-up\fR, except that it is executed when the link is
2248 available for sending and receiving IPv6 packets. Executed with six
2249 command-line arguments: \fBinterface-name tty-device speed
2250 local-link-local-address remote-link-local-address ipparam\fR.
2254 .ne 2
2256 \fB\fB/etc/ppp/ipv6-down\fR \fR
2258 .RS 23n
2259 Similar to \fB/etc/ppp/ip-down\fR, but executed when IPv6 packets can no longer
2260 be transmitted on the link. Executed with the same parameters as the ipv6-up
2261 script.
2264 .SH EXAMPLES
2266 \fBExample 1 \fRUsing the \fBauth\fR Option
2269 The following examples assume that the \fB/etc/ppp/options\fR file contains the
2270 \fBauth\fR option.
2274 \fBpppd\fR is commonly used to dial out to an ISP. You can do this using the
2275 "\fBpppd call isp\fR" command where the \fB/etc/ppp/peers/isp\fR file is set up
2276 to contain a line similar to the following:
2279 .in +2
2281 cua/a 19200 crtscts connect '/usr/bin/chat -f /etc/ppp/chat-isp' noauth
2283 .in -2
2287 For this example, \fBchat\fR(1M) is used to dial the ISP's modem and process
2288 any login sequence required. The \fB/etc/ppp/chat-isp\fR file is used by
2289 \fBchat\fR and could contain the following:
2292 .in +2
2294 ABORT "NO CARRIER"
2295 ABORT "NO DIALTONE"
2296 ABORT "ERROR"
2297 ABORT "NO ANSWER"
2298 ABORT "BUSY"
2299 ABORT "Username/Password Incorrect"
2300 "" "at"
2301 OK "at&f&d2&c1"
2302 OK "atdt2468135"
2303 "name:" "^Umyuserid"
2304 "word:" "\qmypassword"
2305 "ispts" "\q^Uppp"
2306 "~-^Uppp-~"
2308 .in -2
2312 See the \fBchat\fR(1M) man page for details of \fBchat\fR scripts.
2315 \fBExample 2 \fRUsing \fBpppd\fR with \fBproxyarp\fR
2318 \fBpppd\fR can also provide a dial-in ppp service for users. If the users
2319 already have login accounts, the simplest way to set up the ppp service is to
2320 let the users log in to their accounts and run \fBpppd\fR as shown in the
2321 following example:
2324 .in +2
2326 example% \fBpppd proxyarp\fR
2328 .in -2
2332 \fBExample 3 \fRProviding a User with Access to PPP Facilities
2335 To provide a user with access to the PPP facilities, allocate an IP address for
2336 the user's machine, create an entry in \fB/etc/ppp/pap-secrets\fR or
2337 \fB/etc/ppp/chap-secrets\fR. This enables the user's machine to authenticate
2338 itself. For example, to enable user "Joe" using machine "joespc" to dial in to
2339 machine "server" and use the IP address "joespc.my.net," add the following
2340 entry to the \fB/etc/ppp/pap-secrets\fR or \fB/etc/ppp/chap-secrets\fR files:
2343 .in +2
2345 \fBjoespc       server  "joe's secret"  joespc.my.net\fR
2347 .in -2
2352 Alternatively, you can create another username, for example "ppp," whose login
2353 shell is \fB/usr/bin/pppd\fR and whose home directory is \fB/etc/ppp\fR. If you
2354 run \fBpppd\fR this way, add the options to the \fB/etc/ppp/.ppprc\fR file.
2358 If your serial connection is complex, it may be useful to escape such control
2359 characters as XON (^Q) and XOFF (^S), using \fBasyncmap a0000\fR. If the path
2360 includes a telnet, escape ^] (\fBasyncmap 200a0000\fR). If the path includes a
2361 \fBrlogin\fR command, add \fBescape ff\fR option to the options, because
2362 \fBrlogin\fR removes the window-size-change sequence [0xff, 0xff, 0x73, 0x73,
2363 followed by any 8 bytes] from the stream.
2365 .SH EXIT STATUS
2368 The \fBpppd\fR exit status indicates errors or specifies why a link was
2369 terminated. Exit status values are:
2371 .ne 2
2373 \fB\fB0\fR \fR
2375 .RS 7n
2376 \fBpppd\fR has detached or the connection was successfully established and
2377 terminated at the peer's request.
2381 .ne 2
2383 \fB\fB1\fR \fR
2385 .RS 7n
2386 An immediately fatal error occurred. For example, an essential system call
2387 failed.
2391 .ne 2
2393 \fB\fB2\fR \fR
2395 .RS 7n
2396 An error was detected in the options given. For example, two mutually exclusive
2397 options were used, or \fB/etc/ppp/options\fR is missing and the user is not
2398 root.
2402 .ne 2
2404 \fB\fB3\fR \fR
2406 .RS 7n
2407 \fBpppd\fR is not \fBsetuid-root\fR and the invoking user is not root.
2411 .ne 2
2413 \fB\fB4\fR \fR
2415 .RS 7n
2416 The kernel does not support PPP. For example, the PPP kernel driver is not
2417 included or cannot be loaded.
2421 .ne 2
2423 \fB\fB5\fR \fR
2425 .RS 7n
2426 \fBpppd\fR terminated because it was sent a SIGINT, SIGTERM or SIGHUP signal.
2430 .ne 2
2432 \fB\fB6\fR \fR
2434 .RS 7n
2435 The serial port could not be locked.
2439 .ne 2
2441 \fB\fB7\fR \fR
2443 .RS 7n
2444 The serial port could not be opened.
2448 .ne 2
2450 \fB\fB8\fR \fR
2452 .RS 7n
2453 The connect script failed and returned a non-zero exit status.
2457 .ne 2
2459 \fB\fB9\fR \fR
2461 .RS 7n
2462 The command specified as the argument to the \fBpty\fR option could not be run.
2466 .ne 2
2468 \fB\fB10\fR \fR
2470 .RS 7n
2471 The PPP negotiation failed because no network protocols were able to run.
2475 .ne 2
2477 \fB\fB11\fR \fR
2479 .RS 7n
2480 The peer system failed or refused to authenticate itself.
2484 .ne 2
2486 \fB\fB12\fR \fR
2488 .RS 7n
2489 The link was established successfully, but terminated because it was idle.
2493 .ne 2
2495 \fB\fB13\fR \fR
2497 .RS 7n
2498 The link was established successfully, but terminated because the connect time
2499 limit was reached.
2503 .ne 2
2505 \fB\fB14\fR \fR
2507 .RS 7n
2508 Callback was negotiated and an incoming call should arrive shortly.
2512 .ne 2
2514 \fB\fB15\fR \fR
2516 .RS 7n
2517 The link was terminated because the peer is not responding to echo requests.
2521 .ne 2
2523 \fB\fB16\fR \fR
2525 .RS 7n
2526 The link was terminated by the modem hanging up.
2530 .ne 2
2532 \fB\fB17\fR \fR
2534 .RS 7n
2535 The PPP negotiation failed because serial loopback was detected.
2539 .ne 2
2541 \fB\fB18\fR \fR
2543 .RS 7n
2544 The init script failed because a non-zero exit status was returned.
2548 .ne 2
2550 \fB\fB19\fR \fR
2552 .RS 7n
2553 Authentication to the peer failed.
2556 .SH FILES
2558 .ne 2
2560 \fB\fB/var/run/sppp\fIn\fR\fR\fB\&.pid\fR \fR
2562 .RS 29n
2563 Process-ID for \fBpppd\fR process on PPP interface unit \fIn\fR.
2567 .ne 2
2569 \fB\fB/var/run/ppp-\fIname\fR\fR\fB\&.pid\fR \fR
2571 .RS 29n
2572 Process-ID for \fBpppd\fR process for logical link name (see the \fBlinkname\fR
2573 option).
2577 .ne 2
2579 \fB\fB/etc/ppp/pap-secrets\fR \fR
2581 .RS 29n
2582 Usernames, passwords and IP addresses for PAP authentication. This file should
2583 be owned by root and not readable or writable by any other user, otherwise
2584 \fBpppd\fR will log a warning.
2588 .ne 2
2590 \fB\fB/etc/ppp/chap-secrets\fR \fR
2592 .RS 29n
2593 Names, secrets and IP addresses for all forms of CHAP authentication. The
2594 \fB/etc/ppp/pap-secrets\fR file should be owned by \fBroot\fR should not
2595 readable or writable by any other user, otherwise, \fBpppd\fR will log a
2596 warning.
2600 .ne 2
2602 \fB\fB/etc/ppp/options\fR \fR
2604 .RS 29n
2605 System default options for \fBpppd\fR, read before user default options or
2606 command-line options.
2610 .ne 2
2612 \fB\fB$HOME/.ppprc\fR \fR
2614 .RS 29n
2615 User default options, read before \fB/etc/ppp/options.\fIttyname\fR\fR.
2619 .ne 2
2621 \fB\fB/etc/ppp/options.\fIttyname\fR\fR \fR
2623 .RS 29n
2624 System default options for the serial port in use; read after
2625 \fB$HOME/.ppprc\fR. The \fIttyname\fR component of this filename is formed when
2626 the initial \fB/dev/\fR is stripped from the port name (if present), and
2627 slashes (if any) are converted to dots.
2631 .ne 2
2633 \fB\fB/etc/ppp/peers\fR \fR
2635 .RS 29n
2636 Directory with options files that may contain privileged options, even if
2637 \fBpppd\fR was invoked by a user other than \fBroot\fR. The system
2638 administrator can create options files in this directory to permit
2639 non-privileged users to dial out without requiring the peer to authenticate,
2640 but only to certain trusted peers.
2643 .SH ATTRIBUTES
2646 See \fBattributes\fR(5) for descriptions of the following attributes:
2651 box;
2652 c | c
2653 l | l .
2654 ATTRIBUTE TYPE  ATTRIBUTE VALUE
2656 Interface Stability     Evolving
2659 .SH SEE ALSO
2662 \fBchat\fR(1M), \fBifconfig\fR(1M), \fBcrypt\fR(3C), \fBpam\fR(3PAM),
2663 \fBattributes\fR(5)
2666 Haskin, D., Allen, E. \fIRFC 2472 - IP Version 6 Over PPP\fR. Network Working
2667 Group. December 1998.
2670 Jacobson, V. \fIRFC 1144, Compressing TCP/IP Headers for Low-Speed Serial
2671 Links\fR. Network Working Group. February, 1990
2674 Lloyd, B., Simpson, W. \fIRFC 1334, PPP Authentication Protocols\fR. Network
2675 Working Group. October 1992.
2678 McGregor, G. \fIRFC 1332, The PPP Internet Protocol Control Protocol (IPCP)\fR.
2679 Network Working Group. May 1992.
2682 Rivest, R. \fIRFC 1321, The MD5 Message-Digest Algorithm\fR. Network Working
2683 Group. April 1992
2686 Simpson, W. \fIRFC 1661, The Point-to-Point Protocol (PPP)\fR. Network Working
2687 Group. July 1994.
2690 Simpson, W. \fIRFC 1662, HDLC-like Framing \fR. Network Working Group. July
2691 1994.
2692 .SH NOTES
2695 These signals affect \fBpppd\fR behavior:
2697 .ne 2
2699 \fB\fBSIGINT, SIGTERM\fR \fR
2701 .RS 20n
2702 Terminate the link, restore the serial device settings and exit.
2706 .ne 2
2708 \fB\fBSIGHUP\fR \fR
2710 .RS 20n
2711 Terminate the link, restore the serial device settings and close the serial
2712 device. If the \fBpersist\fR or \fBdemand\fR option is specified, \fBpppd\fR
2713 attempts to reopen the serial device and start another connection after the
2714 holdoff period. Otherwise \fBpppd\fR exits. If received during the holdoff
2715 period, \fBSIGHUP\fR causes \fBpppd\fR to end the holdoff period immediately.
2719 .ne 2
2721 \fB\fBSIGUSR1\fR \fR
2723 .RS 20n
2724 Toggles the state of the \fBdebug\fR option and prints link status information
2725 to the log.
2729 .ne 2
2731 \fB\fBSIGUSR2\fR \fR
2733 .RS 20n
2734 Causes \fBpppd\fR to renegotiate compression. This is useful to re-enable
2735 compression after it has been disabled as a result of a fatal decompression
2736 error. (Fatal decompression errors generally indicate a bug in an
2737 implementation.)
2740 .SH DIAGNOSTICS
2743 Messages are sent to the syslog daemon using facility \fBLOG_DAEMON\fR. To see
2744 error and debug messages, edit the \fB/etc/syslog.conf\fR file to direct the
2745 messages to the desired output device or file, or use the \fBupdetach\fR or
2746 \fBlogfile\fR options.
2749 The \fBdebug\fR option causes the contents of all LCP, PAP, CHAP or IPCP
2750 control packets sent or received to be logged. This is useful if PPP
2751 negotiation does not succeed or if authentication fails.
2754 Debugging can also be enabled or disabled by sending a \fBSIGUSR1\fR signal,
2755 which acts as a toggle to the \fBpppd\fR process.