pppoe-server
PPPOE-SERVER(8) PPPOE-SERVER(8)
NAME
pppoe-server - user-space PPPoE server
SYNOPSIS
pppoe-server [options]
DESCRIPTION
pppoe-server is a user-space server for PPPoE (Point-to-Point Protocol
over Ethernet) for Linux and other UNIX systems. pppoe-server works in
concert with the pppoe client to respond to PPPoE discovery packets and
set up PPPoE sessions.
OPTIONS
-F The -F option causes pppoe-server not to fork and become a dae-
mon. The default is to fork and become a daemon.
-I interface
The -I option specifies the Ethernet interface to use. Under
Linux, it is typically eth0 or eth1. The interface should be
"up" before you start pppoe-server, but should not be configured
to have an IP address. You can supply multiple -I options if
you want the server to respond on more than one interface.
-T timeout
This option is passed directly to pppoe; see pppoe(8) for
details. If you are using kernel-mode PPPoE, this option has no
effect.
-C ac_name
Specifies which name to report as the access concentrator name.
If not supplied, the host name is used.
-S name
Offer a service named name. Multiple -S options may be speci-
fied; each one causes the named service to be advertised in a
Service-Name tag in the PADO frame. The first -S option speci-
fies the default service, and is used if the PPPoE client
requests a Service-Name of length zero.
-m MSS This option is passed directly to pppoe; see pppoe(8) for
details. If you are using kernel-mode PPPoE, this option has no
effect.
-s This option is passed directly to pppoe; see pppoe(8) for
details. In addition, it causes pppd to be invoked with the
sync option.
-L ip Sets the local IP address. This is passed to spawned pppd pro-
cesses. If not specified, the default is 10.0.0.1.
-R ip Sets the starting remote IP address. As sessions are estab-
lished, IP addresses are assigned starting from ip. pppoe-
server automatically keeps track of the pool of addresses and
passes a valid remote IP address to pppd. If not specified, a
starting address of 10.67.15.1 is used.
-N num Allows at most num concurrent PPPoE sessions. If not specified,
the default is 64.
-p fname
Reads the specified file fname which is a text file consisting
of one IP address per line. These IP addresses will be assigned
to clients. The number of sessions allowed will equal the num-
ber of addresses found in the file. The -p option overrides
both -R and -N.
In addition to containing IP addresses, the pool file can con-
tain lines of the form:
a.b.c.d-e
which includes all IP addresses from a.b.c.d to a.b.c.e. For
example, the line:
1.2.3.4-7
is equivalent to:
1.2.3.4
1.2.3.5
1.2.3.6
1.2.3.7
-r Tells the PPPoE server to randomly permute session numbers.
Instead of handing out sessions in order, the session numbers
are assigned in an unpredictable order.
-u Tells the server to invoke pppd with the unit option. Note that
this option only works for pppd version 2.4.0 or newer.
-o offset
Instead of numbering PPPoE sessions starting at 1, they will be
numbered starting at offset+1. This allows you to run multiple
servers on a given machine; just make sure that their session
numbers do not overlap.
-f disc:sess
The -f option sets the Ethernet frame types for PPPoE discovery
and session frames. The types are specified as hexadecimal num-
bers separated by a colon. Standard PPPoE uses frame types
8863:8864. You should not use this option unless you are abso-
lutely sure the peer you are dealing with uses non-standard
frame types.
-k The -k option tells the server to use kernel-mode PPPoE on
Linux. This option is available only on Linux kernels 2.4.0 and
later, and only if the server was built with kernel-mode sup-
port.
-h The -h option prints a brief usage message and exits.
OPERATION
pppoe-server listens for incoming PPPoE discovery packets. When a ses-
sion is established, it spawns a pppd process. The following options
are passed to pppd:
nodetach noaccomp nobsdcom nodeflate nopcomp novj novjccomp
default-asyncmap
In addition, the local and remote IP address are set based on the -L
and -R options. The pty option is supplied along with a pppoe command
to initiate the PPPoE session. Finally, additional pppd options can be
placed in the file /etc/ppp/pppoe-server-options (which must exist,
even if it is just empty!)
Note that pppoe-server is meant mainly for testing PPPoE clients. It
is not a high-performance server meant for production use.
AUTHORS
pppoe-server was written by David F. Skoll <dfs@roaringpenguin.com>.
The pppoe home page is http://www.roaringpenguin.com/pppoe/.
SEE ALSO
adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
pppoe(8), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-relay(8)
4th Berkeley Distribution 3 July 2000 PPPOE-SERVER(8)