1PPPOE-SERVER(8) System Manager's Manual PPPOE-SERVER(8)
2
3
4
6 pppoe-server - user-space PPPoE server
7
9 pppoe-server [options]
10
11
13 pppoe-server is a user-space server for PPPoE (Point-to-Point Protocol
14 over Ethernet) for Linux and other UNIX systems. pppoe-server works in
15 concert with the pppoe client to respond to PPPoE discovery packets and
16 set up PPPoE sessions.
17
18
20 -F The -F option causes pppoe-server not to fork and become a dae‐
21 mon. The default is to fork and become a daemon.
22
23
24 -I interface
25 The -I option specifies the Ethernet interface to use. Under
26 Linux, it is typically eth0 or eth1. The interface should be
27 "up" before you start pppoe-server, but need not have an IP
28 address. You can supply multiple -I options if you want the
29 server to respond on more than one interface.
30
31
32 -X pidfile
33 This option causes pppoe-server to write its process ID to pid‐
34 file. Additionally, it keeps the file locked so that only a
35 single process may be started for a given pidfile.
36
37
38 -q /path/to/pppd
39 Specifies the full path to the pppd program. The default is
40 determined at compile time. One use of this option is to supply
41 a wrapper program that modifies the arguments passed to pppd.
42 This lets you do things not directly supported by the server
43 (for example, specify IPv6 addresses.)
44
45
46 -Q /path/to/pppoe
47 Specifies the full path to the pppoe program. The default is
48 determined at compile time. This option is only relevant if you
49 are not using kernel-mode PPPoE.
50
51
52 -T timeout
53 This option is passed directly to pppoe; see pppoe(8) for
54 details. If you are using kernel-mode PPPoE, this option has no
55 effect.
56
57
58 -C ac_name
59 Specifies which name to report as the access concentrator name.
60 If not supplied, the host name is used.
61
62
63 -S name
64 Offer a service named name. Multiple -S options may be speci‐
65 fied; each one causes the named service to be advertised in a
66 Service-Name tag in the PADO frame. The first -S option speci‐
67 fies the default service, and is used if the PPPoE client
68 requests a Service-Name of length zero.
69
70
71 -m MSS This option is passed directly to pppoe; see pppoe(8) for
72 details. If you are using kernel-mode PPPoE, this option has no
73 effect.
74
75
76 -x n Limit the number of sessions per peer MAC address to n. If a
77 given MAC address attempts to create more than n sessions, then
78 its PADI and PADR packets are ignored. If you set n to 0 (the
79 default), then no limit is imposed on the number of sessions per
80 peer MAC address.
81
82
83 -P Check pool file for correctness and exit.
84
85
86 -s This option is passed directly to pppoe; see pppoe(8) for
87 details. In addition, it causes pppd to be invoked with the
88 sync option.
89
90
91 -l Increment local IP address for each session.
92
93
94 -L ip Sets the local IP address. This is passed to spawned pppd pro‐
95 cesses. If not specified, the default is 10.0.0.1.
96
97
98 -R ip Sets the starting remote IP address. As sessions are estab‐
99 lished, IP addresses are assigned starting from ip. pppoe-
100 server automatically keeps track of the pool of addresses and
101 passes a valid remote IP address to pppd. If not specified, a
102 starting address of 10.67.15.1 is used.
103
104
105 -D Delegate the allocation of IP addresses to pppd. If specified,
106 no local and remote addresses passed to pppd.
107
108
109 -N num Allows at most num concurrent PPPoE sessions. If not specified,
110 the default is 64.
111
112
113 -O fname
114 This option causes pppoe-server to tell pppd to use the option
115 file fname instead of the default /etc/ppp/pppoe-server-options.
116
117
118 -p fname
119 Reads the specified file fname which is a text file consisting
120 of one IP address per line. These IP addresses will be assigned
121 to clients. The number of sessions allowed will equal the num‐
122 ber of addresses found in the file. The -p option overrides
123 both -R and -N.
124
125 In addition to containing IP addresses, the pool file can con‐
126 tain lines of the form:
127
128 a.b.c.d-e
129
130 which includes all IP addresses from a.b.c.d to a.b.c.e. For
131 example, the line:
132
133 1.2.3.4-7
134
135 is equivalent to:
136
137 1.2.3.4
138 1.2.3.5
139 1.2.3.6
140 1.2.3.7
141
142
143 -r Tells the PPPoE server to randomly permute session numbers.
144 Instead of handing out sessions in order, the session numbers
145 are assigned in an unpredictable order.
146
147
148 -d Debug session creation.
149
150
151 -u Tells the server to invoke pppd with the unit option. Note that
152 this option only works for pppd version 2.4.0 or newer.
153
154
155 -o offset
156 Instead of numbering PPPoE sessions starting at 1, they will be
157 numbered starting at offset+1. This allows you to run multiple
158 servers on a given machine; just make sure that their session
159 numbers do not overlap.
160
161
162 -f disc:sess
163 The -f option sets the Ethernet frame types for PPPoE discovery
164 and session frames. The types are specified as hexadecimal num‐
165 bers separated by a colon. Standard PPPoE uses frame types
166 8863:8864. You should not use this option unless you are abso‐
167 lutely sure the peer you are dealing with uses non-standard
168 frame types.
169
170
171 -k The -k option tells the server to use kernel-mode PPPoE on
172 Linux. This option is available only on Linux kernels 2.4.0 and
173 later, and only if the server was built with kernel-mode sup‐
174 port.
175
176
177 -i The -i option tells the server to completely ignore PADI frames
178 if there are no free session slots.
179
180
181 -h The -h option prints a brief usage message and exits.
182
183
185 pppoe-server listens for incoming PPPoE discovery packets. When a ses‐
186 sion is established, it spawns a pppd process. The following options
187 are passed to pppd:
188
189 nodetach noaccomp nobsdcom nodeflate nopcomp novj novjccomp
190 default-asyncmap
191
192 In addition, the local and remote IP address are set based on the -L
193 and -R options. The pty option is supplied along with a pppoe command
194 to initiate the PPPoE session. Finally, additional pppd options can be
195 placed in the file /etc/ppp/pppoe-server-options (which must exist,
196 even if it is just empty!)
197
198 Note that pppoe-server is meant mainly for testing PPPoE clients. It
199 is not a high-performance server meant for production use.
200
201
203 pppoe-server was written by David F. Skoll <dfs@roaringpenguin.com>.
204
205 The pppoe home page is http://www.roaringpenguin.com/pppoe/.
206
207
209 pppoe-start(8), pppoe-stop(8), pppoe-connect(8), pppd(8),
210 pppoe.conf(5), pppoe(8), pppoe-setup(8), pppoe-status(8), pppoe-
211 sniff(8), pppoe-relay(8)
212
213
214
215
2164th Berkeley Distribution 21 June 2008 PPPOE-SERVER(8)