PPP(8)
NAME
ppp, pppoe, pptp, pptpd − point to point protocol
SYNOPSIS
ip/ppp [ -CPScdfu ] [ -b baud ] [ -k keyspec ] [ -m mtu ] [ -M chatfile ] [ -p dev ] [ -x netmntpt ] [ -t modemcmd ] [ local [ remote ] ]
ip/pppoe [ -dP ] [ -m mtu ] [ -x pppnetmntpt ] etherdir
ip/pptp [ -dP ] [ -k keyspec ] [ -w window ] [ -x pppnetmntpt ] server
ip/pptpd [ -d ] [ -p pppnetmtpt ] [ -w window ] [ -D fraction ] tcp-dir
DESCRIPTION
The Point to Point Protocol is used to encapsulate Internet Protocol packets for transfer over serial lines or other protocol connections. Ppp can run either as a client or, with the −S option, as a server. The only differences between a client and a server is that the server will not believe any local address the client tries to supply it and that the server always initiates the authentication of the client.
With no option, ppp communicates with the remote system via standard input and output. This is useful if a program wants to use ppp in a communications stream. However, the normal mode is to specify a communications device, usually a serial line with a modem.
PPP supports the following options:
b set the baud rate on the communications device
f make PPP add HDLC framing. This is necessary when using PPP over a serial line or a TCP connection
k add keyspec to the factotum(4) key pattern when looking for a user name and password for authentication; the default key pattern is proto=pass service=ppp
m set the maximum transfer unit (default 1450)
P use this as the primary IP interface; set the default route through this interface and write its configuration to /net/ndb
p communicate over dev instead of standard I/O
u before starting the PPP protocol with the remote end, shuttle bytes between the device and standard I/O until an EOF on standard input. This allows a user to start ppp and then type commands at a modem before ppp takes over
S run as a server
t before starting the PPP protocol, write modemcmd to the device
x use the IP stack mounted at netmntpt
M chat with the modem as specified in the chat file. Each line in the chat file contains a string that is transmitted to the modem and the response expected (e.g. ’AT’ ’OK’)
c disallow packet compression
C disallow ip header compression
If both the local and remote addresses are specified, don’t ask the other end for either or believe it if it supplies one. If either is missing, get it from the remote end.
Pppoe is a PPP over ethernet (PPPoE) client. It invokes ppp to start a PPP conversation which is tunneled in PPPoE packets on the ethernet device mounted at etherdir (default /net/ether0). The options are:
A insist on an access concentrator named acname during PPPoE discovery
S insist on a service named srvname during PPPoE discovery
d write debugging output to standard error, and pass -d to ppp
m pass -m mtu to ppp, default 1492
k pass -k keyspec to ppp
x pass -x pppnetmntpt to ppp
Pptp is a client for a PPTP encrypted tunnel. Server is the name of the server to dial. Pptp takes the same options as pppoe, except for the lack of a -m option and the addition of a -w option. The -w option specifies the local send window size (default 16) in packets.
Pptpd is the server side of a PPTP encrypted tunnel. Tcpdir is the directory of a TCP connection to the client. The TCP connection is used to control the tunnel while packets are sent back and forth using PPP inside of GRE packets. The options are:
d write debugging output to standard error.
p use the IP stack mounted at pppnetmtpt to terminate the PPP connection.
w set the receive window to window.
D drop fraction of the received packets. This is used for testing.
SOURCE
/sys/src/cmd/ip/ppp
/sys/src/cmd/ip/pptpd.c
/sys/src/cmd/ip/pppoe.c
BUGS
Ppp should use factotum to execute the client side of the challenge-reponse protocol, but instead it reads a password from factotum and runs the protocol itself.
Plan 9 — September 24, 2004