PPP(8)                                                     PPP(8)

     NAME
          ppp, pppoe, pptp, pptpd - point-to-point protocol

     SYNOPSIS
          ip/ppp [ -CPSacdfu ] [ -b baud ] [ -k keyspec ] [ -m mtu ] [
          -M chatfile ] [ -p dev ] [ -x netmntpt ] [ -t modemcmd ] [
          local [ remote ] ]

          ip/pppoe [ -Pd ] [ -A acname ] [ -S srvname ] [ -k keyspec ]
          [ -m mtu ] [ -x pppnetmntpt ] [ ether ]

          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 in IPv4 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 dif-
          ferences between a client and a server is that the server
          will not believe any local address the client tries to sup-
          ply it and that the server always initiates the authentica-
          tion 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:

          a  as server, don't request authentication from the client

          b  set the baud rate on the communications device

          c  disallow packet compression

          C  disallow IP header compression

          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

     Page 1                       Plan 9            (printed 11/18/24)

     PPP(8)                                                     PPP(8)

          m  set the maximum transfer unit (default 1450)

          M  chat with the modem as specified in the chat file.  Each
             line in the chat file contains a string that is transmit-
             ted to the modem and the response expected (e.g. 'AT'
             'OK')

          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

          S  run as a server

          t  before starting the PPP protocol, write modemcmd to the
             device

          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

          x  use the IP stack mounted at netmntpt

          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 pack-
          ets on the ethernet device mounted at etherdir (default
          /net/ether0).  The pppoe-specific options are:

          A  insist on an access concentrator named acname during
             PPPoE discovery

          d  write debugging output to standard error, and pass -d to
             ppp

          S  insist on a service named srvname during PPPoE discovery

          The other options are relayed 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 win-
          dow size (default 16) in packets.

          Pptpd is the server side of a PPTP encrypted tunnel.  Tcpdir

     Page 2                       Plan 9            (printed 11/18/24)

     PPP(8)                                                     PPP(8)

          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.

          D  drop fraction of the received packets.  This is used for
             testing.

          p  use the IP stack mounted at pppnetmtpt to terminate the
             PPP connection.

          w  set the receive window to window.

     SOURCE
          /sys/src/cmd/ip/ppp
          /sys/src/cmd/ip/pptpd.c
          /sys/src/cmd/ip/pppoe.c

     SEE ALSO
          gre in ip(3)

     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.

     Page 3                       Plan 9            (printed 11/18/24)