- Show session open time in "show session"/"show user" detailed output.
[l2tpns.git] / Docs / startup-config.5
1 .\" -*- nroff -*-
2 .de Id
3 .ds Dt \\$4 \\$5
4 ..
5 .Id $Id: startup-config.5,v 1.3.2.3 2005/05/30 02:55:42 bodea Exp $
6 .TH STARTUP-CONFIG 5 "\*(Dt" L2TPNS "File Formats and Conventions"
7 .SH NAME
8 startup\-config \- configuration file for l2tpns
9 .SH SYNOPSIS
10 /etc/l2tpns/startup-config
11 .SH DESCRIPTION
12 .B startup-config
13 is the configuration file for
14 .BR l2tpns .
15 .PP
16 The format is plain text, in the same format as accepted by the
17 configuration mode of
18 .BR l2tpns 's
19 telnet administrative interface.  Comments are indicated by either the
20 character
21 .B #
22 or
23 .BR ! .
24 .SS SETTINGS
25 Settings are specified with
26 .IP
27 .BI "set " "variable value"
28 .PP
29 The following
30 .IR variable s
31 may be set:
32 .RS
33 .TP
34 .B debug
35 Set the level of debugging messages written to the log file.  The
36 value should be between 0 and 5, with 0 being no debugging, and 5
37 being the highest.
38 .TP
39 .B log_file
40 This will be where all logging and debugging information is written
41 to.  This may be either a filename, such as
42 .BR /var/log/l2tpns ,
43 or the string
44 .BR syslog : \fIfacility\fR ,
45 where
46 .I facility
47 is any one of the syslog logging facilities, such as
48 .BR local5 .
49 .TP
50 .B pid_file
51 If set, the process id will be written to the specified file.  The
52 value must be an absolute path.
53 .TP
54 .B l2tp_secret
55 The secret used by
56 .B l2tpns
57 for authenticating tunnel request.  Must be the same as the LAC, or
58 authentication will fail.  Only actually be used if the LAC requests
59 authentication.
60 .TP
61 .BR primary_dns , " secondary_dns"
62 Whenever a PPP connection is established, DNS servers will be sent to the
63 user, both a primary and a secondary.  If either is set to 0.0.0.0, then that
64 one will not be sent.
65 .TP
66 .B save_state
67 When
68 .B l2tpns
69 receives a STGTERM it will write out its current ip_address_pool,
70 session and tunnel tables to disk prior to exiting to be re-loaded at
71 startup.  The validity of this data is obviously quite short and the
72 intent is to allow an sessions to be retained over a software upgrade.
73 .TP
74 .BR primary_radius , " secondary_radius"
75 Sets the RADIUS servers used for both authentication and accounting. 
76 If the primary server does not respond, then the secondary RADIUS
77 server will be tried.
78 .TP
79 .BR primary_radius_port , " secondary_radius_port"
80 Sets the authentication ports for the primary and secondary RADIUS
81 servers.  The accounting port is one more than the authentication
82 port.  If no ports are given, authentication defaults to 1645, and
83 accounting to 1646.
84 .TP
85 .B radius_accounting
86 If set to true, then RADIUS accounting packets will be sent.  A
87 .B Start
88 record will be sent when the session is successfully authenticated,
89 and a
90 .B Stop
91 record when the session is closed.
92 .TP
93 .B radius_secret
94 Secret to be used in RADIUS packets.
95 .TP
96 .B bind_address
97 When the tun interface is created, it is assigned the address
98 specified here.  If no address is given, 1.1.1.1 is used.  Packets
99 containing user traffic should be routed via this address if given,
100 otherwise the primary address of the machine.
101 .TP
102 .B peer_address
103 Address to send to clients as the default gateway.
104 .TP
105 .B send_garp
106 Determines whether or not to send a gratuitous ARP for the
107 .B bind_address
108 when the server is ready to handle traffic (default:  true).  This
109 setting is ignored if BGP is configured.
110 .TP
111 .B throttle_speed
112 Sets the default speed (in kbits/s) which sessions will be limited to.
113 .TP
114 .B throttle_buckets
115 Number of token buckets to allocate for throttling.  Each throttled
116 session requires two buckets (in and out).
117 .TP
118 .B accounting_dir
119 If set to a directory, then every 5 minutes the current usage for
120 every connected use will be dumped to a file in this directory.
121 .TP
122 .B setuid
123 After starting up and binding the interface, change UID to this.  This
124 doesn't work properly.
125 .TP
126 .B dump_speed
127 If set to true, then the current bandwidth utilization will be logged
128 every second.  Even if this is disabled, you can see this information
129 by running the
130 .B
131 uptime
132 command on the CLI.
133 .TP
134 .B cleanup_interval
135 Interval between regular cleanups in seconds (default: 2).
136 .TP
137 .B cleanup_limit
138 Maximum number of session actions to perform each cleanup (default: 50).
139 .TP
140 .B multi_read_count
141 Number of packets to read off each of the UDP and TUN fds when
142 returned as readable by select (default: 10).  Avoids incurring the
143 unnecessary system call overhead of select on busy servers.
144 .TP
145 .B scheduler_fifo
146 Sets the scheduling policy for the
147 .B l2tpns
148 process to
149 .BR SCHED_FIFO .
150 This causes the kernel to immediately preempt any currently running
151 .B SCHED_OTHER
152 (normal) process in favour of
153 .B l2tpns
154 when it becomes runnable. 
155 .br
156 Ignored on uniprocessor systems.
157 .TP
158 .B lock_pages
159 Keep all pages mapped by the
160 .B l2tpns
161 process in memory.
162 .TP
163 .B icmp_rate
164 Maximum number of host unreachable ICMP packets to send per second.
165 .TP
166 .B packet_limit
167 Maximum number of packets of downstream traffic to be handled each
168 tenth of a second per session.  If zero, no limit is applied (default: 
169 0).  Intended as a DoS prevention mechanism and not a general
170 throttling control (packets are dropped, not queued).
171 .TP
172 .B cluster_address
173 Multicast cluster address (default: 239.192.13.13).
174 .TP
175 .B cluster_interface
176 Interface for cluster packets (default: eth0).
177 .TP
178 .B cluster_hb_interval
179 Interval in tenths of a second between cluster heartbeat/pings.
180 .TP
181 .B cluster_hb_timeout
182 Cluster heartbeat timeout in tenths of a second.  A new master will be
183 elected when this interval has been passed without seeing a heartbeat
184 from the master.
185 .TP
186 .B cluster_master_min_adv
187 Determines the minumum number of up to date slaves required before the
188 master will drop routes (default: 1).
189 .RE
190 .SS BGP ROUTING
191 The routing configuration section is entered by the command
192 .IP
193 .BI "router bgp " as
194 .PP
195 where
196 .I as
197 specifies the local AS number.
198 .PP
199 Subsequent lines prefixed with
200 .BI "neighbour " peer
201 define the attributes of BGP neighhbours.  Valid commands are:
202 .IP
203 .BI "neighbour " peer " remote-as " as
204 .br
205 .BI "neighbour " peer " timers " "keepalive hold"
206 .PP
207 Where
208 .I peer
209 specifies the BGP neighbour as either a hostname or IP address,
210 .I as
211 is the remote AS number and
212 .IR keepalive ,
213 .I hold
214 are the timer values in seconds.
215 .SS NAMED ACCESS LISTS
216 Named access lists may be defined with either of
217 .IP
218 .BI "ip access\-list standard " name
219 .br
220 .BI "ip access\-list extended " name
221 .PP
222 Subsequent lines starting with
223 .B permit
224 or
225 .B deny
226 define the body of the access\-list.
227 .PP
228 .B Standard Access Lists
229 .RS 4n
230 Standard access lists are defined with:
231 .IP
232 .RB { permit | deny }
233 .IR source " [" dest ]
234 .PP
235 Where
236 .I source
237 and
238 .I dest
239 specify IP matches using one of:
240 .IP
241 .I address
242 .I wildard
243 .br
244 .B host
245 .I address
246 .br
247 .B any
248 .PP
249 .I address
250 and
251 .I wildard
252 are in dotted-quad notation, bits in the
253 .I wildard
254 indicate which address bits in
255 .I address
256 are relevant to the match (0 = exact match; 1 = don't care).
257 .PP
258 The shorthand
259 .RB ' host
260 .IR address '
261 is equivalent to
262 .RI ' address
263 .BR 0.0.0.0 ';
264 .RB ' any '
265 to
266 .RB ' 0.0.0.0
267 .BR 255.255.255.255 '.
268 .RE
269 .PP
270 .B Extended Access Lists
271 .RS 4n
272 Extended access lists are defined with:
273 .IP
274 .RB { permit | deny }
275 .I proto
276 .IR source " [" ports "] " dest " [" ports "] [" flags ]
277 .PP
278 Where
279 .I proto
280 is one of
281 .BR ip ,
282 .B tcp
283 or
284 .BR udp ,
285 and
286 .I source
287 and
288 .I dest
289 are as described above for standard lists.
290 .PP
291 For TCP and UDP matches, source and destination may be optionally
292 followed by a
293 .I ports
294 specification:
295 .IP
296 .RB { eq | neq | gt | lt }
297 .I port
298 .br
299 .B
300 range
301 .I from to
302 .PP
303 .I flags
304 may be one of:
305 .RS
306 .HP
307 .RB { match\-any | match\-all }
308 .RB { + | - }{ fin | syn | rst | psh | ack | urg }
309 \&...
310 .br
311 Match packets with any or all of the tcp flags set
312 .RB ( + )
313 or clear
314 .RB ( - ).
315 .HP
316 .B established
317 .br
318 Match "established" TCP connections:  packets with
319 .B RST
320 or
321 .B ACK
322 set, and
323 .B SYN
324 clear.
325 .HP
326 .B fragments
327 .br
328 Match IP fragments.  May not be specified on rules with layer 4
329 matches.
330 .RE
331 .SH SEE ALSO
332 .BR l2tpns (8)