PPP(8)                                                     PPP(8)

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

     SYNOPSIS
          ip/ppp [ -CPSacdfuy ] [ -b baud ] [ ] [ -i ipnet ] [ -I
          ipnet ] [ -k keyspec ] [ -m mtu ] [ -M chatfile ] [ -p dev ]
          [ -x netmntpt ] [ -t modemcmd ] [ -U duid ] [ local [ remote
          ] ]

          ip/pppoe [ -PdcCr ] [ -A acname ] [ -S srvname ] [ -U duid ]
          [ -i ipnet ] [ -I ipnet ] [ -k keyspec ] [ -m mtu ] [ -b
          baud ] [ -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 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 always ini-
          tiates 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:

          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

          i  when writing IPv4 configuration to /net/ndb, create a
             ipnet= tuple with the value of ipnet and the network
             attributes.

     Page 1                       Plan 9            (printed 12/22/24)

     PPP(8)                                                     PPP(8)

          I  same as -i but for IPv6.

          k  add keyspec to the factotum(4) key pattern when looking
             for a user name and password for authentication.

          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  use duid as the DHCPv6 client identier.  Pppoe creates
             the duid from the ethernet address (DUID-LL) of dev when
             not specified and passes it on to ppp. See also
             ipconfig(8)).

          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

          y  ARP proxy the interface.  (see ipconfig(8)).

          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

     Page 2                       Plan 9            (printed 12/22/24)

     PPP(8)                                                     PPP(8)

          r  by default, pppoe exits after trying PPPoE discovery for
             16 seconds with no answer or when ppp terminates the ses-
             sion.  This option directs pppoe instead to fork a back-
             ground process that keeps trying forever, and also re-
             establishes the session when ppp terminates.

          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
          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
          ipconfig(8), gre in ip(3)

     Page 3                       Plan 9            (printed 12/22/24)