proacd(8)                       ProL2TP Manual                       proacd(8)



NAME
       proacd - ProL2TP Access Concentrator Daemon

SYNOPSIS
       proacd [-h] [-v] [-f] [-c config] [-l license] [-n] [-o output] [-D]
       [-d debugmask] [-L facility]

DESCRIPTION
       proacd is a PPP Access Concentrator, designed to route PPP traffic from
       remote  clients  to  remote  access  servers.  At this time, only PPPoE
       clients are supported.

       User PPP traffic may be routed through L2TP tunnels, or  terminated  by
       local pppd instances.

       For  L2TP  routes, proacd interfaces with prol2tpd to create and delete
       L2TP tunnels as required.  The data path for PPPoE to  L2TP  routes  is
       handled   entirely   within   the  kernel,  giving  the  best  possible
       performance.

OPTIONS
       -h      Display usage information.

       -v      Display version information.

       -f      Run in the foreground. By default, proacd forks itself and runs
               in the background. For debugging, it is sometimes useful to run
               the application in the foreground. Note that when  run  in  the
               foreground,  daemon output messages are sent to the controlling
               terminal rather than to syslog.

       -c config
               Read configuration commands from the specified file rather than
               the default path.


       -n      Checks   the  config  file  for  correctness  and  outputs  the
               resulting configuration information. Exits  after  reading  the
               configuration.

       -o output
               Send  daemon  output  to  the  specified  filename, rather than
               syslog.

       -D      Enable daemon debugging messages.

       -d debugmask
               Configures the debug message mask. The mask may be specified as
               a  decimal  or hexadecimal integer or as a comma-separated list
               of debug modules. Valid debug modules are route,  pppoe,  l2tp,
               radius,  ppp,  pppfsm,  lcpfsm,  ctrl,  trace, pppd, system and
               parser. The special mask all enables debugging in all modules.

       -L facility
               If logging to syslog, this option can be used  to  specify  the
               syslog  facility to be used. Valid values are local0 .. local7,
               or default. The value "local0" corresponds to  LOG_LOCAL0.  The
               default is LOG_DAEMON.

OPERATION
       proacd negotiates and accepts client connections and opens a connection
       to the  server  based  on  the  route  definitions  specified  in  it's
       configuration file.  The client connection is referred to as the source
       endpoint and the server connection is referred to destination endpoint.
       The  relationship  between  source endpoint and destination endpoint is
       referred to as a route.

CONFIGURATION
       The config file is read at startup and when proacd  receives  a  SIGHUP
       signal.

PROTOCOLS
       proacd currently supports only PPPoE as a source endpoint and both L2TP
       and PPP as destination endpoints.  It  also  supports  querying  RADIUS
       servers  to  make  authentication  and routing decisions about incoming
       client session setup requests.  It fully implements the server side  of
       RFC  2516  (A Method for Transmitting PPP Over Ethernet), to listen for
       incoming service requests.

       proacd  requires  an  external  L2TP  daemon,  prol2tpd,  in  order  to
       establish  L2TP  destination  endpoints. An external PPP daemon, either
       propppd or the legacy pppd,  is  required  to  terminate  PPP  sessions
       locally.

LINUX KERNEL DRIVERS
       In  order  to  switch data packets from an incoming PPPoE session to an
       L2TP session, proacd requires a Linux kernel 5.11  or  later  with  PPP
       Bridging  support.  If  using  older  kernels, our l2tp_ac_pppoe kernel
       driver is required.

       proacd is able to terminate incoming sessions in a local pppd instance,
       to  do so it makes use of the rp-pppoe.so plugin distributed with pppd,
       which requires that the linux kernel driver pppoe is loaded.

MANAGEMENT INTERFACE
       A management interface is provided to allow users  or  applications  to
       query  the status of the daemon.  It uses the netlink protocol familiar
       to kernel programmers, using an AF_UNIX socket attached to a named pipe
       for  transport.  An example application proac_info is provided to allow
       the user to dump the list of current routes and the set  of  statistics
       kept by the daemon.

SEE ALSO
       proacd.conf(5), proac_info(8), proac_trace(8), proac_manage(8),



ProL2TP 2.6.4                    October 2024                        proacd(8)